A complete, database-driven CRUD (Create, Read, Update, Delete) application that allows users to register, log in, and manage their own blog posts.
The goal was to move beyond static websites and build a dynamic, full-stack application. I wanted to challenge myself to create a complete platform where content wasn't hard-coded but was generated by users and stored in a database. The main objectives were to implement user authentication and full CRUD functionality for blog posts.
My development process started with designing the database schema: one table for users (with id, username, password) and another for posts (with id, title, content, and a user_id to link it to the author).
The biggest challenge was implementing a secure user authentication system. It wasn't just about creating a login form; it involved:
Solving this taught me the fundamentals of web security and user management.
This was a huge learning experience that solidified my understanding of full-stack development. Key takeaways were: