Welcome to the Contact Manager website! This web application allows users to manage their contacts, providing features like creating, editing, and deleting contacts. Additionally, it includes user authentication, session management, and other functionalities.
- User Authentication with Passport.js
- Session Management using Express Session
- Contact Management (Create, Read, Update, Delete)
- Password Reset Functionality
- User Dashboard
- ...
To get started with the Contact Manager website, follow these steps:
-
Clone the repository:
git clone https://github.com/AthulSabu2002/contactManager.git cd contactManager
-
Install dependencies:
npm install
-
Configure environment variables:
Create a
.env
file in the root directory and add the necessary environment variables:PORT=5000 DATABASE_URL=mongodb://your-mongodb-url APP_PASSWORD=your-app-password-for-email MYEMAIL=your-email
-
Run the application:
npm start
The server will be running on
http://localhost:5000
(or the port specified in your.env
file).
- Express.js
- MongoDB (with Mongoose)
- Passport.js
- Express Session
- ...
Make sure to check the package.json
file for a complete list of dependencies.
-
User Registration:
- Navigate to
/registerUserWithOTP
to register a new user with OTP verification.
- Navigate to
-
User Authentication:
- Login at
/
or/users/login
.
- Login at
-
Contact Management:
- Create a new contact at
/createContact
. - View contacts at
/view-contact
. - Edit a contact at
/edit/:id
. - Delete a contact at
/deleteContact
.
- Create a new contact at
-
Password Reset:
- Forgot password at
/forgot
. - Reset password using the provided token at
/reset/:token
.
- Forgot password at
-
User Dashboard:
- Access the user dashboard at
/dashboard
.
- Access the user dashboard at
-
Other Routes:
- Explore other routes based on your application's functionalities.
/
- Home Page or Login Page/users
- User Authentication Routes/forgot
- Forgot Password/reset/:token
- Password Reset/logout
- Logout/dashboard
- User Dashboard/view-contact
- View Contacts/createContact
- Create a Contact/edit/:id
- Edit a Contact/deleteContact
- Delete a Contact/verifyOtp
- Verify OTP/registerUserWithOTP
- Register User with OTP