Skip to content

theMickster/AdventureWorks

Repository files navigation

AdventureWorks

Adventure Works is a modern enterprise application built with .NET 10, Angular 21, Entity Framework Core, and Tailwind CSS + DaisyUI. The architecture follows Clean Architecture with CQRS patterns, powered by the classic Adventure Works Cycling SQL database from Microsoft.

Tech Stack

Layer Technology
Backend API .NET 10 (Clean Architecture + CQRS + MediatR)
Functions .NET 10 isolated worker Azure Functions (Durable Functions, Service Bus-triggered)
Frontend Angular 21 + Nx 22 monorepo (Signals, zoneless)
Design System Alpine Circuit v2 (Tailwind CSS v4 + DaisyUI v5)
Database SQL Server + Entity Framework Core
Messaging Azure Service Bus (Standard, topics + subscriptions)
Icons Font Awesome Free 7
Testing xUnit, Vitest, Playwright
Tooling VS Code, Visual Studio 2026, Azure DevOps

Getting Started

Prerequisites

Quick Start

# Backend API
cd apps/api-dotnet
dotnet restore && dotnet run

# Frontend (separate terminal)
cd apps/angular-web
npm install && npx nx serve adventureworks-web

Local Development Dashboard (Aspire)

For a single-command launch of all services with a live dashboard — API, Angular, database migrations, and SQL Server health — see tools/aspire/README.md.

Project Structure

AdventureWorks/
├── apps/
│   ├── angular-web/             # Angular 21 SPA (Nx monorepo)
│   ├── api-dotnet/              # .NET 10 REST API (Clean Architecture)
│   └── functions-dotnet/        # .NET 10 isolated Azure Functions (Sales Order Saga orchestrator)
├── database/
│   ├── dbup/                    # DbUp migration runner and SQL scripts
│   └── sql-change-automation/   # SQL Server Database Project (schema migrations)
├── docs/                        # Shared documentation
├── infra/                       # Bicep IaC templates (Azure App Service, SQL, Key Vault)
├── pipelines/                   # Azure DevOps CI/CD pipeline templates
└── tools/
    ├── aspire/                  # .NET Aspire local dev dashboard (one-command stack launch)
    └── console-apps/            # CLI utilities

Database Enhancements

Please visit and read the following ReadMe to understand the changes to the default AdventureWorks database.

License

This project is licensed under the MIT License.

About

Repository for sample code for fun with Adventure Works Cycling. Code is based on Microsoft's AdventureWorks sample project.

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages