- Jaydip Bariya (Leader)
- Udit Vegad
- Jaimin Solanki
- Miral Padmani
Experience GearGuard in action: https://gear-guard-seven.vercel.app/
- Real-Time Kanban Board: Drag-and-drop requests with instant updates across all connected clients (powered by Convex).
- Role-Based Access Control: Strict permissions for Managers (full control) vs. Technicians (execution only).
- Smart Equipment Tracking: Auto-fill logic, history tracking, and "Scrap" lifecycle management.
- Preventive Maintenance Calendar: Visual scheduling for routine checkups.
- Modern UI: Glassmorphism design with smooth animations and responsive layouts.
Objective: Develop a maintenance management system that allows a company to track its assets (machines, vehicles, computers) and manage maintenance requests for those assets.
Core Philosophy: The module must seamlessly connect Equipment (what is broken), Teams (who fix it), and Requests (the work to be done).
The system serves as a central database for all company assets. Participants must create a robust "Equipment" record that tracks ownership and technical details.
- Equipment Tracking (use the search or group by for tracking the request):
- By Department: (e.g., A CNC Machine belongs to the "Production" department).
- By Employee: (e.g., A Laptop belongs to "Person name").
- Responsibility: Each equipment must have a dedicated Maintenance Team and a technician is assigned to it by default.
- Key fields:
- Equipment Name & Serial Number.
- Purchase Date & Warranty Information.
- Location: Where is this machine physically located?
The system must support multiple specialized teams.
- Team Name: Ability to define teams (e.g., Mechanics, Electricians, IT Support).
- Team Member Name: Link specific users (Technicians) to these teams.
- Workflow Logic: When a request is created for a specific team, only team members should pick it up.
This is the transactional part of the module. It handles the lifecycle of a repair job.
- Request Types:
- Corrective: Unplanned repair (Breakdown).
- Preventive: Planned maintenance (Routine Checkup).
- Key fields:
- Subject: What is wrong? (e.g., "Leaking Oil").
- Equipment: Which machine is affected?
- Scheduled Date: When should the work happen?
- Duration: How long did the repair take?
Participants must implement the following business logic to make the module "alive."
- Request: Any user can create a request.
- Auto-Fill Logic: When the user selects an Equipment (e.g., "Printer 01"):
- The system should automatically fetch the Equipment category and Maintenance Team from the equipment record and fill them into the request.
- Request state: The request starts in the New stage.
- Assignment: A manager or technician assigns themselves to the ticket.
- Execution: The stage moves to In Progress.
- Completion: The technician records the Hours Spent (Duration) and moves the stage to Repaired.
- Scheduling: A manager creates a request with the type Preventive.
- Date Setting: The user sets a Scheduled Date (e.g., Next Monday).
- Visibility: This request must appear on the Calendar View on the specific date so the technician knows they have a job to do.
- Identification: A technician identifies an asset is beyond repair.
- Restriction: Technicians cannot scrap equipment directly to prevent operational errors.
- Execution: A Manager reviews the case and selects "Scrap" from the status dropdown or "Danger Zone".
- Automation: The system automatically:
- Marks the request as Scrapped.
- Flags the Equipment as Scrapped (inactive) in the database.
- Removes the equipment from future selection lists.
To provide a good User Experience (UX), the following views are required:
The primary workspace for technicians.
- Group By: Stages (New | In Progress | Repaired | Scrap).
- Drag & Drop: Users must be able to drag a card from "New" to "In Progress."
- Visual Indicators:
- Technician: Show the avatar of the assigned user.
- Status Color: Display a red strip or text if the request is Overdue.
- Permission Lock: The "Scrap" column is locked for non-managers.
- Display all Preventive maintenance requests.
- Allow users to click a date to schedule a new maintenance request.
- A report showing the Number of Requests per Team or per Equipment Category.
These features distinguish a basic form from a smart "Odoo-like" module.
- Smart Buttons:
- On the Equipment Form, add a button labeled "Maintenance".
- Function: Clicking this button opens a list of all requests related only to that specific machine.
- Badge: The button should display the count of open requests.
- Scrap Logic:
- If a request is moved to the Scrap stage, the system should logically indicate that the equipment is no longer usable (e.g., log a note or set a flag).
We chose a cutting-edge stack to deliver a premium, real-time experience:
- Next.js 15: The latest React framework for server-side rendering, SEO, and blazing fast performance.
- Convex: A real-time backend-as-a-service.
- Advantage: Provides instant, live updates to the Kanban board without refreshing.
- Advantage: Type-safe end-to-end, reducing bugs and development time.
- Tailwind CSS: Utility-first styling for rapid, consistent UI development.
- Shadcn UI: Accessible, high-quality component primitives.
- Glassmorphism Design: A modern, translucent aesthetic (
backdrop-blur, gradients) that makes the app feel "alive" and premium compared to standard corporate tools.