This repository contains a MERN stack project demonstrating effective state management using React and Redux for the client-side and Express.js and MongoDB for the server-side.
-
Client-Side:
- React and Redux: Manage complex state with Redux for predictable state management.
- User Authentication: Secure login and registration using JWT (JSON Web Tokens).
- State Persistence: Maintain state across sessions using local storage.
- CRUD Operations: Create, read, update, and delete resources seamlessly.
-
Server-Side:
- Express.js: RESTful API to handle client requests and perform database operations.
- MongoDB: NoSQL database for storing user information and application data.
- JWT Authentication: Secure API endpoints with token-based authentication.
- Data Validation: Ensure data integrity and validation using Mongoose schemas.
To install and run the project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/daemonX10/mern_state.git cd mern_state
-
Install server dependencies:
cd server npm install
-
Install client dependencies:
cd ../client npm install
-
Create a
.env
file in the server directory and add your MongoDB URI and any other necessary environment variables.
To start the development server, run:
# Start server
cd server
npm start
# Start client
cd ../client
npm start
Open your browser and navigate to http://localhost:3000
to view the application.
Contributions are welcome! If you have any suggestions, bug reports, or improvements, please open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.