Sociopedia is a social media web application built using the MERN (MongoDB, Express.js, React, Node.js) stack. It allows users to register, create posts, and view profiles of other users. The app provides a platform for social networking and sharing content with friends and the wider community.
- React: JavaScript library for building user interfaces. βοΈ
- React Router: Library for handling client-side routing. π£οΈ
- Material-UI: UI component library for styling and theming the app. π¨
- Redux: State management library for managing global app state. π
- Axios: Promise-based HTTP client for making API requests. π
- Node.js: JavaScript runtime for server-side development. π₯οΈ
- Express.js: Web application framework for building RESTful APIs. π
- MongoDB: NoSQL database for storing user information, posts, and other data. π¦
- Mongoose: MongoDB object modeling library for interacting with the database. π
- JSON Web Tokens (JWT): Token-based authentication mechanism for securing routes. π
- Multer: Middleware for handling file uploads. π
- Helmet: Middleware for setting HTTP headers for improved security. π‘οΈ
- Morgan: HTTP request logging middleware. π
- dotenv: Library for loading environment variables from a .env file. π
- User Registration π: Users can create an account by providing their information and uploading a profile picture.
- User Authentication π: Secure authentication is implemented using JSON Web Tokens (JWT) to ensure authorized access to protected routes.
- Post Creation π: Users can create posts with text content and an optional picture upload.
- User Profiles π€: Each user has a profile page where their posts are displayed along with their profile picture and information.
- Home Feed π : Authenticated users can view a feed of posts from all users, sorted by the most recent.
- Responsive Design π±: The app is optimized for various screen sizes and devices, allowing users to access Sociopedia from desktops, tablets, and mobile devices.
- Node.js (version 12 or above) and npm (Node Package Manager) must be installed on your system.
- MongoDB should be installed and running locally or provide a connection URL to a remote MongoDB instance.
