This is a work-in-progress project intended as an online toolset to enhance tabletop role‑playing games. Its initial focus is creating characters for Dungeons & Dragons in the form of an online version of Aurora, which was my original creation years ago.
If you'd like to see this project grow, please consider giving it a star ⭐ — thank you!
There is no public-facing website hosted for this project at this time, and more details will be shared as development progresses.
A screenshot from the experimental Development UI in this project.
This project uses .NET Aspire for local orchestration. You can run it using Visual Studio or the command line.
- .NET 10 SDK
- Node.js 20+
- Docker Desktop (or compatible container runtime)
- Visual Studio (recent version) or Visual Studio Code
- Open
Starlights.slnxin Visual Studio. - Ensure
Starlights.AppHostis set as the startup project. - Press F5 to start debugging.
Once running, the Aspire Dashboard will launch automatically. From there, you can access the frontend application, backend API, and Scalar API documentation.
To run the application using the Aspire CLI (see aspire.dev), execute the following command in the root directory:
aspire runThis will start the AppHost, which orchestrates:
- SQL Server: A container (port
61070) - Migrations: Automatically applies EF Core migrations
- Backend API: The .NET Web API
- Frontend: The React/Vite application
- Dashboard: The Aspire dashboard for logs and metrics
Before using the application, initialize the sample data. In the Aspire Dashboard, locate the backend API resource and run the database initialization/seed action named Initialize Database.
You can run the automated test suite using Visual Studio or the command line.
- Open the Test Explorer window (Test > Test Explorer).
- Click the Run All Tests button (or press Ctrl+R, A).
To run all tests, execute the following command in the root directory:
dotnet testThe project follows a Modular Monolith architecture, organized by business capability:
- Elements Module: Manages game data (classes, abilities, features, rules).
- Characters Module: Handles character creation and management.
- Platform Layer: Provides shared infrastructure (hosting, logging, data, eventing).
Each module is self-contained with its own domain logic, data persistence, and API endpoints.
This project builds on my experience developing Aurora, a character builder for Windows.
This project is being developed in the open under the MIT License.
