How kingty0/backstage works
Backstage is a Blazor inventory and logistics application for the Chicago International Theatre Puppet Festival. Festival staff use its web interface to manage a product catalog, stock by location, transfers and delivery tracking, and sales; administrators also manage accounts. The runtime is organized around Razor components, an Entity Framework data model backed by SQLite, and supporting identity and backup services. The README documents major workflows, but most page implementations were not sampled, so those links are documented capabilities rather than inspected call paths.
Main entry points: ApplicationDbContext.cs EF data context · App.razor Blazor app shell · SqliteBackupService.cs SQLite backup service · Login.razor Account workflows
Components 24
Web interface
- Blazor app shell
src/Components/App.razor - Dashboard and alerts
src/Components/Pages/Dashboard.razor
Inventory operations
- Product catalog
src/Components/Pages/ProductPages/Index.razor - Location management
src/Components/Pages/Locations.razor - Stock management
src/Components/Pages/Inventory/Stock.razor - Stock transfers
src/Components/Pages/Inventory/Transfers.razor - Sales workflow
src/Components/Pages/Sales/Create.razor
Identity and administration
- Admin management
src/Components/Pages/Admin/UserManagement.razor - Account workflows
src/Components/Account/Pages/Login.razor - Identity redirects
src/Components/Account/IdentityRedirectManager.cs - Email sender
src/Services/BrevoEmailSender.cs
Data and persistence
- Product service
src/Services/ProductService.cs - Product catalog model
src/Data/Product.cs - Inventory model
src/Data/Inventory.cs - Location model
src/Data/Location.cs - Transfer model
src/Data/StockTransferBox.cs - EF data context
src/Data/ApplicationDbContext.cs - SQLite database
src/Data/app.db - Seed data
src/Data/SeedData.cs
Backup services
- Backup queue
src/Services/BackupQueueService.cs - SQLite backup service
src/Services/SqliteBackupService.cs
Other components
- Festival staff
- Administrator
- Azure Blob Storage
Connections 24
- Festival staff → Blazor app shell: uses
README.md - Administrator → Blazor app shell: uses
README.md - Blazor app shell → Dashboard and alerts: renders
README.md - Festival staff → Product catalog: manages
README.md - Festival staff → Location management: manages
README.md - Festival staff → Stock management: tracks
README.md - Festival staff → Stock transfers: coordinates
README.md - Festival staff → Sales workflow: records
README.md - Administrator → Admin management: manages
README.md - Festival staff → Account workflows: authenticates
README.md - Account workflows → Identity redirects: redirects
- Blazor app shell → EF data context: configures
- Blazor app shell → Seed data: initializes
- Blazor app shell → Email sender: registers
- Product service → EF data context: queries
src/Services/ProductService.cs - EF data context → Product catalog model: maps
src/Data/ApplicationDbContext.cs - EF data context → Inventory model: maps
src/Data/ApplicationDbContext.cs - EF data context → Location model: maps
src/Data/ApplicationDbContext.cs - EF data context → Transfer model: maps
src/Data/ApplicationDbContext.cs - EF data context → SQLite database: persists
- Backup queue → SQLite backup service: resolves
src/Services/BackupQueueService.cs - SQLite backup service → SQLite database: snapshots
src/Services/SqliteBackupService.cs - SQLite backup service → Azure Blob Storage: uploads backups
src/Services/SqliteBackupService.cs - SQLite backup service → Azure Blob Storage: restores from
src/Services/SqliteBackupService.cs