contact app is a web application that allows users to manage their contacts. The app is built using a combination of Node.js for the backend and Vue.js for the frontend. The backend provides a set of CRUD (Create, Read, Update, Delete) endpoints that allow users to perform various operations on their contacts.
The app uses JSON Web Tokens (JWT) for authentication and authorization. When a user logs in to the app, the backend generates a JWT that contains the user's identity and any relevant permissions. This token is then passed to the frontend, where it is stored in the browser's local storage.
- User registration with JWT authentication
- User login and logout with JWT token
- Contact creation, update, and deletion
- Contact search and filtering
- Contact sharing and collaboration
- User profile management
- Node.js
- Express
- MongoDB
- JWT authentication
- HTML/CSS/JavaScript
- Bootstrap
-
public routes
-
POST /api/users/register
-
POST /api/users/login
-
-
private routes
-
GET /api/users/current
-
POST /api/contacts
-
GET api/contacts
-
GET api/contacts/:id
-
PUT api/contacts/:id
-
DELETE api/contacts/:id
-
>> clone the repo
setup server
-
cd server
-
rename .env_copy file to .env and set up the environment variable
-
npm install
-
npm start
setup client
-
cd client
-
npm install
-
npm run serve