neocities-dev ships as a pre-built static site: the compiled JavaScript bundle, CSS, and HTML shells are all committed to the repository. There is noDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/neocities-dev/llms.txt
Use this file to discover all available pages before exploring further.
package.json or build step — cloning the repo gives you everything you need to serve or deploy the portfolio immediately.
Prerequisites
Make sure the following are installed before you begin:- Git — to clone the repository
- A static file server for local preview (any option works — see below)
- A code editor such as VS Code if you want to inspect or modify the source
Setup
Clone the repository
index.html at the root, the compiled bundle at assets/main.js, compiled styles at assets/main.css, and the per-route HTML shells under pages/.Preview locally with a static file server
Because the app uses ES modules and hash-based routing, you need to serve the files over HTTP rather than opening Open http://localhost:3000 (or whichever port your server reports) in your browser. You should see the Y2K portfolio with the
index.html directly in the browser. Any lightweight static server works:FakeBrowserChrome wrapper and FrameNav sidebar. Navigate between routes using the sidebar — all navigation happens via URL hash (/#/about, /#/projects, etc.) and requires no server involvement.Deploy to Neocities
You have two options:Option A — Drag and drop (easiest)The CLI performs a diff upload — only changed files are sent, keeping deploys fast.
- Log in to your Neocities dashboard.
- Drag the entire contents of the cloned folder (everything at the repo root) into the file upload area.
- Neocities will serve
index.htmlat your site root, with theassets/,components/,pages/, anduseScreenInit.jsfiles alongside it.
Deploying Elsewhere
Because neocities-dev is a pure static SPA that uses hash-based routing, it works on any static host with zero additional configuration:| Host | Notes |
|---|---|
| GitHub Pages | Push the repo contents to the gh-pages branch, or configure Pages to serve from the repository root. |
| Netlify | Drag-and-drop the repo folder in the Netlify dashboard, or connect the repo for automatic deploys. |
| Vercel | Import the repo — set the output directory to . (repository root) since there is no build step. |
| Any static host | Upload the repo root contents to the web root; no .htaccess or _redirects file needed. |
The
pages/ directory contains a separate HTML shell for each route (e.g. pages/About.html, pages/Projects.html). Each shell loads the same assets/main.js bundle and sets window.__STATIC_PAGE_ROUTE__ to its own path value. These files exist so that Neocities can serve each route URL directly when a visitor lands on, say, yoursite.neocities.org/pages/About.html — the React app boots, reads __STATIC_PAGE_ROUTE__, and navigates to the correct hash route automatically.