Skip to main content

Documentation Index

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

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

Artisan Developer is organized into four top-level folders — assets/, components/, pages/, and images/ — plus two root-level files that GitHub Pages requires. The assets/ folder holds the compiled JavaScript bundles and the main stylesheet. The components/ folder holds the individual visual and interactive components. The pages/ folder holds every portfolio section as a standalone HTML file. The images/ folder holds the repository preview screenshots. Every path in the theme uses relative references so the files work correctly when hosted from a GitHub Pages subdirectory.

Full file tree

artisan-developer/
├── .nojekyll
├── assets/createLucideIcon.js
├── assets/index.js
├── assets/index2.js
├── assets/jsx-runtime.js
├── assets/main.css
├── assets/main.js
├── assets/proxy.js
├── assets/x.js
├── components/ColorWheel.js
├── components/DyeCursor.js
├── components/FabricStripTimeline.js
├── components/KineticHeadline.js
├── components/MarbledCard.js
├── components/PageTransition.js
├── components/PaintTube.js
├── components/SoapBubble.js
├── components/SwirlNav.js
├── components/TieDyeSwirl.js
├── images/screenshots/
├── index.html
├── pages/About.html
├── pages/Blog.html
├── pages/CaseStudies.html
├── pages/Contact.html
├── pages/Projects.html
├── pages/Skills.html
├── pages/Testimonials.html
└── pages/Work.html

Root files

These two files must stay at the repository root alongside the four folders for GitHub Pages to serve the site correctly.
FilePurpose
.nojekyllAn empty file that tells GitHub Pages to skip Jekyll processing and serve all files — including JavaScript modules — directly. Without it, GitHub Pages may fail to serve the compiled JS bundles.
index.htmlThe homepage and the GitHub Pages entry point. It loads the compiled JavaScript and stylesheet, mounts the React root, and bootstraps the full single-page application. This file must remain at the repository root.

assets/ folder

The assets/ folder contains all compiled JavaScript bundles and the main stylesheet. These files are the output of the build process and should not be edited directly. Every HTML file in the project references them using relative paths such as ./assets/main.css.
FilePurpose
main.cssThe Tailwind-generated stylesheet for the entire theme. Contains the responsive layout system, typography scale, color definitions, spacing utilities, and custom tie-dye, marbled-paper, and soap-bubble utility classes such as .tie-dye-bg, .marbled-paper, .soap-bubble, .dye-bleed-input, and .tie-dye-text.
main.jsThe React and React Router application entry point. Initializes the page interface, sets up client-side routing, and connects the shared components to the HTML entry files.
jsx-runtime.jsThe JSX runtime helper that allows the compiled component files to render React elements correctly in the browser without a build step.
proxy.jsThe compiled Framer Motion bundle. Provides all animation primitives — page transitions, motion values, and animation controls — used by the theme’s components.
index.jsA compiled support bundle used by the static build for shared rendering and component initialization.
index2.jsA compiled support bundle used by the static build for shared rendering and animation utilities.
createLucideIcon.jsA compiled Lucide React support file that enables the icon components used across the theme’s navigation and UI elements.
x.jsA compiled support bundle for shared rendering, animation, and icon behavior used internally by other asset files.

components/ folder

The components/ folder contains the ten compiled JavaScript components that define the theme’s visual identity and interactive behavior. Each component is a self-contained ES module that is loaded by the HTML entry files via <link rel="modulepreload"> declarations in index.html.
FilePurpose
SwirlNav.jsThe primary navigation component. Renders the themed navigation bar with artisan-named route labels: “The Swirl,” “Out of the Dye Bath,” “The Color Wheel,” “Pigments,” “The Long Strip,” “Deep Dyes,” “Field Notes,” “Drop a Note,” and “Kind Words.”
DyeCursor.jsControls the decorative custom cursor behavior. Adds visual personality to pointer interactions while keeping all links and buttons fully accessible with standard pointer events.
KineticHeadline.jsRenders animated display headings with kinetic text effects. Used on the homepage and section headers to introduce the portfolio owner with expressive typographic motion.
MarbledCard.jsA reusable card component styled with the marbled-paper visual treatment. Used for project summaries, skill entries, and supporting content blocks while preserving consistent spacing and hierarchy across pages.
FabricStripTimeline.jsPresents work history, project timelines, or experience entries in a chronological fabric-strip layout that is easier to scan than a loose block of text.
TieDyeSwirl.jsRenders the decorative tie-dye swirl background element. Provides large-scale visual texture on the homepage and section backgrounds using conic gradient animations.
PaintTube.jsA themed UI piece that provides its own visual treatment within the shared layout system. Used as a decorative or illustrative element on relevant portfolio pages.
SoapBubble.jsA themed UI piece that renders translucent, iridescent bubble-style elements. Applies the .soap-bubble CSS utility, which uses layered radial gradients and backdrop blur to create a glass-like appearance.
ColorWheel.jsA themed UI piece that provides an interactive or decorative color wheel element. Used to reinforce the artisan dye-and-color visual identity on relevant pages.
PageTransition.jsWraps each page’s content in a short entrance and exit animation using Framer Motion. Keeps navigation feeling smooth and polished without adding noticeable delay between pages.

pages/ folder

The pages/ folder contains eight standalone HTML files — one for each portfolio section beyond the homepage. Each file follows the same structure as index.html: it loads the compiled assets, mounts a React root, and renders the appropriate page component.
FilePurpose
About.htmlBiography, background, personal introduction, and career story.
Blog.htmlWriting archive, article index, or long-form content page.
CaseStudies.htmlDetailed case studies and in-depth technical project breakdowns.
Contact.htmlContact details, email, social links, and preferred communication methods.
Projects.htmlFeatured project portfolio with project summaries and highlights.
Skills.htmlSkills inventory, technologies, tools, and capability overview.
Testimonials.htmlTestimonials, recommendations, and client or colleague feedback.
Work.htmlProfessional work history, employment timeline, and experience entries.

images/ folder

The images/screenshots/ subfolder stores the repository preview screenshots that appear in the README on GitHub. The screenshots are not required for the live site to function — they exist solely for the repository’s gallery display. After customizing the theme with your own content and design changes, replace the images in this folder with screenshots of your personalized site so the README preview stays accurate.
All asset references in index.html and the files in pages/ use relative paths — for example, ./assets/main.css and ./components/SwirlNav.js. Do not change these to root-relative paths that start with / (such as /assets/main.css). Root-relative paths only work when the site is served from the domain root. On GitHub Pages, most repositories are served from a subdirectory like https://username.github.io/repo-name/, so root-relative paths will break asset loading.
The .nojekyll file must stay at the repository root beside index.html. Without it, GitHub Pages treats the repository as a Jekyll site and may skip files or folders whose names start with an underscore or serve the JavaScript modules incorrectly. The file is intentionally empty — its presence is the only thing that matters.

Build docs developers (and LLMs) love