Repositories
Hardened is three repositories. They version and ship independently, so an application only carries the parts it uses.
Hardened.Framework
github.com/ipjohnson/Hardened.Framework
The core. Modules and dependency injection, configuration, the execution pipeline, web routing and parameter binding, the template engine, console commands, the test framework, and the source generators behind all of it.
| Path | Contents |
|---|---|
src/Shared | Module entry points, configuration, environment, metrics, and the test framework |
src/Requests | The execution pipeline and its abstractions |
src/Web | Routing, ASP.NET Core integration, the web test client |
src/Templates | The template engine and its helpers |
src/Commands | Console command parsing and dispatch |
src/SourceGenerators | Every generator, including the shared library they build on |
src/IntegrationTests | Working applications driven through the real pipeline. The worked examples in the codebase |
Documented in the Guide.
Hardened.Amz
github.com/ipjohnson/Hardened.Amz
The AWS integrations: Lambda runtimes for functions, API Gateway, DynamoDB Streams and SQS; DynamoDB and SQS clients; CDK constructs; and the test harnesses for all of them.
| Path | Contents |
|---|---|
src/Lambda/Function | Plain function invocation, batch filter base, streaming |
src/Lambda/Web | API Gateway, response streaming, the local harness |
src/Lambda/DynamoDbStream | Stream records, [NewImage], [OldImage] |
src/Lambda/Sqs | SQS batches and partial batch responses |
src/Lambda/Shared | Structured logging, embedded metrics, stage and region types |
src/Clients/DynamoDb | IDynamoDbClientProvider and DynamoDB Local |
src/Hardened.Amz.Cdk | CDK constructs and the deploy command |
src/SourceGenerators | The Lambda function and web generators |
Documented under AWS.
Hardened.Docs
github.com/ipjohnson/Hardened.Docs
This site. Built with VitePress from Markdown in website/, and published to GitHub Pages on every push to main that touches it.
cd website
npm ci
npm run dev # local server with hot reload
npm run build # what CI runs; fails on a dead internal linkEvery page has an "Edit this page on GitHub" link at the bottom.
Related
DependencyModules — github.com/ipjohnson/DependencyModules
Compile-time dependency injection for .NET, and the foundation Hardened's module system is built on. [SingletonService], [ScopedService], [TransientService], conventions, decorators and interception all come from there and all work in a Hardened application unchanged.