A robust RESTful API for a blog platform built with Node.js, Express, and MongoDB. This system provides comprehensive blog management with user/author authentication and authorization.
- User/Author Management: Register, authenticate, and manage authors
- Blog CRUD Operations: Create, read, update, and delete blog posts
- File Uploads: Support for blog images and media attachments
- Advanced Query Filtering: Filter blogs by title, author, date, tags, and more
- Pagination: Efficient data retrieval with customizable page sizes
- Search Functionality: Full-text search across blog content
- Input Validation: Request validation using Joi/Express-validator
- Error Handling: Centralized error handling with custom error classes
- Node.js
- Express.js
- MongoDB with Mongoose
- Passport JS (Local Strategy, Local Strategy with sessions, Passport JWT)
- Multer for file uploads
- Http Status for proper status handling
- JOI for validations