Code Structure
Screenshot is showing the high level folder
Detail about each folder:
- Components: all Blazor code
- Controllers: Controller code for Checkout, download content for paid-user
- Data: Entity Framework code
- database: SQLite data file, you don't need it if you are not using SQLite
- DTOs: Data Transfer Object (DTO) code
- Migrations: Entity Framework migration code
- Models: Model class for Entity Framework
- Services: Bussiness logic class for use in Blazor and Controller code. It has important classes for Stripe, Caching, Markdown service, Product management service.
- UserProduct: zip file for paid-user to download after payment. Download controller use this folder to let user download content.
- wwwroot: static files (css, image, javascript), documentation markdown and blog markdown files
- Dockerfile: file for building docker container
- docker-compose.yml: file for running or building docker image