Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/apursley2012/the-craft/llms.txt

Use this file to discover all available pages before exploring further.

Getting The Craft running locally takes only a few minutes. The project has no exotic build requirements — it is a standard Vite + React application, and everything you need ships inside the repository. Follow the steps below to go from a fresh clone to a fully running dev server, then learn where to edit your own content once the site is live.

Prerequisites

Before you begin, make sure the following tools are available on your machine:
  • Node.js 18 or later — Vite 5 requires Node 18+. Run node -v to check your version.
  • A package manager — npm (bundled with Node), yarn, or pnpm all work.
  • Git — required to clone the repository.

Setup

1

Clone the repository

Pull the source code from GitHub and move into the project directory.
git clone https://github.com/apursley2012/the-craft.git && cd the-craft
2

Install dependencies

Install all npm packages. Choose the package manager you prefer.
npm install
3

Start the development server

Launch the Vite dev server. It opens at http://localhost:5173 by default and supports hot module replacement, so changes to any component or CSS file are reflected instantly in the browser.
npm run dev
Once the server starts you will see output similar to:
  VITE v5.x.x  ready in 300 ms

  ➜  Local:   http://localhost:5173/
  ➜  Network: use --host to expose
Navigate to http://localhost:5173 in your browser to see The Craft running locally.
4

Build for production

When you are ready to ship, compile the optimised production bundle. Vite outputs everything into the dist/ directory.
npm run build
The output is a fully static SPA — a single index.html with hashed JS and CSS assets. No server-side rendering or backend is required.
The project uses a standard Vite React setup. No additional configuration is needed — the compiled output in dist/ is a fully self-contained static SPA with no non-standard plugins or path aliases.
5

Preview the production build

Before deploying, you can serve the dist/ output locally with Vite’s built-in preview server to confirm the production bundle behaves identically to the dev server.
npm run preview
The preview server opens at http://localhost:4173 by default.

Deploying to GitHub Pages

The repository includes a .nojekyll file in its root. This file tells GitHub Pages to serve all files as-is rather than processing the site through Jekyll, which is important because Vite’s asset paths use underscores that Jekyll would otherwise ignore. To deploy, push the contents of dist/ to the gh-pages branch of your repository, or configure GitHub Pages in your repository settings to serve from the root of the main branch after running the build. A common approach using the gh-pages npm package is:
npm run build && npx gh-pages -d dist
This publishes the compiled output to the gh-pages branch automatically.

Customising Your Content

Customise your portfolio content by editing the data arrays inside each page file under assets/. For example, update the projects array in assets/Projects.js to change your project cards, or edit the workHistory array in assets/Work.js to update your employment timeline. No external CMS or API calls are involved — all data lives directly in the component files.
Each page component follows the same pattern: a plain JavaScript array declared near the top of the file holds all the page’s data, and the JSX below maps over that array to render cards, list items, or timeline entries. Editing an entry in the array and saving the file is all it takes to see the change reflected in the browser.
Because data is co-located with component code rather than stored in a separate data layer, take care not to accidentally delete JSX structure while editing array entries. Keep changes inside the array brackets and leave the component’s return statement untouched.

Build docs developers (and LLMs) love