This page walks you through everything you need to get Press Start running on your local machine — from cloning the repository and installing dependencies to exploring the live dev server and understanding how to swap in your own content. The whole process takes fewer than five minutes on a modern machine.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/apursley2012/press-start/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Before you begin, make sure the following tools are installed:- Node.js 18 or later — Vite 5 requires Node 18+. Check your version with
node -v. Download from nodejs.org. - Git — needed to clone the repository. Verify with
git --version.
Setup
Clone the repository
Run the following command to clone Press Start to your local machine:Then move into the project directory:
Install dependencies
Install all required packages using your preferred package manager:This pulls in React 18, React Router v6, Vite, Tailwind CSS, and Lucide React, along with all their transitive dependencies.
Start the development server
Launch the Vite dev server:Vite starts on its default port and prints something like:
Open the app in your browser
Navigate to http://localhost:5173.You will land on the Press Start Gate — a full-screen black splash with the glowing green heading
PLAYER ONE and a pulsing magenta PRESS START button. Clicking (or pressing) the button triggers a brief white screen-flash and fades the gate out, revealing the main application with the sticky ArcadeMenu navigation at the top.Use the menu links or your keyboard arrow keys to move between the seven pages: Home, About, Projects, Skills, Writing, Case Studies, and Contact.Local Development Tips
Hot Module Replacement. Vite’s HMR is active out of the box. Any change you make to a.js, .jsx, or .css file is reflected in the browser instantly without a full page reload. Component state is preserved across most edits.
Tailwind JIT. Tailwind is configured in Just-in-Time mode, meaning only the utility classes actually used in the source files are compiled into assets/main.css. Adding a new class to a component makes it appear in the stylesheet within milliseconds. There is no need to purge unused styles manually in development.
CSS Custom Properties. The four arcade CSS variables (--neon-green, --neon-magenta, --neon-cyan, --bg-color) are declared at the :root level in the compiled stylesheet. You can override them in your browser’s DevTools to experiment with alternative colour schemes before committing changes to the source.
Customising Your Content
All portfolio data is stored as plain JavaScript arrays in the main source bundle. Locate and edit each array to replace the sample entries with your own information:| Data Array | Page it Powers | What to Change |
|---|---|---|
chapters (the G array) | /about | Origin story levels: title, body text, and inline SVG icon |
projects (the m array) | /projects | Project title, category, description, tech stack, and demo/source links |
skillCategories (the z array) | /skills | Skill group names, individual skill names, and level values (1–5) |
writings (the $ array) | /writing | Article title, type label, date, excerpt, and full content |
caseStudies (the Y array) | /case-studies | Boss name, problem, goal, process, design notes, tech, debug log, result, XP tags |
DEV NAME in the HomePage component — replace both instances with your own name (or handle). The tagline directly below it (Software developer. Player one. / Currently grinding side quests.) can be edited in the same component.
Building for Production
When you are ready to deploy, generate an optimised build:dist/ directory. The output includes the hashed asset bundles (assets/main.js, assets/main.css) and the root index.html. Upload the entire dist/ directory to your static host.