Design and Development
The backend of cgbookcase.com is written with Node.js. I'm using Express.js for routing and ejs as a templating engine. Information about the textures are stored in a JSON file.
To serve the textures, I use Backblaze B2 Cloud Storage and a content delievery network (CDN) by Cloudflare. For other static assets, I use DigitalOceans's Spaces, which also comes with a CDN.
The code of this project can be found on the GitHub repository. The code on the master branch is what's runnig on the server of cgbookcase.com. Commits on the development branch are only applied on a separate development server.