I made my home page like MySpace:
Because it used to be the internet was fun and centered on making stuff yourself and sharing with others. Just like geocities allowed. But now a lot of it all seems like the people making things want to sell things and this has been done at the expense of having spaces for non profit seeking creativity. This is also why I made https://rainy-city.com. Sorry for the self promotion but I really want people to create more stuff like this. Just fun things to find on the internet.
That's, er, definitely not where I expected this to be leading.
Although I guess the PyPI username was a hint.
Nothing wrong with nostalgia, but I agree with you that the wrong things are being equated here. A tool that just quickly generates a visually-similar site to that somewhat-imagined "old internet look" isn't really the same. If you emulated a similar amount of friction to those old site with modern tooling, you'd end up with an actual spiritual successor to those geocities sites. (NeoCities [1] is a great example, a lot of personal sites on there are not targeting 90s-2000s nostalgia even if that's an obvious aesthetic direction to go for something called "NeoCities")
Scaffold a complete 1990s Geocities-themed static website in seconds.
โโโโโโโ โโโโโโโโ โโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโ โโโโโโโโโโ โโโ โโโโโโ โโโ โโโ โโโโโโโโโ โโโโโโโโ
โโโ โโโโโโโโโ โโโ โโโโโโ โโโ โโโ โโโโโโโโโ โโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโ โโโโโโโโโโโโโโโโโโโ
โโโโโโโ โโโโโโโโ โโโโโโโ โโโโโโโโโโ โโโ โโโโโโโโโโโโโโโโโโโ
geocities-boilerplate โจ Welcome to 1996 โจ
geocities-boilerplate is a CLI tool that generates a fully self-contained, retro 1990s Geocities-style personal website. Think neon colors, blinking text, animated star trails, marquee banners, visitor counters, and guestbooks โ all of it, generated instantly with a single command.
The generated site is pure static HTML, CSS, and vanilla JavaScript. No build tools, no frameworks, no dependencies. Just open index.html in any browser and relive the golden age of the web.
# one-shot with pipx (recommended โ no permanent install) pipx run create-geocities-app my-site
# or install permanently pip install create-geocities-app create-geocities-app my-site
Then open my-site/index.html in your browser. That's it!
Pick your language or runtime โ all produce the same site.
# one-shot with pipx (recommended) pipx run create-geocities-app my-site
# or install permanently pip install create-geocities-app create-geocities-app my-site
# one-shot, no install npx create-geocities-app my-site
# or install globally npm install -g create-geocities-app create-geocities-app my-site
gem install create-geocities-app create-geocities-app my-site
cargo install create-geocities-app create-geocities-app my-site
# global install composer global require geocities-app/create-geocities-app create-geocities-app my-site
# or as a project scaffold composer create-project geocities-app/create-geocities-app my-site
# run without installing deno run --allow-read --allow-write jsr:@geocities/create-app my-site
# or compile to a native binary first deno compile --allow-read --allow-write --output create-geocities-app jsr:@geocities/create-app ./create-geocities-app my-site
# run without installing go run github.com/sugardaddyapp/geocities-boilerplate/go@latest my-site
# or install the binary go install github.com/sugardaddyapp/geocities-boilerplate/go@latest create-geocities-app my-site
All variants accept the same flags:
| Flag | Meaning |
|---|---|
my-site |
Output directory name (default: my-geocities-site) |
-y / --yes |
Skip all prompts and use defaults |
Live demo: https://sugardaddyapp.github.io/geocities-boilerplate/
The demo is generated with all options enabled (neon theme, sparkle cursor, falling stars, all 5 pages). It is automatically rebuilt and deployed to GitHub Pages on every push to main.
When you run create-geocities-app my-site, you'll be walked through a series of prompts:
| # | Prompt | Type | Description |
|---|---|---|---|
| 1 | Site name | text | Your homepage title, e.g. CoolDude's Homepage |
| 2 | Your name | text | Displayed in headers, footers, and contact sections |
| 3 | Color theme | select | Choose from 5 retro color palettes (see below) |
| 4 | Extra pages | multi | About, Gallery, Guestbook, Cool Links |
| 5 | Cursor effect | select | Sparkle, Star Trail, Comet, Rainbow, or None |
| 6 | Falling effect | select | Stars, Snow, or None |
| 7 | Welcome alert | yes/no | Show a alert() greeting when the page loads |
| 8 | Auto-play music | yes/no | Play a Web Audio API 8-bit jingle on load |
| 9 | Fake high count | yes/no | Start visitor counter at ~10,000 (looks popular!) |
create-geocities-app my-site --yes
my-site/
โโโ index.html โ Homepage
โโโ about.html โ About Me (if selected)
โโโ gallery.html โ Photo Gallery with lightbox (if selected)
โโโ guestbook.html โ Guestbook (if selected)
โโโ links.html โ Cool Links (if selected)
โโโ css/
โ โโโ style.css โ Full retro stylesheet (theme-specific)
โโโ js/
โโโ main.js โ All JS effects (counter, cursor, music, etc.)
Zero runtime dependencies in the generated output. Every file is self-contained and works offline.
Choose a theme during setup. Each theme controls background, text, link, and accent colors throughout the entire site.
| Theme | Background | Primary Text | Headings | Links | Feel |
|---|---|---|---|---|---|
neon |
#000000 |
#00FF00 |
#FFFF00 |
#FF00FF |
Hacker/Matrix vibes |
space |
#000033 |
#CCCCFF |
#FFDD00 |
#00FFFF |
Deep space explorer |
candy |
#FF69B4 |
#FFFFFF |
#FFFF00 |
#00FFFF |
Sweet and electric |
forest |
#003300 |
#CCFFCC |
#FFDD00 |
#99FF99 |
Dark enchanted forest |
windows |
#008080 |
#000000 |
#000080 |
#000080 |
Classic Windows 95 |
Every generated site includes a homepage with:
<marquee> tag)hue-rotate animation cycles through all colorstext-shadow breathes in and out| Effect | What it does |
|---|---|
| Sparkle โจ | Random glitter glyphs (โฆ, โง, โ
, ยท) spawn at your cursor and float upward |
| Star Trail โ | Yellow โ characters follow the cursor and fade out with a scale-down animation |
| Comet โ๏ธ | An orange-to-white horizontal streak trails behind cursor movement |
| Rainbow ๐ | Colored dots cycle through the full hue spectrum as you move the cursor |
| None | No cursor effect |
| Effect | What it does |
|---|---|
| Stars โญ | 60 colored star characters (โ
) fall from top of screen with random sizes, speeds, and drift |
| Snow โ๏ธ | 40 white circular snowflakes drift downward with random horizontal drift |
| None | No falling effect |
| Effect | Details |
|---|---|
| Visitor counter | Odometer-style LCD digit boxes, animates on load, persists via localStorage |
| Live clock | HH:MM:SS display in the sidebar, updated every second |
| Marquee banner | CSS @keyframes scroll animation โ pauses on hover |
| Blinking text | CSS @keyframes blink โ used on NEW badges, bullet points, and decorations |
| Rainbow headings | CSS filter: hue-rotate() animation cycles through all colors |
| Neon glow pulse | text-shadow breathes in/out on all major headings |
| Spinning globe | ๐ emoji spins continuously via CSS rotate animation |
| Under construction | Yellow/black diagonal-stripe caution tape with a spinning ๐ง icon |
| Page entry animation | Content fades and slides up on load |
| 8-bit music jingle | Square-wave melody via Web Audio API โ plays on first interaction; toggle with the PLAY/STOP button |
| Matrix rain | Press M on any page to toggle a green Matrix-style canvas rain effect |
| Custom scrollbar | Themed scrollbar matching the color palette (Chrome/Edge/Safari) |
| Gallery lightbox | Click-to-expand image viewer with caption, close button, and ESC key support |
To host your generated site on GitHub Pages:
mainhttps://<username>.github.io/<repo-name>/questionary (installed automatically via pip)git checkout -b feat/my-awesome-featurepython/create_geocities_app/cd python && pip install -e . && create-geocities-app test-site --yes && open test-site/index.html--theme <name> CLI flag to skip the theme prompt# Clone git clone https://github.com/sugardaddyapp/geocities-boilerplate.git cd geocities-boilerplate/python
# Install in editable mode pip install -e .
# Test the CLI create-geocities-app my-test-site
# Or run directly python -m create_geocities_app my-test-site
MIT ยฉ Jamey Baldwin
Also checkout my other projects: Best Sugar Daddy Apps Best Sugar Daddy Apps 2026 Best Sugar Daddy Apps NPM Best Sugar Daddy Apps Socket
Best viewed in Netscape Navigator 4.0 at 800ร600 resolution.