This Contact Management application is built using the MERN (MongoDB, Express.js, React, Node.js) stack. It allows users to manage their contacts by adding, viewing, editing, and deleting contact information. The application also includes search and sorting functionality to enhance the user experience.
- Display a list of contacts with their names, phone numbers, and email addresses.
- Add new contacts with fields for name, phone number, and email address.
- Edit existing contacts.
- Delete contacts.
- Search for contacts by name.
- Sort contacts by name or other relevant criteria.
- MongoDB: Database for storing contact information.
- Express.js: Backend server framework for handling API requests.
- React: Frontend library for building the user interface.
- Node.js: Runtime environment for the server.
- Create React App (CRA): Bootstrap the React application.
- CSS: Styling the application.
- Other libraries and packages as needed.
To run the Contact Management Application locally, follow these steps:
-
Clone the repository:
git clone https://github.com/Adesh856/Contact_Managment_App.git
-
Navigate to the backend directory:
cd Backend
-
Install the backend dependencies:
npm install
-
Create a
.env
file in the backend directory and specify your MongoDB connection URL create .env file on the Backend folder root directory copy and paste it into into env file.mongourel=<Your MongoDB Atlas url> port=5000
-
Start the backend server:
npm start
The backend server should now be running on http://localhost:5000.
-
Navigate to the frontend directory:
cd Client/Frontend
-
Install the frontend dependencies:
npm install
-
Start the frontend development server:
npm run dev
The frontend server should now be running on http://127.0.0.1:5173/.
contact-management-app/
├── Backend/ # Backend server
│ ├── controllers/ # API controllers
│ ├── models/ # MongoDB models
│ ├── routes/ # API routes
│ ├── config.js # Configuration file
│ ├── server.js # Express server setup
│ └── ...
├── Client/Frontend/ # ReactVite frontend
│ ├── public/ # Public assets
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── services/ # API service
│ │ ├── App.js # Main React component
│ │ ├── index.js # Entry point
│ │ └── ...
│ ├── package.json
│ └── ...
├── .gitignore
├── README.md
└── ...
- GET
/api/contacts
: Retrieve all contacts. - GET
/api/contacts/:id
: Retrieve a specific contact by ID. - POST
/api/contacts
: Create a new contact. - PUT
/api/contacts/:id
: Update an existing contact. - DELETE
/api/contacts/:id
: Delete a contact. - Search
api/contacts/search?name=
: Search by name,email,number
You can access the deployed Contact Management Application using the following link:
Feel free to explore and use the application.