Skip to main content
Advanced Search
Search Terms
Content Type

Exact Matches
Tag Searches
Date Options
Updated after
Updated before
Created after
Created before

Search Results

457 total results found

platform

Third-party libraries Frontend libraries

Homepage https://github.com/bestiejs/platform.js What is it? A JavaScript library for detecting a user's browser version and operating system. Why did we choose it? It works easily in-browser without having any dependencies. What do we use it for? Colle...

Rate Limits

Code Standards: Backend Redis: Cached Items and Rate Limits

For user actions that have a rate limit, like reblogging a given artwork, a rolling rate limit is stored in Redis for one or more duration periods. Key structures The structure for each rate limit's Redis key is kept in the configuration_rate_limits_groups d...

The purpose of this guide

Introduction Basic Overview

There is one main reason I have written this guide: Understanding the difficulty of website development Given the ubiquitous presence of website builders, content management systems and other ready-built software, it can seem like building a sustainable art ...

Preventing Bot Activity

Moderation

Other than user-submitted content, the other type of content that you will have to deal with is bot-generated content, like comments on user posts and automatic submissions. Distinguishing bots from humans is a difficult task, no matter what system you use. I...

Implementing Rolling Rate Limits

Efficiency & Performance Server-side caching

Redis sorted sets are different from other collection types, in that they are a collection of unique string values called "members", which each have an associated "score"; the score is similar to a key, and the member is similar to a value, but they work a bit...

Caching Pitfalls

Efficiency & Performance Server-side caching

The nature of caching anything is that it is a tradeoff: in return for having quick access to some data without having to recalculate it, the data returned is not up-to-date. This presents a problem - being careful in exactly what data you cache, particularly...

September 9

Development Updates, pre-launch 2024

Hi all, hope you're doing well. My health is awful atm even compared to usual, so I've been much slower than I'd like. I've been focusing on improving the performance of the more complex database procedures, as that will be a crucial factor in making the site...

Common items to cache client-side

Efficiency & Performance Client-side caching

Naturally, what you will want to cache in a client's browser depends a lot on your use case, but some prominent examples are below. User site preferences Settings that a user has selected when browsing your site, like their selected visual theme, are well wo...

VPC: security groups and endpoints

Infrastructure (AWS) Setup Instructions

Default VPC security group changes Modify the security group to allow TCP ports 3306 and 6379 (for MariaDB and Redis) to be accessed by each of your Lightsail servers. Note: for live environments or any other environment using a load balancer, you will want ...

IAM: users, roles and policies

Infrastructure (AWS) Setup Instructions

IAM Policies Deserted-Chateau-Test-Lambda-Admin-Access { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "lambda:CreateFunction", ...

S3: buckets, access policies and CORS policies

Infrastructure (AWS) Setup Instructions

deserted-chateau-test-external-site-assets Bucket Policy { "Version": "2012-10-17", "Id": "Policy1477065434531", "Statement": [ { "Sid": "Stmt1477065432829", "Effect": "Allow", "Principal": { ...

CloudFront & WAF: distributions and WAF rule configuration

Infrastructure (AWS) Setup Instructions

Lambda: functions, layers and important configuration settings

Infrastructure (AWS) Setup Instructions

See the codebase for a list of functions and layers to upload to Lambda, under the /lib/aws/ folder.

SES: Verified identities, DKIM/DMARC, and SNS/SQS setup

Infrastructure (AWS) Setup Instructions

Verified Entities Add desertedchateau.com as a verified domain entity. See the SES chapter for configuring DKIM, DMARC and a custom mail from domain, alongside setting up a configuration set to publish to SNS/SQS in the event of failed emails.

RDS and ElastiCache: setup and configuration

Infrastructure (AWS) Setup Instructions

DynamoDB: tables

Infrastructure (AWS) Setup Instructions

Systems Manager: Parameter Store credentials

Infrastructure (AWS) Setup Instructions

/Deserted-Chateau/Credentials/BunnyAccountCredentials {"api_key": "<bunny API key>"} /Deserted-Chateau/Credentials/BunnyCDNCredentials { "cdn_security_key": "<bunny CDN security key>" } /Deserted-Chateau/Credentials/BunnyStreamCredentials { "api_key": "<b...

The GetGalleryForDisplay procedure

Code Standards: Backend SQL Stored Procedures

The usp_galleries_GetGalleryForDisplay procedure is Deserted Chateau's most complex SQL procedure, owing to the amount of information that needs to be queried. There are a lot of performance optimisations in this procedure, which are explained both in the comm...

September 24

Development Updates, pre-launch 2024

Hi all, hope you're doing well. My health is particularly awful at the moment, so I have been struggling to get much of anything done in the last week or so, but updates are below as usual. Gallery SQL: performance improvements After doing the performance t...

Configuration Structure

Code Standards: Backend Configuration Classes

Most, though not all, of Deserted Chateau's configuration items that are relevant to the webservers are held in three database tables: configuration This is the main configuration table. This table holds configuration items for a variety of different "module...