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.

Fortune Seeker is pre-configured for GitHub Pages out of the box. The repository already ships with a ready-to-serve static build — index.html, the assets/ directory, and pre-compiled component JS files in components/ — so you can go live without touching a build tool or setting up a CI pipeline. Simply fork, configure Pages, and your mystical portfolio is online in minutes.

Two Deployment Approaches

Choose the approach that fits your workflow. If you want to go live immediately with the default template, pushing the existing static files is the fastest path. If you have already customised the source code, rebuild first and then push.
The repo already contains a fully built static site at the root level. This approach skips the build step entirely — ideal for getting your portfolio live before making any code changes.
1

Fork the repository

Open github.com/apursley2012/fortune-seeker and click Fork in the top-right corner. This creates a copy under your own GitHub account that you control.
2

Open repository Settings → Pages

In your forked repo, click the Settings tab, then select Pages from the left sidebar under the Code and automation section.
3

Set the source branch and folder

Under Build and deployment, set Source to Deploy from a branch. Select main as the branch and / (root) as the folder, then click Save.The root folder is correct because index.html and the assets/ directory live at the top level of the repository — not inside a dist/ sub-directory.
4

Wait for the deployment to complete

GitHub will trigger a Pages build. After 30–60 seconds a banner appears at the top of the Pages settings panel with your live URL. You can also monitor progress under the Actions tab.
5

Visit your live site

Navigate to https://yourusername.github.io/fortune-seeker (replace yourusername with your GitHub handle). Your Fortune Seeker portfolio is now public.

GitHub Actions Automation

Manually rebuilding and committing every time you change source files gets tedious. A GitHub Actions workflow can automate the full cycle: install → build → deploy. Create the file below in your repository and push it — GitHub will run the workflow on every subsequent push to main.
.github/workflows/deploy.yml
name: Deploy to GitHub Pages

on:
  push:
    branches: [main]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: '20'
      - run: npm install
      - run: npm run build
      - uses: peaceiris/actions-gh-pages@v3
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: ./dist
The peaceiris/actions-gh-pages action pushes the contents of ./dist to a gh-pages branch automatically. If you use this workflow, update your Pages source branch to gh-pages instead of main.

Custom Domain

To serve your portfolio from a domain you own (e.g. portfolio.yourdomain.com) instead of the default *.github.io URL:
  1. Go to Settings → Pages and enter your domain in the Custom domain field, then click Save.
  2. Add a CNAME file to the root of your repository containing just your domain name:
CNAME
portfolio.yourdomain.com
  1. Create a CNAME DNS record with your registrar pointing portfolio.yourdomain.com to yourusername.github.io.
GitHub will automatically provision a free TLS certificate via Let’s Encrypt within a few minutes. Enable Enforce HTTPS in Pages settings once the certificate is ready.

The .nojekyll File

The root of the Fortune Seeker repository contains an empty .nojekyll file. This single file is critical for the site to load correctly on GitHub Pages. By default, GitHub Pages processes every repository through Jekyll, a static site generator. Jekyll has a specific convention: it silently ignores any file or folder whose name begins with an underscore (_). Vite’s build output commonly uses _ prefixes — for example, chunk filenames like _plugin-vue_export-helper.js. When .nojekyll is present, GitHub Pages skips the Jekyll processing step entirely and serves your files as-is. Without it, any asset with a _-prefixed filename would return a 404, breaking the app. Do not delete this file.

Per-Route HTML Files

Fortune Seeker includes individual HTML files for each route in the application:
FileRoute
home.html/home
about.html/about
articles.html/articles
casestudies.html/casestudies
contact.html/contact
Each of these files contains the identical Vite app shell as index.html — a <div id="root"> that React mounts into, along with the same <script> and <link> tags pointing at the compiled assets. Why are these necessary? GitHub Pages is a static file host with no server-side routing logic. When a visitor navigates directly to https://yourusername.github.io/fortune-seeker/about (or refreshes the page on that route), GitHub Pages looks for a real file at that path. Without about.html, it would return a 404 instead of loading the React app. By shipping a real HTML file at every route, you ensure that deep links and page refreshes work correctly — React Router takes over once the app shell loads and renders the correct view based on the URL.
The free GitHub Pages tier always makes your site publicly accessible on the internet, even if your source repository is private. If you need to keep your portfolio hidden from public view — for example, while building it out — you will need a private repository and a GitHub Pro, Team, or Enterprise account, which unlocks the private-site option in Pages settings.

Build docs developers (and LLMs) love