Skip to main content

Documentation Index

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

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

Because Fortune Seeker is a pure static site — no server-side rendering, no API routes, no database — it can be hosted on any platform capable of serving static files over HTTP. The Vite build process outputs plain HTML, CSS, and JavaScript that runs entirely in the browser. Nearly every modern hosting provider offers a generous free tier for sites like this, so you can get your portfolio online at no cost.

Platform Comparison

PlatformFree TierCustom DomainDeploy from GitSPA Redirects
GitHub PagesYesYesYesManual HTML files
NetlifyYesYesYes_redirects file
VercelYesYesYesvercel.json
Cloudflare PagesYesYesYes_redirects file
All four platforms support automated deploys triggered by a git push, free custom domains with TLS certificates, and global CDN distribution. The key difference is how each one handles client-side routing for a Single Page Application — see the platform-specific sections below for the exact configuration required.

Netlify

Netlify is one of the simplest platforms for deploying Vite projects. It auto-detects the build command and publish directory, and offers both Git-connected deploys and a manual drag-and-drop option.
1

Push your repository to GitHub

Ensure your latest changes — including any customisations and a fresh npm run build output — are committed and pushed to a GitHub (or GitLab / Bitbucket) repository.
2

Import the project on Netlify

Log in to app.netlify.com, click Add new site, then choose Import an existing projectDeploy with GitHub. Authorise Netlify to access your repositories and select the Fortune Seeker repo.
3

Configure the build settings

Netlify may auto-detect the Vite framework. Confirm or manually set the following fields:
SettingValue
Build commandnpm run build
Publish directorydist
Leave all other fields at their defaults.
4

Add a _redirects file for SPA routing

GitHub Pages uses per-route HTML files to handle direct navigation. Netlify uses a _redirects file instead. Create public/_redirects in your project (Vite copies everything in public/ into dist/ at build time):
public/_redirects
/* /index.html 200
This rule tells Netlify to serve index.html for any request that doesn’t match a real file, returning an HTTP 200 so the browser doesn’t see a redirect. React Router then handles the route on the client side.
5

Deploy

Click Deploy site. Netlify runs the build, deploys the output to its CDN, and provides a *.netlify.app URL. Subsequent pushes to your configured branch trigger automatic redeployments.

Vercel

Vercel has native Vite support and zero-configuration deploys for most Vite projects. It also provides edge-network previews for every pull request, which is useful for reviewing portfolio changes before merging.
1

Push your repository to GitHub

Commit your latest changes and push to GitHub. Vercel connects to GitHub, GitLab, and Bitbucket.
2

Import the project on Vercel

Log in to vercel.com, click Add New → Project, and select your Fortune Seeker repository from the list.
3

Confirm the framework preset

Vercel typically auto-detects Vite and sets the build command to vite build and the output directory to dist. If it does not, set Framework Preset to Vite manually, or configure the fields directly:
SettingValue
Build commandnpm run build
Output directorydist
4

Add a vercel.json for SPA routing

Create a vercel.json file in the root of your repository to redirect all unmatched paths back to index.html:
vercel.json
{
  "rewrites": [
    { "source": "/(.*)", "destination": "/index.html" }
  ]
}
Commit and push this file before deploying so it is included in the build.
5

Deploy

Click Deploy. Vercel builds and deploys to its Edge Network. Your site receives a *.vercel.app URL immediately, and future pushes to main trigger automatic redeployments.

Cloudflare Pages

Cloudflare Pages connects to your Git provider, runs the build in Cloudflare’s infrastructure, and distributes the output across Cloudflare’s global network — the same CDN that powers a significant share of the internet’s traffic. Connect your repository at pages.cloudflare.com, then set the Build command to npm run build and the Build output directory to dist. For SPA routing, create a public/_redirects file with the same content used for Netlify (/* /index.html 200). Cloudflare Pages respects the same _redirects format as Netlify, so no additional configuration is needed. After the first deploy, Cloudflare assigns a *.pages.dev URL and rebuilds automatically on every push.
Cloudflare Pages has a 500 build per month limit on the free tier. For a personal portfolio that changes infrequently this is more than sufficient, but keep it in mind if you set up a CI workflow that triggers builds on every commit.

Environment Variables

Fortune Seeker’s default static build requires no environment variables. All content is compiled into the static output at build time, and there are no API keys or backend endpoints in the base template. If you extend the template with dynamic features, you will need to configure environment variables on your chosen platform:
  • Analytics (e.g. Google Analytics, Fathom) — add a VITE_ANALYTICS_ID variable. Vite exposes any variable prefixed with VITE_ to client-side code via import.meta.env.
  • Contact form backend (e.g. Formspree, EmailJS) — add your service endpoint or API key as a VITE_-prefixed variable.
  • CMS integration (e.g. Contentful, Sanity) — add your space ID and access token.
All four platforms listed above support environment variables through their dashboard UI. Never commit secrets directly into your repository.
New to static hosting? Netlify is the most beginner-friendly option. In addition to Git-connected deploys, Netlify supports a drag-and-drop deploy — just run npm run build locally, then drag your dist/ folder directly onto the Netlify dashboard at app.netlify.com/drop. Your site goes live instantly with no account setup required, making it the fastest way to share a preview with a client or collaborator.

Build docs developers (and LLMs) love