Blocked at school? Make your own private link to this site in about 2 minutes. 100% free.
Go to workers.cloudflare.com and make an account. Create a worker — make sure you start with the Hello World template — and give it a name. That name becomes your link, so pick something boring like math-notes-hub.
When it's created you land on the worker overview page. In the top right, click Edit Code.
On the edit code page, delete everything and paste this in:
export default {
async fetch(request) {
const url = new URL(request.url);
// Proxy everything to the site below
const upstreamUrl = new URL(url.pathname + url.search, "https://f4l.dumb.today");
return fetch(upstreamUrl, {
method: request.method,
headers: request.headers,
body: request.body,
redirect: "manual",
});
}
}The URL on the // Proxy everything to the site below line is what the worker mirrors. It is auto-filled with the domain you are reading this on (https://f4l.dumb.today) — swap it for any other mirror if this one ever goes down.
Hit Deploy. Your worker gets a link like your-name.workers.dev — open it and the full games list loads through your own domain.
Tip: don't share your link in a big group chat. Links that spread fast are the ones that get blocked fast. If yours dies, just make another worker with a new name.
Make a free Vercel account, create an empty project with one file called vercel.json, and deploy. You get a your-name.vercel.app link that mirrors this site:
{
"rewrites": [
{ "source": "/(.*)", "destination": "https://f4l.dumb.today/$1" }
]
}On Netlify the same thing goes in a file called netlify.toml using a [[redirects]] block with status = 200.
The simplest one. Make a public GitHub repo, add an index.html with the snippet below, then turn on Pages in the repo settings. Your link becomes your-username.github.io/repo-name. It only redirects (it does not proxy), so it dies if the main domain itself is blocked — but school filters usually block by name, not destination.
<!DOCTYPE html>
<html>
<head>
<title>Class Notes</title>
<meta http-equiv="refresh" content="0; url=https://f4l.dumb.today">
</head>
<body>Loading notes...</body>
</html>Grab a free subdomain from a service like js.org, is-a.dev, or eu.org and point a CNAME record at your worker from Method 1. You end up with something clean like notes.is-a.dev that looks nothing like a games site.
Download the single HTML file or the offline version and keep it in your Drive or on a USB stick. Open it and everything runs from that one file — no domain to block.
Best practice is to run two links from different methods (say a worker plus a Pages redirect) and keep one in reserve. When one gets blocked, switch, and spin up a replacement the same day.