This is a clean, minimal starter you can deploy for free with GitHub Pages and extend with any custom code (D3.js, p5.js, iframes, etc.).
- Create a new repository on GitHub (e.g.,
my-portfolio). - Download this starter and upload all files to your repo root (
index.htmlshould be at the top level). - In your repo: Settings → Pages → Build and deployment
- Source: Deploy from a branch
- Branch: main /
/ (root)
- Wait for the deployment to finish, then visit the URL GitHub provides (e.g.,
https://user.github.io/my-portfolio).
- Add your domain in Settings → Pages → Custom domain.
- Create a
CNAMEfile with your domain or let GitHub create it. - Update DNS: point your domain’s
Arecord to GitHub Pages IPs, andwwwCNAME toyour-username.github.io.
- HTML:
index.html - CSS:
assets/css/styles.css - JavaScript:
assets/js/(D3 demo is ind3-demo.js, p5 sketch inp5-sketch.js) - Images:
assets/img/
- D3.js: edit
assets/js/d3-demo.jsor add new files. - p5.js: edit
assets/js/p5-sketch.js. - iframes: replace the example iframe with your prototype (Observable, Figma, Framer, etc.).
- This is static and fast. No build step. You can add frameworks later if needed.
- If you want markdown pages or blog posts, we can convert this to Jekyll later without breaking the design.