A social media application built using the MERN stack, where users can share their experiences, follow each other, comment on posts, and filter content based on names and tags.
- User registration and authentication
- Follow/unfollow functionality
- Commenting on posts
- Content filtering by names and tags
- Pagination for better user experience
- Hash encryption of passwords
- Access management with JWT tokens
- Node.js: A JavaScript runtime environment for server-side development.
- Express.js: A web application framework for Node.js used for building APIs and handling HTTP requests.
- MongoDB: A NoSQL database for storing application data.
- JWT (JSON Web Tokens): A mechanism for authenticating and securely transmitting information between parties.
- React.js: A JavaScript library for building user interfaces.
- Redux: A predictable state container for managing application state.
- React Router: A routing library for navigation in a React application.
- Axios: A library for making HTTP requests from the browser.
- Node.js and npm (Node Package Manager) should be installed.
- MongoDB should be installed and running.
-
Clone the repository:
git clone https://github.com/ananyap18/Journal.git cd social-media-web-app
-
Install the dependencies for both backend and frontend:
cd server npm install
cd ../client npm install
-
Configuration: Rename the .env.example file in the backend directory to .env and update the configuration values such as MongoDB connection URL, JWT secret, etc.
-
Start the application:
cd server npm start
cd ../client npm start
The application should now be running at http://localhost:3000.