Build a service that allows users to upload and process images.
This project involves creating a backend system for an image processing service similar to Cloudinary. The service will allow users to upload images, perform various transformations, and retrieve images in different formats. The system will feature user authentication, image upload, transformation operations, and efficient retrieval mechanisms.
Here is the list of features that you should implement in this project:
Here is the list of transformations that you can implement:
Feel free to add more transformations based on your interest and expertise.
Here is the list of endpoints that you can implement for this project:
Register a new user:
POST /register
{
"username": "user1",
"password": "password123"
}
Response should be the user object with a JWT.
Log in an existing user:
POST /login
{
"username": "user1",
"password": "password123"
}
Response should be the user object with a JWT.
POST /images
Request Body: Multipart form-data with image file
Response: Uploaded image details (URL, metadata).
POST /images/:id/transform
{
"transformations": {
"resize": {
"width": "number",
"height": "number"
},
"crop": {
"width": "number",
"height": "number",
"x": "number",
"y": "number"
},
"rotate": "number",
"format": "string",
"filters": {
"grayscale": "boolean",
"sepia": "boolean"
}
}
}
User can apply one or more transformations to the image. Response should be the transformed image details (URL, metadata).
GET /images/:id
Response should be the image actual image detail.
GET /images?page=1&limit=10
This project will help you understand how to build a scalable image processing service with user authentication and image transformation capabilities. You can use this project to showcase your backend development skills and learn about image processing techniques.
Actively Maintained
We are always improving our content, adding new resources and adding features to enhance your learning experience.
Join the Community
roadmap.sh is the 7th most starred project on GitHub and is visited by hundreds of thousands of developers every month.
Roadmaps Best Practices Guides Videos FAQs YouTube
roadmap.sh by @kamrify @kamrify
Community created roadmaps, best practices, projects, articles, resources and journeys to help you choose your path and grow in your career.
Login to your account
You must be logged in to perform this action.