- #1 Rule for the project is that it has to be simple enough for a retired Elementary School Teacher to use.
- Giant readable admin dashboard buttons with icons
- High Performance Blazor Server
- All the rendering is performed on the server.
- Caching - A entities are automatically cached. The cache is cleared for that entity type when an entity is created or updated.
- Use CDN for Bootstrap
- Use versioning for CSS and JavaScript
- Mobile first responsive design
- Minimum Viable Product Deliverables
- Story cards will be as small as possible
- Story cards will be a vertical slice
- feature branch -> develop -> main
- Pull requests are validated with GitHub actions by running Unit Tests and reviewing code quality.
- When a PR is merged into the develop branch a GitHub action is run and it is deployed to the development environment.
- Create Feature Branches with the title of the story in camel case like feature/editHomePage
- Seed default data for story cards
- Create Unit Tests for business logic using Arrange, Act, Assert pattern
- Run all tests locally with Resharper or NUnit Test Adapter
- Check in your feature branch and create a PR
- Have someone review your PR branch (unless the PR is completely cosmetic, the you can approve your own PR)
- The PR approver can merge or you can merge