Full-stack application for managing employees and teams with authentication and audit logging.
- Backend: Node.js, Express, Sequelize, PostgreSQL
- Frontend: React, React Router, Axios
- Deployment: Render (Backend + DB), Vercel (Frontend)
- Organisation account creation
- User authentication (JWT)
- Employee CRUD operations
- Team CRUD operations
- Many-to-many employee-team relationships
- Comprehensive audit logging
- Responsive UI
- Node.js 18+
- PostgreSQL
- Git
-
cd backend
-
npm install
-
createdb hrms_db
-
cp .env.example .env
-
Edit .env with your database credentials
-
npm run dev
-
cd frontend
-
npm install
-
cp .env.example .env
-
Edit .env with backend URL
-
npm start
- Create PostgreSQL database on Render
- Create Web Service pointing to
backenddirectory - Set environment variables (DATABASE_URL, JWT_SECRET, etc.)
- Deploy
- Create new project from GitHub
- Set root directory to
frontend - Add
REACT_APP_API_BASE_URLenvironment variable - Deploy
POST /api/auth/register- Register organisationPOST /api/auth/login- LoginPOST /api/auth/logout- Logout
GET /api/employees- List all employeesGET /api/employees/:id- Get employeePOST /api/employees- Create employeePUT /api/employees/:id- Update employeeDELETE /api/employees/:id- Delete employee
GET /api/teams- List all teamsGET /api/teams/:id- Get teamPOST /api/teams- Create teamPUT /api/teams/:id- Update teamDELETE /api/teams/:id- Delete teamPOST /api/teams/:teamId/assign- Assign employeePOST /api/teams/:teamId/unassign- Unassign employeeGET /api/teams/logs- Get audit logs
- Frontend: https://your-app.onrender.com
- Backend: https://your-app.vercel.app