Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dsrathore1/social-media
Connect and share seamlessly with our Social Media App, a MERN stack-powered platform offering secure authentication, real-time updates, and interactive features for creating, liking, and commenting on posts.
https://github.com/dsrathore1/social-media
cicd docker javascript monorepo nextjs nginx nodjs npm-package reactjs typescript vercel
Last synced: 8 days ago
JSON representation
Connect and share seamlessly with our Social Media App, a MERN stack-powered platform offering secure authentication, real-time updates, and interactive features for creating, liking, and commenting on posts.
- Host: GitHub
- URL: https://github.com/dsrathore1/social-media
- Owner: dsrathore1
- License: mit
- Created: 2023-12-31T13:34:33.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2024-03-15T01:27:31.000Z (8 months ago)
- Last Synced: 2024-03-15T10:54:31.158Z (8 months ago)
- Topics: cicd, docker, javascript, monorepo, nextjs, nginx, nodjs, npm-package, reactjs, typescript, vercel
- Language: JavaScript
- Homepage:
- Size: 5.35 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Social Media App
## Table of Contents
- [Description](#description)
- [Features](#features)
- [Technologies](#technologies)
- [Installation](#installation)
- [Usage](#usage)
- [API Endpoints](#api-endpoints)
- [Contributing](#contributing)
- [License](#license)## Description
This is a full-stack Social Media App built using the MERN (MongoDB, Express.js, React.js, Node.js) stack. It allows users to connect, share posts, and engage in social interactions. The application provides a seamless and responsive user interface, making it easy for users to navigate and interact with each other.
## Features
- **User Authentication:** Secure user authentication using JWT (JSON Web Tokens).
- **User Profiles:** Users can create and customize their profiles.
- **Post Creation:** Users can create and share posts with text, images, or links.
- **Like and Comment:** Users can interact with posts by liking and commenting on them.
- **Friend Requests:** Users can send and accept friend requests.
- **Real-time Updates:** Real-time updates for new posts and notifications using WebSockets.## Technologies
- **Frontend:**
- React.js
- Redux for state management
- React Router for navigation
- Axios for API requests- **Backend:**
- Node.js with Express.js
- MongoDB for the database
- Mongoose for ODM (Object Data Modeling)
- Passport.js for authentication- **Real-time Updates:**
- Socket.io for WebSocket communication## Installation
1. Clone the repository:
```bash
git clone https://github.com/your-username/social-media-app.git
```2. Navigate to the project directory:
```bash
cd social-media-app
```3. Install dependencies:
```bash
npm install
```4. Set up environment variables:
- Create a `.env` file in the root directory.
- Define the following variables:```
REACT_APP_API_URL=http://localhost:5000/api
REACT_APP_SOCKET_URL=http://localhost:5000
SECRET_KEY=your_secret_key
MONGODB_URI=your_mongodb_connection_string
```5. Run the application:
```bash
npm run dev
```## Usage
1. Open your browser and navigate to `http://localhost:3000` to access the frontend.
2. Start exploring and using the social media app.## API Endpoints
- **GET /api/posts:** Get all posts.
- **GET /api/posts/:postId:** Get a specific post.
- **POST /api/posts:** Create a new post.
- **PUT /api/posts/:postId:** Update a post.
- **DELETE /api/posts/:postId:** Delete a post.*Note: The above endpoints are just examples. You may have additional endpoints based on your app's functionality.*
## Contributing
Contributions are welcome! If you find any issues or have suggestions, feel free to open an issue or create a pull request.
## License
This project is licensed under the [MIT License](LICENSE).