Today I made a few changes to XRay to make it easier to deploy in more kinds of environments. I also removed a bunch of CSS/JS dependencies and simplified the UI a bit.
I dropped the CSS framework I was using, and dropped jQuery. All I was using that for was the silly tab interface on the home page, and I figured it wasn't worth all that extra CSS/JS just for that effect.
I rewrote the CSS for the home page inline, to avoid needing to even fetch an external stylesheet.
I then set out to see what it would take to be able to deploy this to shared hosting, especially in a subfolder. I had to do a few things to make that work.
I wanted it to be as easy to install as "download this zip, extract to a folder on your webserver and run." Since I suspect people might not configure their web server to point to the "public" folder as the root, I had to add a new index.php file to the root of the project which just includes the "public/index.php" file where all the magic happens. I also added .htaccess files in all of the other folders to prevent those files from being run by requests. (The web server should never serve files out of the "vendor" or "views" folder directly.)
I published a zip file in the "Releases" section on GitHub which includes all the necessary composer dependencies already bundled in the file. This means you can just extract the zip and run it!
I tested this out by installing it on my Dreamhost account, and it works great!
You can download the latest version of XRay here: