A simple, fast and secure way to report, manage and track computer-lab equipment problems.
LabSync is a lightweight web-based Lab Equipment Tracker designed for educational computer labs. Students can quickly report problems with a particular lab system, while authorized administrators can review, filter, update and delete complaints from a dedicated dashboard.
Built with HTML, CSS, JavaScript and Supabase, LabSync keeps the interface clean for students while giving lab administrators the tools they need to manage reported issues efficiently.
https://priyam-26.github.io/LabSync/
Hereβs a look at LabSync in action β from submitting a complaint to managing it through the administrator dashboard.
The student-facing dashboard provides a clean and straightforward interface for reporting lab equipment issues.
A dedicated login interface keeps the administrative dashboard accessible only to authorized users.
The admin dashboard provides an overview of reported issues along with search, filtering, status management and complaint controls.
Students can report an equipment/software problem in just a few steps:
- Enter their name
- Enter their board roll number
- Select the lab room
- Enter the affected system number
- Describe the problem in a maximum of 100 words
- Submit the complaint directly to the database
- Receive an immediate confirmation after successful submission
Currently supported lab rooms:
- π₯οΈ Lab 103
- π₯οΈ Lab 115
- π₯οΈ Lab 121
Students do not need to create an account to submit a complaint.
Authorized lab administrators get a dedicated dashboard where they can:
- π Sign in securely through Supabase Authentication
- π View complaint statistics
- π Search complaints
- π§ͺ Filter complaints by lab
- π¦ Filter complaints by status
- β Mark complaints as FIXED
- π Reopen complaints when required
- ποΈ Delete complaints
- πΎ Save multiple changes together
- πͺ Log out securely
The dashboard also keeps track of unsaved changes and asks for confirmation before potentially losing them.
| Feature | Description |
|---|---|
| π Complaint submission | Students can report a problem without logging in |
| π€ Student identification | Stores student name and board roll number |
| π« Lab selection | Supports Labs 103, 115 and 121 |
| π» System tracking | Records the affected computer/system number |
| βοΈ 100-word limit | Prevents unnecessarily long complaint descriptions |
| π Admin authentication | Uses Supabase Auth for administrator login |
| π Dashboard statistics | Shows total, open and fixed complaints |
| π Search | Quickly find complaints using keywords |
| π§ͺ Lab filtering | View complaints from a specific lab |
| π¦ Status filtering | Separate OPEN and FIXED complaints |
| βοΈ Status management | Admins can update complaint status |
| ποΈ Complaint deletion | Admins can remove unwanted records |
| π‘οΈ Row Level Security | Database access is restricted with Supabase RLS |
| π§Ή Automatic cleanup | Fixed complaints older than 7 days are automatically removed |
LabSync-main/
β
βββ π index.html # Student complaint portal
βββ π admin.html # Admin login & dashboard
βββ πΌοΈ favicon.png # Website favicon
β
βββ π css/
β βββ style.css # Student portal styling
β βββ admin.css # Admin dashboard styling
β
βββ π js/
β βββ config.js # Supabase configuration
β βββ student.js # Student portal logic
β βββ admin.js # Admin dashboard logic
β
βββ π supabase/
βββ database.sql # Database schema, RLS & cleanup job
- HTML5 β page structure
- CSS3 β responsive styling and layout
- Vanilla JavaScript β application logic and interactions
LabSync is intentionally lightweight:
Student
β
βΌ
Student Portal
(index.html + student.js)
β
β Submit complaint
βΌ
Supabase
β
βββ PostgreSQL β complaints
β
βββ RLS policies
β²
β
Admin Dashboard
(admin.html + admin.js)
β
βββ Search
βββ Filter
βββ Update
βββ Delete
LabSync includes an automated database cleanup job.
When a complaint is marked:
FIXED
its fixed_at timestamp is recorded.
Fixed complaints older than 7 days are then automatically deleted by the scheduled PostgreSQL job.
This keeps the active complaint database small and focused on recent issues.
A typical complaint moves through the following flow:
π Student submits problem
β
βΌ
π΄ OPEN
β
βΌ
π οΈ Admin works on the issue
β
βΌ
π’ FIXED
β
βΌ
π§Ή Automatically removed
after 7 days
LabSync focuses on a few simple principles:
- β‘ Fast β minimal dependencies and no unnecessary build system
- π§Ό Clean β straightforward interface with focused workflows
- π± Responsive β designed to remain usable across screen sizes
- π― Practical β built around an actual lab-management workflow
- π Secure β database-level access control with RLS
- π οΈ Maintainable β separate HTML, CSS, JavaScript and SQL files
Imagine a student is working in Lab 115 and discovers that System 07 is unable to open VS Code.
Instead of manually informing a lab assistant:
Name: Priyam
Registration No.: 117xxxxxxx
Lab Room No.: 115
System No.: 07
Problem: VS Code is not opening on this computer.
The complaint is submitted β stored in Supabase β appears on the admin dashboard β the administrator fixes the system β marks it FIXED.
Simple. π―
LabSync currently focuses on complaint reporting and administrative tracking.
It does not currently include:
- Student accounts
- Email/SMS notifications
- File/image attachments
- Technician assignment
- Repair-cost tracking
- Detailed audit history
- Multi-institution support
These can be added later if the project grows.
Some natural next steps could be:
- π Real-time admin notifications
- π§ Email notifications when a complaint is fixed
- π Screenshot/image attachments
- π¨βπ§ Technician assignment
- π Complaint analytics and trends
- π Estimated resolution time
- π§Ύ Full complaint history
- π± Installable PWA support
- π Dark mode
- π« Support for additional labs and departments
Contributions and improvements are welcome.
A simple workflow:
git checkout -b feature/your-featureMake your changes, test them locally, and submit a pull request.
When changing database behavior, remember to update:
supabase/database.sql
along with the relevant frontend code.
LabSync β Lab Equipment Tracker
Built to make reporting lab equipment problems faster, clearer and easier to manage. π
Report it. Track it. Fix it. π»
Priyam Prabhat
Computer Science Student | Web Development | Cybersecurity
If you find this project nice, you can give it a β on GitHub!