Terminal-style personal website with command-driven navigation.
- Astro
- Vanilla JavaScript (terminal runtime)
- CSS
- Install dependencies:
pnpm install
- Add an OpenWeatherMap key (optional for weather command):
- Copy
.env.exampleto.env - Set
OPENWEATHERMAP_API_KEY=...
- Copy
- Run dev server:
pnpm dev
- Resume path:
public/data/site-config.json - Project/domain list:
public/data/projects.json - Canonical resume file location:
public/resume.pdf
pnpm build
pnpm previewRun the full local quality suite:
pnpm checkIndividual commands:
pnpm lint
pnpm format:check
pnpm test
pnpm test:coverageThis repository uses Husky + lint-staged:
pre-commit: runslint-stagedon changed filespre-push: runspnpm check
If hooks are not active locally, run:
pnpm prepareGitHub Actions runs on every push and executes jobs in parallel:
- Lint + format check
- Unit tests with coverage thresholds
- Production build
Railway auto-deploy remains independent and unchanged.