Micro-social is an open-source social media backend application built with a microservice architecture using Spring Boot. It supports key features like user registration, login, and profile management with JWT-based authentication. Posts are analyzed with AI, and trending data is stored in Redis for real-time access.
The application is designed for scalability and integrates advanced technologies such as:
- MongoDB for data storage
- Elasticsearch for powerful search and indexing
- Redis for caching and trend data storage
- Spring Cloud Gateway for API routing
- Eureka Server for service discovery
This project showcases a robust and modern backend system built to handle complex social media use cases efficiently.
Endpoint | Method | Description | Authorization |
---|---|---|---|
/auth/register |
POST | Register a new user | No |
/auth/login |
POST | Login and receive a JWT token | No |
Endpoint | Method | Description | Authorization |
---|---|---|---|
/user/getProfile |
GET | Retrieve user profile by username | Bearer Token |
/user/updateProfile |
PATCH | Update user profile information | Bearer Token |
/user/delete |
DELETE | Delete a user | Bearer Token |
Endpoint | Method | Description | Authorization |
---|---|---|---|
/post/addPost |
POST | Add a new post | Bearer Token |
/post/getPost |
GET | Retrieve a post by ID | Bearer Token |
/post/getPostByAuthorId |
GET | Retrieve posts by author ID | Bearer Token |
/post/updatePostByPostId |
PUT | Update a post by post ID | Bearer Token |
/post/deletePost |
DELETE | Delete a post | Bearer Token |
Endpoint | Method | Description | Authorization |
---|---|---|---|
/trends |
GET | Retrieve trending posts data | Bearer Token |
Endpoint | Method | Description | Authorization |
---|---|---|---|
/health |
GET | Check the health of the service | No |
- Java 11 or higher
- Maven
- MongoDb (version 5.x or compatible)
- RabbitMQ (version 4.x or compatible)
- Elasticsearch (version 8.x or compatible)
- Redis (version 8.x or compatible)