Building a Blog with Claude: Feature Complete
This is the final post in my "building a blog from scratch with Claude doing the coding" series. The blog works.
Functional Requirements: Done
I can perform CRUD (create, read, update, delete) operations with OIDC authorization. The blog accepts comments without moderation. It has a clean, uncluttered design with dark mode support.
The Non Functional Requirements Matter More
What I'm actually proud of: the code-base can evolve without starting over. Domain Driven Design keeps the business logic isolated. Hexagonal Architecture means I can swap infrastructure without touching the core. Each Maven sub-module has its own tests, and integration tests verify core functionality on every build. GitHub Actions handle CI/CD—every commit triggers the pipeline.
This is where AI assisted coding either succeeds or fails. Anyone can prompt their way to a working feature. Building something maintainable is harder.
Security: An Ongoing Commitment
Security gets its own section because it deserves ongoing attention. When you build with an AI assistant, you still own the security maintenance. I'm committing one hour per week to this.
What's Next
The code is on GitHub. Questions and feedback welcome.
I have data to evaluate this experiment: successful prompt percentage, prompt-to-commit ratio, test coverage, code smells. Some areas needed one-off CSS fixes that don't fit neatly into the prompt-screenshot workflow I've been documenting.
I see two more posts coming: one for the Java engineer evaluating AI-assisted architecture decisions, and one for anyone considering whether an AI coding assistant can help them build something robust.
Comments
No comments yet. Be the first to share your thoughts!