CLAUDE.md
Project Overview
Personal technical documentation/portfolio website for Nick Sturgis, built with Quarto. Posts cover hardware projects, aquarium automation, and geospatial analysis.
- Live URL: https://www.nicksturgis.com/
- Source host: gitea.glowlab.cc/derglow/nickdocumentation
Tech Stack
- Quarto — static site generator (
.qmd→ HTML) - Python 3.11 — runtime for computational content
- uv — Python dependency management
- Apache httpd (trixie) — web server
- Kubernetes — orchestration (2 replicas, namespace
nickdocumentation) - NFS — content storage mounted at
/usr/local/apache2/htdocson the pods
Key Python Dependencies
Data science and visualization stack: - pandas, numpy, matplotlib, seaborn, plotly - geopandas, folium, shapely (geospatial) - openpyxl, tqdm, jupyter
Directory Structure
posts/ # Quarto content (.qmd files and assets)
kubernetes/ # K8s deployment manifest (nickdoc.yaml)
_site/ # Generated HTML output (NOT in git — served from NFS)
_freeze/ # Quarto computational cache
index.qmd # Homepage
_quarto.yml # Quarto project config
pyproject.toml # Python dependencies
Build & Deployment
Build:
quarto render # Generates _site/ from .qmd filesDeploy: Built _site/ is copied to NFS share at 192.168.20.50:/export/cloud/nickdocumentation. Kubernetes pods mount this NFS path as the Apache document root. No CI/CD pipeline — manual sync.
K8s manifest: kubernetes/nickdoc.yaml - LoadBalancer service on port 8081 - 2 replicas, resource limits: 500 MB / 250m CPU
Content Notes
posts/_metadata.ymlsetsfreeze: true— computational outputs are cached in_freeze/and not re-run unless explicitly unfrozen_site/is excluded from git; content is distributed via NFStitle-block-banner: trueis set globally for all posts
Active Posts
| Slug | Topic |
|---|---|
| plmd | Hardware/maker project |
| reef-flowrate | Aquarium flow rate monitoring |
| reef-light | WiFi-controlled LED reef light mod |
| reef-ph | pH monitoring |
| reef-temperature | Temperature monitoring |
| scr-heatmap | Spatial/heat map analysis |
| spectrometer | Spectroscopy project |