Build Log · Web Dev Workshop
I build small tools that solve real problems.
This is a running log of practical, from-scratch JavaScript builds: a calculator, a form validator, a records dashboard, each one shipped, documented, and open for review. No frameworks, no shortcuts, just HTML, CSS and JS taken seriously. More builds are in progress right now, so this log keeps growing.
- Projects in the repo
- 130
- Standalone builds
- 3
- Frameworks in those builds
- 0
$ ls builds BUILD-001 safe-calculator stable BUILD-002 smart-form-validator stable BUILD-003 student-report-card stable BUILD-004 ai-agent-bootcamp in progress $ _
Built with, on purpose
- Semantic HTML5
- Modern CSS (Grid + Custom Properties)
- Vanilla JavaScript (ES6+)
- IntersectionObserver
- LocalStorage
- Regex
- Print CSS
- Zero build step
Log entries
Browse the repository
Every project, big or small, lives in its own folder in the repo, with its own README. This site doesn't try to showcase or preview them; it just points you to the code.
Student Report Card
A full records dashboard: editable curriculum, auto-calculated grades, and print-ready report cards.
View on GitHub Build-001StableSafe Calculator
A guard-clause-first calculator that turns bad input and divide-by-zero into readable messages instead of crashes.
View on GitHub Build-002StableMagical Code Validator
A gamified registration form with live regex validation, a password strength meter, and achievement badges.
View on GitHub Build-004In progressAI Agent Bootcamp
A self-paced Python series building toward a working AI agent from first principles: memory, tool use, and a full reasoning loop.
View on GitHub RepositoryEverything else
Over a hundred smaller Python and web exercises, each in its own folder.
Full repositoryNo frameworks. No shortcuts. Just HTML, CSS and JS taken seriously.
Process
How each entry gets built
The same four-step loop, every time, whether it takes an afternoon or a week.
- 01
Pick a real problem
Something small and concrete enough to finish, not a toy.
- 02
Build from scratch
No frameworks by default. Reach for HTML, CSS and JS first.
- 03
Handle the edge cases
Bad input, empty states, small screens: all treated as normal.
- 04
Ship and document
A working page, a clean README, and code that reads back well.
Curious about a build, or want to work together?
I read every message. Reach out through the contact page or on GitHub.