Your sister is running a coffee shop in town, she needs a web application to help her schedule weekly waiter shifts.
Create a web application that can help her.
Waiters can:
Your sister wants to:
She needs 3 waiters for each day. Days for which there are enough waiters should be marked as green, days for which more waiters are needed still and days that are over subscribed should be highlighted accordingly.
Your Razor Pages to create these three pages
| Route Type | Description | Requirements |
|---|---|---|
| GET | Show waiters a screen where they can select the days they can work | Take parameter for the watername in the URL |
| POST | Send the days the waiter can work to the server. | Take parameters in the POST route/param for the waiter name |
| GET | Show your sister which days waiters are available | No parameters needed |
Tip: Use checkbox's in your form. As they allow for multiple selections. There should be a checkbox for each week day.
Keep it simple
Store your data in PostgreSQL using Dapper.NET. If you really want to use another back-end like Entity Framework lets discuss this.
Properly seperate your Razor Pages and your backend code from each other using an interface.
Create canva screen prototypes for the screens you are going to create.
Please add all artifacts such as SQL scripts,code, and screen prototypes to a GitHub repo called waiter_availability_app.
Create a descriptive readme file.
Use Docker to run PostgreSQL on your PC.
Deploy your app to Digital Ocean.
Keep things simple and to the point initially. Get the app working.
Explore later: