Activity
View allAre you saying to only allow "refreshing" once, i.e. when the cookie is ID=0?...
-
c9e00763 · - Make the "checking your browser for robots" look more like cloudf...
-
fa4c4377 · New based domain
- ... and 3 more commits. Compare cf075b9a...fa4c4377
Personal projects
View all-
HAProxy configuration and lua scripts implementing a challenge-response page where visitors solve a captcha and/or proof-of-work (cpu intensive) task. Intended to stop bots, spam, ddos, etc.
haproxy ddos mitigation+ 5 more -
jschan - Anonymous imageboard software. Classic look, modern features and feel. Works without JavaScript and supports Tor, I2P, Lokinet, etc.
anonymous imageboard free speech+ 9 more -
Next.js+React web interface for controlling HAProxy clusters (groups of servers), in conjunction with with https://gitgud.io/fatchan/haproxy-protection.
haproxy control panel proof of work+ 6 more -
API documentation for jschan. Browse on gitgud pages: http://fatchan.gitgud.site/jschan-docs/#introduction
jschan imageboard docs+ 2 more -
Simple express file upload middleware that wraps around busboy
-
DEPRECATED, same functionality implemented (in haproxy) here https://gitgud.io/fatchan/haproxy-hcaptcha
A fork of ngx_http_js_challenge_module from https://github.com/simon987/
-
library for storing a bitfield with a large number of options stored as an array/buffer, suitable for e.g. permissions systems
-
init.d script for monitoring and adjusting route metrics of 2 WANs in a multi-WAN setup on OpenWRT. Used as a simple alternative to mwan3, where I just want failover and all traffic forwarded through wireguard vpn (mwan3 seems to struggle with this).