This is a MERN (MongoDB, Express.js, React.js, Node.js) social app that allows users to connect and share content with each other. It provides features such as public key authentication, AWS S3 integration for image storage, and utilizes MongoDB with connect-mongo-session for session management.
- Public Key Authentication: The app uses public key authentication for secure user authentication.
- Dynamic Loading: Only load more posts after viewing of old posts.
- Compressed Posts: Automattically compress the images to save load time.
- AWS S3 Integration: User images are stored in AWS S3, providing scalable and reliable image storage.
- MongoDB with connect-mongo-session: MongoDB is used as the database, and connect-mongo-session is used for session management.
To run this app on your local machine, follow these steps:
-
Clone the repository: clone this repo by
git clone https://github.com/deepaksuthar40128/reactHost.git
-
Navigate to the project directory: Navigate to client folder and for ease copy it out for the folder you clone
-
Install the dependencies for the server and client: RUn
npm i
for both client and server -
Set up environment variables:
- Create a
.env
file in theserver
directory. - Add the necessary environment variables, such as database connection details, AWS S3 credentials, email.
-
Start the server: start server and client by
npm start
-
Open your browser and visit
http://localhost:3000
to see the app in action.
Contributions are welcome! If you have any ideas or improvements, please submit a pull request. For major changes, please open an issue first to discuss the changes.