| title | Progressive Web App (PWA) | |
|---|---|---|
| category | Developer > Development Instructions | |
| permalink | /developer/development_instructions/pwa | |
| redirect_from |
|
Submitty includes support for Progressive Web App (PWA) features, enabling an installable, app-like experience across desktop and mobile platforms.
This page provides an overview of how PWA functionality is structured in Submitty and how developers can extend or maintain it.
For general PWA concepts, see: PWA overview (MDN)
A Progressive Web App (PWA) is a web application that can:
- Be installed on a device (desktop or mobile)
- Run in a standalone window
- Provide an app-like user experience
In Submitty, PWA support focuses on:
- Installability via browser prompts
- Standalone display mode
- Cross-platform compatibility
Submitty includes a web app manifest that defines how the application appears when installed.
Typical responsibilities include:
- App name and short name
- Icons for different device sizes
- Start URL
- Display mode (
standalone)
For more details, see: Web App Manifest reference (MDN)
Submitty uses a standalone display mode so that the app opens without standard browser UI (tabs, address bar).
This creates a more focused, app-like experience for users.
For more details, see: Display modes (MDN)
Modern browsers automatically detect when Submitty meets PWA requirements and may prompt users to install it.
Basic requirements include:
- Valid manifest file
- Served over HTTPS (or localhost for development)
For more details, see: PWA installability guide (MDN)
At present, Submitty’s PWA support is intentionally minimal and focuses on:
- Installable interface
- Consistent experience across devices
The following are not fully implemented (or are planned improvements):
- Offline functionality
- Background sync
- Push notifications
When working on PWA-related features in Submitty:
- Ensure compatibility across major browsers (Chrome, Edge, Safari)
- Avoid breaking standard browser usage (Submitty must still function normally without installation)
- Keep performance and responsiveness in mind
- Test both installed and non-installed experiences
Future improvements to PWA support may include:
- Offline access to selected pages using service workers
- Push notifications for deadlines and announcements
- Improved caching strategies for faster load times
For background concepts, see: Offline and caching (MDN)
To test PWA behavior:
- Run Submitty in a secure environment (HTTPS or localhost).
- Open the application in a supported browser.
- Check for install prompts or manually install the app.
- Verify:
- App launches in standalone mode
- Icons and branding appear correctly
- Navigation works as expected