Lint-First Workflow for Static Sites
This site is small, but every change travels through the same checklist so regressions stay out of production.
1. ESLint Before Anything Else
I keep ESLint strict because it catches the mistakes I make when moving quickly: stray globals, unused imports, or inconsistent spacing.
{
"scripts": {
"lint": "npx eslint assets/js --ext .js"
}
}
The root .eslintrc.js enforces four-space indentation, aligned assignments, and double quotes. Saving inside VS Code triggers auto-fix-on-save so most formatting issues disappear instantly.
2. Manual QA for Interactions
With no automated tests yet, the QA pass is manual but regimented:
- Load the homepage over
python3 -m http.serverand verify hero, nav, and portfolio toggles. - Open the page in Chrome, Firefox, and Safari responsive viewports.
- Tab through interactive elements to ensure keyboard focus styles remain visible.
3. Ship Notes in Pull Requests
Even when merging directly, I draft the PR description with highlights, screenshots, and manual QA notes. It keeps future me honest and gives recruiters a changelog to explore.