MicroBlog is a streamlined blogging platform designed to enhance learning in web application development. This educational project is built using Express.js for server-side logic and provides fundamental blogging functionality, including user registration, authentication, posting, liking posts, and managing content.
The project is structured into multiple phases to progressively introduce key web development concepts, including persistent storage, OAuth authentication, and responsive frontend design.
Through this project, I am mastering:
- Server-side Programming: Implementing robust backend logic using Express.js.
- User Authentication: Managing secure user sessions, login/logout operations, and preparing for OAuth integration.
- Data Persistence: Setting up database interactions to manage user-generated content.
- Templating Engines: Using Handlebars templates for dynamic HTML views.
- Security Concepts: Implementing user authentication and authorization workflows.
- User Authentication: Secure registration, login, and logout functionality.
- Post Management: Create, like, and delete user-generated posts.
- Data Persistence: Efficiently stores and retrieves user and post data.
- OAuth Integration (Planned): Future support for third-party OAuth login (e.g., Google, GitHub).
- Dynamic UI: Organized and modular views through Handlebars templating.
project_root/
├── app.js # Main server-side application logic
├── routes/ # Routing logic for posts and authentication
├── views/ # Handlebars templates
├── public/ # Static assets (CSS, images, JavaScript)
└── models/ # Data model definitions (user, posts, etc.)
Clone and install dependencies:
git clone <your-repo-link>
cd <repo-directory>
npm installnpm startThe server will run on:
http://localhost:3000
- Integrate persistent storage using databases like MongoDB.
- Implement OAuth authentication via services like Google and GitHub.
- Enhance UI/UX with responsive design and advanced frontend components.
Licensed under the MIT License - see LICENSE for details.