A Progressive Web App (PWA) for setting and keeping track of appointments
Use a Software Engineering approach to determine the requirements and constraints of this project.
Create a Progressive Web App (PWA) that is fully functional and production ready.
* Users/Roles
* Basic (Free) User
* Subscription required
* Ability to create and access up to five calendars, with unlimited years and appointments
* Pro (Paid) User
* Paid subscription required -- Monthly or Annual
* Ability to create an unlimited number of calendars, with unlimited years and appointments
* General Requirements
* Authentication
* Secure connection
* Login/out
* User 2FA authentication w/biometrics and/or code
* User Actions
* Edit, reschedule (update), and delete appointments
* Set reminders and notifications (email, push, SMS)
* Organize appointment types by color
* Share appointments
* Usage
* View on:
* Desktop
* Laptop
* Tablet
* Mobile Phone
* General Constraints
* No HTTP
* Non-subscribers cannot view or access any calendar created by registered users
* No unverifiable email addresses
* No sharing of subscription with other users (one acccount, one subscriber)
* Design and build as a Progressive Web App (PWA)
* Use PHP, HTML, CSS, and JavaScript for codebase
* RDBMS - MariaDB
* Hosting - Bluehost, with cPanel (for now)
* Utilize packages, modules, and libraries for faster development