Skip to content

pratiksh21/Insta-App-Basic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Insta-App-Basic

Instagram Basic Design

Java Maven Spring Boot GPL v3


Welcome to the Instagram-like backend design documentation. This document outlines the core features, data models, and API controllers for the backend of a social media platform.

Introduction

This backend design aims to provide a basic structure for building an Instagram-like application. While it covers essential features such as user authentication and post management, please note that a production-ready Instagram-like platform would require additional functionality and more robust security.

Technologies Used

  • Framework: Spring Boot
  • Language: Java
  • Build Tool: Maven

Data Flow Diagram

                        ┌─────────────────────────┐
                        │   Instagram API         │
                        └───────────┬─────────────┘
                                    │
                                    ▼
                        ┌─────────────────────────┐
                        │       Controllers       │
                        └───────────┬─────────────┘
                                    │
                                    ▼
                        ┌─────────────────────────┐
                        │       Services          │
                        └───────────┬─────────────┘
                                    │
                                    ▼
                        ┌─────────────────────────┐
                        │       Repositories      │
                        └───────────┬─────────────┘
                                    │
                                    ▼
                        ┌─────────────────────────┐
                        │       Database          │
                        └─────────────────────────┘

Core Features

User Management

The User Controller is responsible for managing user-related operations.

User Sign-In

  • Endpoint:
POST /api/user/signin
  • Description: Allows users to sign in by providing their credentials (e.g., email and password). If the credentials are valid, an authentication token is generated and returned for future authenticated requests.

User Sign-Up

  • Endpoint:
POST /api/user/signup
  • Description: Enables new users to create accounts. Users provide their details, and a new account is created.

Update User Profile

  • Endpoint:
PUT /api/user/update
  • Description: Allows users to update their profile details, including first name, last name, age, email, and phone number.

Post Management

The Post Controller handles user post-related operations.

Create a Post

  • Endpoint:
POST /api/post/save
  • Description: Allows users to create new posts by providing post data. This data could be an image link, a description, or other post-related content.

Retrieve a Post

  • Endpoint:
GET /api/post/{postId}
  • Description: Users can retrieve a specific post by its unique ID.

Contributing

Contributions to this project are welcome. If you have any suggestions, improvements, or feature requests, please create a pull request or open an issue.

Thank you for considering this backend design as a starting point for your Instagram-like platform. Good luck with your project!

Swagger Configuration

http://localhost:8080/swagger-ui/index.html#/

Contact Information

If you have any questions, issues, or need further assistance related to the Model-Based CRUD Operations Portal project, feel free to contact us. We are here to help!

Please don't hesitate to reach out if you have any inquiries or need assistance with any aspect of the project. Your feedback and questions are important to us.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Releases

No releases published

Packages

No packages published

Languages