The Lab Tracker Backend is a Node.js/Express application with a MongoDB database, providing REST APIs for managing lab products, requests, issues, returns, users, and admin workflows. It handles authentication, data management, notifications, and integrates with the frontend for a complete Lab Tracker system.
Authentication & User Management: Login, signup, forgot password, reset password, JWT-based authentication, refresh tokens, "Remember Me".
Product Management: Add, update, delete, filter, search, sort products, track stock, low stock indicators, bulk-add products.
Request / Issue Management: Create, review, reissue, return requests/issues, timeline tracking, close request feature, reissued request flow v2, correct return logic for damaged/replaced/normal items.
Admin Features: Admin dashboard analytics APIs, admin profile API, notifications API (including mobile optimization), request/issue/reissue management, staff notifications, table redesigns, API endpoints for all admin workflows.
UI / UX Backend Integrations: APIs supporting frontend dashboards (charts: bar, pie, line, radar), user and admin pages, product sorting, filtering, pagination, low stock table, checkout, and issued pages.
DevOps / Deployment: Dockerfile & docker-compose support, server-compose YAML, proxy server configuration, production & staging deployment, continuous integration updates.
Backend: Node.js, Express.js, MongoDB, Mongoose
Authentication & Security: JWT, bcrypt, dotenv
Email & Notifications: Nodemailer, SMTP integrations
DevOps / Deployment: Docker, docker-compose, server YAML, staging & production deployment
Prerequisites: Node.js v18+, npm or yarn, Docker (optional), MongoDB instance
Installation:
- Clone the repo:
git clone https://github.com/knightempire/lab-backend.git && cd lab-backend - Install dependencies:
npm installoryarn install - Create
.envfile and add necessary variables - Run development server:
npm run devoryarn dev
API runs at http://localhost:5000
Build for Production: npm run build && npm start
- Abinesh – Lead Developer / Full-stack / Maintainer @knightempire
- Raam Prathap R V – Backend Developer @Raamprathap
- Akshay K S – Frontend Developer @akshayks13
- Santhosh A S – Frontend Developer @Santhosh292K
- Sharan K – QA / Testing / Maintainer @Sharan450522
Special Thanks: Shibi S. Kumar @shibi1306 – continuous guidance and support
- Fork the repo
- Create a branch:
git checkout -b feature/my-feature - Commit changes:
git commit -m "Add my feature" - Push branch:
git push origin feature/my-feature - Open Pull Request
MIT License. See LICENSE
- Backend Repository: https://github.com/knightempire/lab-backend
- Frontend Repository: https://github.com/knightempire/lab-frontend
- Full Release Changelog: v1.0.0 Release