Skip to content

SoutheeWesty/AnyWebsite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AnyWebsite

A static, Cloudflare-ready portal for sharing approved websites with friends.

This project intentionally avoids proxying or bypassing Microsoft Family, school, workplace, or network controls. It is designed for safe sharing: friends log in, then use a curated list of links you have reviewed.

What is included

  • A responsive static website in index.html, styles.css, and script.js.
  • Cloudflare Pages Functions for OAuth login.
  • A paste-a-link preview iframe for websites that allow embedding.
  • Local saved shortcuts for friends on their own devices.
  • A curated website shortcut grid.
  • Copyable steps you can send to friends.
  • A deployment checklist for Cloudflare Pages.

Run locally

Use any static file server from the repository root:

python3 -m http.server 8000

Then open http://localhost:8000.

Set up login

Login uses the OAuth app dashboard shown in your screenshots.

Steps:

  1. Go to https://hackatime.hackclub.com/oauth/applications and create an OAuth application.
  2. Use https://YOUR-PAGES-DOMAIN.pages.dev/auth/callback as the redirect URI.
  3. In Cloudflare Pages → Settings → Environment variables, add:
    • HACKATIME_CLIENT_ID: your OAuth app UID
    • HACKATIME_CLIENT_SECRET: your OAuth app secret
    • COOKIE_SECRET: a long random string for signing sessions
  4. Redeploy the Pages project.
  5. Friends can click “Log in” and the Pages Function exchanges the returned code for tokens at https://hackatime.hackclub.com/oauth/token.

Make it easy for friends

After deploying, send this:

1. Open the AnyWebsite link I send you.
2. Log in when the page asks you to.
3. Paste a website link or pick a saved website card from the portal.
4. If a link is not listed, send me a request so I can review and add it.

The iframe preview follows normal browser and website rules. If a website blocks embedding, use the “Open directly” button instead.

Deploy

This site has no build step.

Cloudflare Pages settings:

  • Framework preset: None
  • Build command: leave empty
  • Build output directory: /
  • Root directory: /
  • Functions directory: functions

Customise resources

Edit the resources array in script.js to add or remove website cards.

About

Resources

Stars

Watchers

Forks

Contributors