Back-end
Blog API
A full-featured blog API built with Node.js, Express, and Prisma, supporting JWT authentication, image uploads, data validation, and endpoints for users, posts, and comments.

Overview
About the project
Blog API is a backend application built with Node.js, Express, and Prisma. It provides the necessary endpoints for managing users, posts, and comments in a blog application.
The API supports JWT authentication, image upload with Multer and Cloudinary, data validation with Joi, and password hashing for secure user management.
What it includes
Key features
- Handle authentication with JWT, password hashing, and protected routes
- Support avatar and cover image uploads with Multer and Cloudinary
- Provide CRUD operations for users, posts, and comments
- Allow post likes, saves, and search functionality
- Restrict sensitive actions through admin-only access
- Validate input with Joi and manage errors centrally
Stack
Technologies used
- Node.js 18+
- Express 5
- Prisma
- PostgreSQL
- JWT
- Multer
- Cloudinary
- Joi
- bcrypt/bcryptjs
Process
Decision Log
Separating backend responsibilities
The API was created to handle authentication, posts, comments and uploads independently from the frontend.
Strong validation and security
JWT, Joi and password hashing were used to keep the API secure and inputs reliable.
Supporting real blog workflows
Endpoints were structured around common blog features such as post creation, comments, likes and saved content.
Media upload integration
Multer and Cloudinary were added to support image handling in a practical production-style workflow.
Continue exploring
More Projects
Project
Full-Stack House Organizer Application
Housemates is a full-stack web application designed to help people organise, manage and access everything in a shared house.
Project
Next.js Full-Stack Blog
A full-stack blog built with Next.js. Users can read, like, save, and comment on posts, and signed-up users can create, edit, or delete their own posts.
Project
The Solar System 2
An interactive project displaying information about celestial bodies in the solar system. Fully developed from scratch with a custom API and interactive animations.