Recently Updated Pages
Implementing a thumbnail generator
Prerequisites Make sure you've read the previous page on implementing video transcoding with ser...
Setting up Lambda for image resizing
Compiling sharp for x86_64 architecture To use Sharp for Node.js properly, we need to compile it...
Web Application Firewall (WAF)
A Web Application Firewall (WAF) is basically like a normal firewall you'd have on your own PC, b...
Apache configuration
Configuring Apache properly is essential for website security. Generally, pre-packaged webserver ...
User Input: Sanitization and Validation
To protect your website from malicious attacks (and also simply to prevent weird errors for users...
Preventing Bot Activity
Other than user-submitted content, the other type of content that you will have to deal with is b...
User Content Moderation
If your website has any form of user-submitted content, then you are going to need some form of m...
Using a Content Delivery Network (CDN)
Once you start having more than one webserver (and thus need a load balancer), or even before tha...
Storing User Sessions
In most websites, user "sessions" are stored to keep users logged in, among other things. There a...
The purpose of this guide
There is one main reason I have written this guide: Understanding the difficulty of website deve...
Rate Limits
For user actions that have a rate limit, like reblogging a given artwork, a rolling rate limit is...
Tippy Themes and Theme Presets
To customise the functionality of Tippy.js a bit more, Deserted Chateau also uses its own themePr...
Shell Tooltips
The format for shell tooltips is as follows: Backend Code (in PHP template file) <?php DynamicC...
Library Licenses
This is a list of libraries Deserted Chateau uses, and their respective license terms (accurate a...
platform
Homepage https://github.com/bestiejs/platform.js What is it? A JavaScript library for detectin...
Tippy.js
Homepage https://atomiks.github.io/tippyjs/ What is it? An open-source library for creating to...
twemoji
Homepage https://github.com/twitter/twemoji What is it? An open-source emoji library, containi...
TinyMCE
Homepage https://www.tiny.cloud/ What is it? An open-source rich text editor, allowing users t...
Custom Error Pages: edge rules
BunnyCDN doesn't fully support custom error pages, but there is a workaround whereby you can redi...
Storing User Credentials
For the most part, this is about storing passwords, and understanding how to secure them properly...