Structured inventory
Create companies, storage locations, shelves, folders, and equipment records. Adjust equipment quantities and navigate a company’s storage hierarchy.
Graduation project / Jazan University / 2024–2025
A web-based system for organizing physical equipment across companies, storage locations, and shelves—with inventory history, statistics, and a 3D layout simulator.
01 / Overview
Equipment tracked through spreadsheets or paper records can be difficult to locate and keep up to date. The project explored how a shared web interface could make inventory structure, quantities, and storage locations easier to understand.
We developed a graduation prototype that groups equipment under companies, storage locations, and shelves. Users can maintain quantities, review activity, explore charts, and experiment with physical storage layouts in a separate 3D simulator.
This application organizes physical equipment and inventory. Its storage locations and shelves represent physical spaces.
02 / Inside the application
Explore the screens from the submitted project. Select a view or expand it for a closer look.
A company-level overview of equipment types, item quantities, and recorded activity. Figures shown are project demonstration data.
Original application screenshots extracted from the graduation report and presentation.
03 / My contribution
The official team consisted of four students. Salman and I were the two primary contributors, working across most areas of the project.
My contribution spanned application development, UI and interface design, feature implementation, Supabase integration, testing, troubleshooting, documentation, the final presentation, and general development decisions.
04 / Implementation
The application brings inventory, account access, activity history and storage planning into a single graduation prototype.
Create companies, storage locations, shelves, folders, and equipment records. Adjust equipment quantities and navigate a company’s storage hierarchy.
Supabase email/password registration and login, session handling, and authenticated application routes. The archive includes policies intended to restrict records by ownership.
A history page with text search, action and date filters, and CSV export. The application and migrations include recording of equipment creation and quantity changes.
Company selection, equipment-type charts, quantity totals, and recent activity. The statistics page includes a Supabase change subscription to request refreshed data.
Define a storage space, add dimensioned boxes, drag them within the floor boundaries, and inspect volume totals using Three.js.
Export the simulator’s volume totals and timestamp to PDF with jsPDF. This is a numerical summary; saved 3D scenes are outside the prototype’s scope.
A browser application connected directly to Supabase.
Inventory · company view
History · statistics
Authentication · data
Ownership policies · change events
Separate browser-side simulatorThree.js scene → manual box placement → jsPDF volume summary
The simulator is not connected to persisted inventory records.
Technology used in the project
The frontend uses Supabase for authentication and data access. The 3D simulator runs separately in the browser. The supplied deployment configuration targets Netlify.
Company records connect to storage locations, shelves, and equipment. Folders belong to storage locations; equipment history records activity. Profiles link application users to their company records.
Authentication and ownership policies support account-based access. Advanced multi-role permissions remained outside the completed scope.
05 / Challenges & reflection
Authentication, user profiles, and company records needed to work together. Testing these relationships helped us understand integration across the interface and its data.
Equipment, shelves, and activity history depend on one another. Keeping these relationships consistent during quantity changes and record deletion required testing and troubleshooting.
Admin, staff, and viewer roles proved more difficult than planned. The report and presentation explicitly identify role-based permissions as incomplete; authentication and ownership policies are a narrower part of the implementation.
The prototype established the core workflow, with further scope for access control and storage-planning features.
Presented from the submitted application, report and presentation; this is an academic prototype.
Outcome
The submitted project includes a React application, Supabase migrations, a final report, presentation, and screenshots of the working prototype. It demonstrates an end-to-end inventory workflow alongside a separate 3D storage-planning interface.
What I learned
The work connected interface design with structured data, authentication, and integration. It also made the difference between a feature appearing in an interface and working reliably across related records much more concrete.
Let’s connect
For opportunities in IT support, networking, systems, and infrastructure, get in touch.
Download ResumePDFView Resume