How emadkhanqai/aj-boilerplate-fs works
This is a .NET 10 and Angular full-stack boilerplate, with an end-to-end sample Items workflow and a persistent “What’s new” feature. A user enters through the web app, authenticates, and uses feature pages that call the API; backend controllers delegate to application services and persistence. The graph also preserves the documented API-envelope and layered-architecture roles. The README documents cloud selection and other capabilities, but sampled source does not establish their full runtime wiring, so uncertain integration edges are omitted.
Main entry points: app.routes.ts Web app · Program.cs API host · ItemsController.cs Items controller · FeaturesController.cs Features controller
Components 21
Angular web app
- Web app
src/frontend/apps/web/src/app/app.routes.ts - Auth service
src/frontend/libs/auth/src/lib/auth.service.ts - Auth providers
src/frontend/libs/auth/src/lib/providers/provider-factory.ts - Items pages
src/frontend/libs/feature-items/src/lib/item-list-page/item-list-page.ts - Spotlight modal
src/frontend/libs/shared/ui/src/lib/whats-new-modal/whats-new-modal.ts - API client
src/frontend/libs/data-access/api-client/src/lib/items-api.service.ts - Announcements client
src/frontend/libs/data-access/api-client/src/lib/feature-announcements-api.service.ts
API and application
- API host
src/backend/src/AjBoilerplate.Api/Program.cs - Items controller
src/backend/src/AjBoilerplate.Api/Controllers/ItemsController.cs - Features controller
src/backend/src/AjBoilerplate.Api/Controllers/FeaturesController.cs - Response envelope
src/backend/src/AjBoilerplate.Api/Infrastructure/EnvelopeResultFilter.cs - Item service
src/backend/src/AjBoilerplate.Application/Items/ItemService.cs - Announcement service
src/backend/src/AjBoilerplate.Application/Features/FeatureAnnouncementService.cs
Domain and persistence
- Item repository
src/backend/src/AjBoilerplate.Infrastructure/Persistence/ItemRepository.cs - Announcement repository
src/backend/src/AjBoilerplate.Infrastructure/Persistence/FeatureAnnouncementRepository.cs - Domain models
src/backend/src/AjBoilerplate.Domain/Items/Item.cs - EF Core context
src/backend/src/AjBoilerplate.Infrastructure/Persistence/AppDbContext.cs
Identity and integrations
- API identity
src/backend/src/AjBoilerplate.Api/Identity/AuthenticationSetup.cs - SQL database
- Identity provider
Other components
- User
Connections 23
- User → Web app: uses
- Web app → Auth service: checks session
- Auth service → Auth providers: creates provider
- Auth providers → Identity provider: authenticates
- Web app → Items pages: routes to
- Items pages → API client: requests items
- Web app → Spotlight modal: shows spotlight
- Spotlight modal → Announcements client: loads and acknowledges
- API client → API host: sends requests
- Announcements client → API host: sends requests
- API host → Items controller: dispatches requests
- API host → Features controller: dispatches requests
- Items controller → Item service: delegates
- Features controller → Announcement service: delegates
- Item service → Item repository: uses repository
- Announcement service → Announcement repository: uses repository
- Item repository → EF Core context: queries and saves
- Announcement repository → EF Core context: queries and saves
- EF Core context → SQL database: persists data
- API identity → Identity provider: validates identity
- Items controller → Response envelope: formats responses
- Features controller → Response envelope: formats responses
- Item service → Domain models: applies item rules