50 lines
1.8 KiB
Markdown
50 lines
1.8 KiB
Markdown
|
|
# Technology Stack
|
||
|
|
|
||
|
|
## Runtime Summary
|
||
|
|
|
||
|
|
| Area | Value | Evidence |
|
||
|
|
|---|---|---|
|
||
|
|
| Primary language | C# (`LangVersion` latest) | `Directory.Build.props` |
|
||
|
|
| Runtime | .NET 8, 9, and 10 for source projects | `src/Directory.Build.props` |
|
||
|
|
| Package manager | NuGet with central package management | `Directory.Packages.props` |
|
||
|
|
| Build system | MSBuild solution with NUKE wrappers | `Elsa.sln`, `build/Build.cs`, `build.sh` |
|
||
|
|
|
||
|
|
## Production Frameworks and Dependencies
|
||
|
|
|
||
|
|
| Dependency | Version | Role | Evidence |
|
||
|
|
|---|---:|---|---|
|
||
|
|
| FastEndpoints | target-dependent 7.1.1/7.2.0 | HTTP endpoint framework | `Directory.Packages.props` |
|
||
|
|
| Entity Framework Core | target-dependent 9.0.17/10.0.9 | Durable relational persistence | `Directory.Packages.props` |
|
||
|
|
| Microsoft.Extensions.Logging | target-dependent 9.0.17/10.0.9 | Application logging | `Directory.Packages.props` |
|
||
|
|
|
||
|
|
## Development Toolchain
|
||
|
|
|
||
|
|
| Tool | Purpose | Evidence |
|
||
|
|
|---|---|---|
|
||
|
|
| xUnit 2.9.3 | Test framework | `Directory.Packages.props`, `test/Directory.Build.props` |
|
||
|
|
| NSubstitute 5.3.0 | Test doubles | `Directory.Packages.props` |
|
||
|
|
| coverlet | Coverage with a 10% project threshold | `test/Directory.Build.props` |
|
||
|
|
|
||
|
|
## Key Commands
|
||
|
|
|
||
|
|
```bash
|
||
|
|
dotnet build Elsa.sln
|
||
|
|
dotnet test Elsa.sln
|
||
|
|
dotnet test test/integration/Elsa.ExternalAuthentication.IntegrationTests/Elsa.ExternalAuthentication.IntegrationTests.csproj
|
||
|
|
./build.sh Test
|
||
|
|
```
|
||
|
|
|
||
|
|
## Environment and Config
|
||
|
|
|
||
|
|
- ASP.NET Core applications use `appsettings*.json` and environment-variable overrides.
|
||
|
|
- Production source enables nullable reference types and implicit usings.
|
||
|
|
- External Authentication supports in-memory defaults and optional EF Core providers.
|
||
|
|
|
||
|
|
## Evidence
|
||
|
|
|
||
|
|
- `Directory.Build.props`
|
||
|
|
- `src/Directory.Build.props`
|
||
|
|
- `test/Directory.Build.props`
|
||
|
|
- `Directory.Packages.props`
|
||
|
|
|