Everything for my website and blueprints.
Personal portfolio site of Marcus Hauen-Limkilde, a Computer Science student at Cal Poly San Luis Obispo working on embedded systems, wearables, and software projects.
Live at https://mkbhl.com (also www.mkbhl.com).
Status: in progress. Domain and hosting are live. Features and user stories are being written as GitHub Issues before the pages are built.
A hand-built static website: plain HTML, CSS and JavaScript. No framework, no build step, no database, no backend. Built by hand on purpose, to learn how the web works and to own every file.
| Page | Contents |
|---|---|
| Game | A small playable browser game (2 levels) |
| Experience & Education | Education (schooling, certificates) and jobs |
| Projects | Favorite / most notable projects, then all projects grouped by difficulty. Each project links to its own detail page |
| Project detail pages | What it is, how it was built, what was hard, what I learned, photos |
| About | About me, plus links to LinkedIn, Instagram, GitHub, and email |
The full list of features and user stories lives in this repo’s Issues.
.
├── index.html # About
├── experience.html # Experience & Education
├── projects.html # Projects overview
├── projects/ # one detail page per project
├── game.html
├── css/
├── js/
├── images/
├── CNAME # tells GitHub Pages the custom domain (do not delete)
└── README.md
Every change follows the same loop, even though this is a small project:
main (never commit straight to main)Branch names: feature/<short-name>, fix/<short-name>, docs/<short-name>.
No install needed. From the repo folder:
python3 -m http.server 8000
Then open http://localhost:8000.
Merging into main deploys automatically through GitHub Pages, usually within a minute or two.
| Piece | Service |
|---|---|
Domain mkbhl.com |
Cloudflare Registrar |
| DNS | Cloudflare (records set to “DNS only”) |
| Hosting + HTTPS | GitHub Pages, deployed from main, / (root) |
The domain is verified on GitHub so no other account can publish to it. The domain does not send or receive email.
No license yet: all rights reserved. Photos and written content are mine; please ask before reusing them.