YUSEN LIMO Warehouse System is a zero-build static web application. Every page is plain HTML, CSS, and vanilla JavaScript. There is no compilation step, no bundler, and no framework runtime to install. Any HTTP file server capable of serving static files can host it.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/raceliciouss/YUSEN-LIMO-WAREHOUSE/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
| Requirement | Details |
|---|---|
| Modern browser | Chrome 80+, Edge 80+, Firefox 75+, or Safari 14+ — LocalStorage and Camera API support required |
| Node.js 16+ | Optional — only needed to run the tests/auth.test.js unit test suite |
| Package manager | Not required — no npm install, no yarn, no build tools needed for runtime |
<script> and <link> tags already present in the HTML files. No local installation of these libraries is needed.
Running Locally
Serve with a static file server
Choose any option that is already available on your machine:
Opening
index.html directly via the file:// protocol works for most UI interactions, but QR camera scanning will not function under file://. Use a proper HTTP server (http://localhost:…) to enable the Camera API.Open the application in your browser
Navigate to http://localhost:8080 (adjust the port to whichever server you started).The login page (
index.html) will load. assets/login.js calls AuthService.isAuthenticated() on page load — if a session is already stored in LocalStorage, the browser redirects automatically to pages/dashboard.html.Log in with the seeded admin account
| Field | Value |
|---|---|
| User ID | admin001 |
| Password | Admin@123 |
AuthService.initializeAuth() on first load. It has the admin role, giving access to all pages including pages/user-management.html. A second seeded employee account (emp001 / Employee@123) is available for testing the employee role.Browser Requirements
LocalStorage availability — The entire persistence layer (warehouseAuthAccounts, warehouseAuthSession, warehouseShipments, warehouseProfile, warehouseProfilePictures, warehouseNotificationState) depends on window.localStorage. If the browser has LocalStorage disabled via settings or is in a private-browsing mode that blocks persistent storage, auth.js will fall back to a no-op fallbackStorage object and no data will survive a page reload.
Secure context for camera scanning — navigator.mediaDevices.getUserMedia() is a secure-context API. Browsers restrict camera access to https:// origins and localhost. Accessing the app over an unencrypted remote URL (e.g., http://192.168.x.x:8080) will cause the QR scan modal to fail silently or display a permission error.
Tested browsers — Chrome, Edge, Firefox, Safari. All four support the LocalStorage and Camera APIs required by the application.
Deployment as a Static Site
No build step is required before deployment. The repository root is the deployable artifact. General approach — Copy or push the entire repository directory to any static hosting service. The entry point isindex.html at the root.
Supported platforms — GitHub Pages, Netlify, Vercel, or any CDN / object-storage bucket configured for static hosting all work without modification.
GitHub Pages example:
- Push the repository to GitHub.
- In the repository settings, navigate to Pages.
- Select the branch (e.g.,
main) and set the root folder to/(root). - Save — GitHub Pages will serve
index.htmlfrom the repository root.
CDN dependency — Bootstrap Icons, Material Symbols, jsQR, xlsx, jsPDF, and jsPDF-AutoTable are all loaded via CDN links embedded in the HTML files. In air-gapped or CDN-restricted environments, these links will fail silently and the corresponding UI features (icons, QR scanning, Excel/PDF export) will be unavailable. For offline deployments, download the libraries and update the
<script> and <link> tags in each HTML page to point to locally served copies.Environment Variables
None. The application has no build-time or runtime environment variable system. All configuration — LocalStorage key names (warehouseAuthAccounts, warehouseAuthSession, etc.), default credentials, and CDN URLs — is defined directly in the HTML and JavaScript source files.
Editor Configuration
A.vscode/settings.json file is included in the repository root with the following setting:
5504. If you prefer a different port, edit this file before starting Live Server, or use one of the alternative server options above.