A lightweight Enterprise Resource Planning (ERP) system built using .NET 8 Web API, Angular 19, and PostgreSQL. This system includes JWT authentication, role management, sales and purchase modules, and a user-friendly admin dashboard.
- User Authentication with JWT (Admin requires API key, others use username/password)
- Role-Based Access Control (Admin, Sales, Purchase)
- Admin Dashboard to manage users, products, and orders
- Sales & Purchase Modules with automated inventory updates
- CRUD Operations for users, products, and orders
- Bootstrap-based UI for a clean and responsive design
- Backend: .NET 8 Web API
- Frontend: Angular 19, Bootstrap
- Database: PostgreSQL
- Authentication: JWT Token & API Key (for admin)
- Node.js & npm
- Angular CLI
- .NET 8 SDK
- PostgreSQL
- Clone the repository:
git clone https://github.com/Ramya-R74/incadea_project_assignment.git cd incadea_project_assignment/backend - Install dependencies:
dotnet restore
- Configure PostgreSQL connection in
appsettings.json. - Run database migrations:
dotnet ef database update
- Start the backend:
dotnet run
- Navigate to the frontend directory:
cd ../frontend - Install dependencies:
npm install
- Run the application:
ng serve
- Admin Login requires an API key.
- Users with Sales or Purchase roles can log in with their credentials.
- Admin can manage users, products, sales orders, and purchase orders.
POST /api/auth/login→ User loginPOST /api/auth/admin-login→ Admin login with API keyGET /api/users→ Fetch all users (Admin only)POST /api/users→ Add a new user (Admin only)PUT /api/users/{id}→ Update user details (Admin only)DELETE /api/users/{id}→ Remove a user (Admin only)GET /api/products→ Get product listPOST /api/sales→ Create a sales orderPOST /api/purchase→ Create a purchase order
Feel free to fork the repo, create a feature branch, and submit a pull request!
This project is private for now, but licensing details can be added later.
Made by Ramya R

