Fast, mobile-first landing page for a QR code on a physical business card. Fully static. No build step. No backend.
Stack: plain HTML + CSS
Repo: https://github.com/bdfabrications/resume
Live domain: https://aktradesman.com
Host: Nginx in Docker + Cloudflare Tunnel on ZimaBlade (same pattern as scprivateer.org)
index.html ← digital card (QR destination)
resume/index.html ← full résumé
assets/css/main.css ← shared styles
docker-compose.yml ← nginx:alpine on host port 4322
nginx.conf ← container Nginx config
README.md
.gitignore
Local-only (gitignored — stay on your PC): Cursor prompt/rules, roadmap, QR PNG.
Edit copy in the HTML files. Colors/fonts: :root in assets/css/main.css.
python -m http.server 8080
# or: docker compose up -d- Python:
http://localhost:8080 - Docker:
http://localhost:4322
Same idea as scprivateer.org: nginx:alpine → host port → mount static files.
| Site | Container | Host port | Mount |
|---|---|---|---|
| scprivateer.org | blackbox_storefront |
4321 |
./dist (Astro build) |
| this card | brandon_card |
4322 |
project root (no build) |
git clone https://github.com/bdfabrications/resume.git landing
cd landingLater updates:
cd landing
git pull
docker compose restart # only if the page looks staledocker compose up -d
docker ps | grep brandon_cardLAN check: http://<zimablade-ip>:4322/ and .../resume/
Use the same tunnel as scprivateer.org.
- Cloudflare Dashboard → Zero Trust → Networks → Tunnels
- Open your existing tunnel → Configure → Public Hostname → Add
- Fill in:
| Field | Value |
|---|---|
| Subdomain | (leave blank for apex) |
| Domain | aktradesman.com |
| Path | (blank) |
| Type | HTTP |
| URL | localhost:4322 |
- Save. Cloudflare usually creates the DNS
CNAMEfor@→ your tunnel automatically.
Optional — also add www:
| Field | Value |
|---|---|
| Subdomain | www |
| Domain | aktradesman.com |
| Type | HTTP |
| URL | localhost:4322 |
Or redirect www → apex under Rules → Redirect Rules.
- Test from phone on cellular: https://aktradesman.com and https://aktradesman.com/resume/
Generate after HTTPS works on cellular. Point the QR at https://aktradesman.com. Keep the PNG out of git.
| What | Where |
|---|---|
| Phone / email | index.html + resume/index.html |
| Alaska / availability | .identity__location in index.html |
| Skills | Capabilities section in index.html |
| Work history | resume/index.html |
| Colors | :root in assets/css/main.css |
- Dark charcoal + copper theme, no JavaScript
- Fonts from Google Fonts (can self-host later)
- Optional later: headshot, PDF résumé, analytics