This is a simple employee management system built with Next.js , daisyUI and Tailwind CSS. i may have mentioned that it is simple but it is not that simple, it is a fullstack application with a backend built with Node.js, MongodDB and Express.js and a frontend built with Next.js. i may have used word frontend and backend for the sake of simplicity but the frontend is in the root directory and the backend is in the server directory nested in frontend. i did use word frontend and backend while some people may use client and server, i am not in any hope that you can understand.
incase project grows and becomes more complex, i will move the backend to a separate repository.
First, run the development server:
yarn dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.js
. The page auto-updates as you edit the file.
- Host it somewhere and provide a link to the live version either vercel or github pages and Render
- Add a search bar and filter features
- a tasking system to assign tasks to employees
- Employee can login and request edit to their profile (raising ticket to admin)
- Employee can edit their profile picture
- Admin can approve or reject the request
- Password reset request
.
└───employee-management # root directory : frontend
├───.idx
├───.vscode
├───app
│ ├───add
│ ├───admin
│ │ └───DashboardComponents
│ ├───components
│ ├───employees
│ │ ├───components
│ │ ├───edit
│ │ │ └───[id]
│ │ └───[pageNo]
│ └───fonts
├───components
│ └───ui
├───lib
└───server # backend
├───config
├───controllers
├───img
├───middleware
├───models
├───routes
└───utils
.env # environment variables required to server directory
.env # environment variables required to root directory
For server:
- PORT
- MONGO_URI
- JWT_SECRET
For root/frontend directory:
- none for now
- GET /api/employees
- POST /api/employees
- PUT /api/employees/:id
- DELETE /api/employees/:id
- GET /api/employees/:id
- POST /api/user/login
- POST /api/user/register
- GET /api/user/logout
- GET /api/user/me
This project is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License. See the LICENSE file for details.