This project is a robust full-stack MERN (MongoDB, Express.js, React.js, Node.js) application developed for contact management. It features a custom Express backend API fortified with JSON Web Token authentication for secure user authentication and data protection. The frontend is built using React.js, with an efficient Flux design pattern implemented using the Context API for enhanced data management and application performance.
- User authentication: Secure user authentication using JSON Web Tokens (JWT).
- Contact management: Allows users to create, read, update, and delete contacts.
- Context API: Implements an efficient Flux design pattern using the Context API for state management.
- Responsive design: Ensures the application is fully functional and visually appealing across various devices and screen sizes.
- MongoDB: NoSQL database for storing contact information.
- Express.js: Backend framework for building the RESTful API.
- React.js: Frontend library for building user interfaces.
- Node.js: JavaScript runtime environment for running the backend server.
- JSON Web Token (JWT): Used for secure authentication.
- Context API: State management solution for React applications.
To run this application locally, follow these steps:
- Clone the repository:
git clone https://github.com/trishna456/contact-keeper
- Navigate to the project directory:
cd contact-management-app
- Install dependencies for both the backend and frontend:
cd server && npm install cd ../client && npm install
-
Set up environment variables:
- Create a
.env
file in theserver
directory. - Define the following variables:
MONGO_URI
: MongoDB connection URI.JWT_SECRET
: Secret key for generating JWT tokens.
- Create a
-
Start the backend server:
cd ../server && npm start
- Start the frontend development server:
cd ../client && npm start
- Open your browser and navigate to
http://localhost:3000
to access the application.
- Trishna Patil (https://github.com/trishna456)