The MyContacts App is a simple contact management application that allows users to organize and manage their contacts. It provides a user-friendly interface for adding, editing, and deleting contacts.
- Frontend repository (https://github.com/Amitrochates/mycontacts-frontend)
- Backend repository (https://github.com/Amitrochates/mycontacts-backend)
- The app’s frontend is deployed using Vercel.
- The backend is running on Render.
- You can access the live version of the MyContacts App here.
- JavaScript: The primary language for building the frontend.
- React: Utilizes functional components along with hooks like
useState
,useEffect
, anduseNavigate
for state management and navigation. - Tailwind CSS: Facilitates efficient styling with a utility-first approach.
- Custom hooks are implemented to fetch data from the backend, streamlining data retrieval and state management.
- Auxiliary functionalities like network requests and routing are handled by libraries such as
axios
andreact-router-dom
, respectively. - Toasts for improved user experience.
- Express: A minimal and flexible Node.js web application framework for building the backend.
- Node.js: The runtime environment for executing JavaScript on the server.
- MongoDB: A NoSQL database for storing contact information.
- CRUD Operations: Implemented to manage user contacts.
- Implements CRUD routes for managing user contacts, ensuring a robust API structure.
bcrypt
library is used to securely hash passwords before storing.- CORS is configured to enable secure cross-origin requests.
- JWT (JSON Web Tokens) is used for secure authentication.
- Clone this repository.
- Install dependencies using
npm install
in both frontend and backend. - Set up your MongoDB database and configure the connection in the backend.
- Start the frontend using
npm run dev
. - Start the backend using
node server.js
.