Skip to content

Added the Application Hosting Layer - #24

Merged
lecode-official merged 1 commit into
developmentfrom
add-hosting
Aug 1, 2026
Merged

Added the Application Hosting Layer#24
lecode-official merged 1 commit into
developmentfrom
add-hosting

Conversation

@lecode-official

Copy link
Copy Markdown
Owner

Added CliApplication, CliApplicationBuilder,
CliCommandDispatcherService, CliCommandLineArguments, and ExitCode, giving consumers the ASP.NET Core-style CreateBuilder(args) / Build() / Run() bootstrap the design docs describe. The builder wraps a HostApplicationBuilder and the application wraps the built IHost, both through composition rather than inheritance, since the concrete host types are sealed. The dispatcher is a hosted service that currently reports no command has been wired up yet, because the command model does not exist, and requests shutdown afterward so a CLI process exits instead of running forever like a web server.

Pinned the .NET SDK version in a new global.json (rollForward disabled) and turned on RestorePackagesWithLockFile for clinet-core and sample-app, adding their packages.lock.json files. clinet-core now references Microsoft.Extensions.Hosting.

Documented the new API in a new User Manual article, Building Applications, linked from the User Manual index. Updated the C# style, dependency-management, and file-naming docs, and CLAUDE.md, to match: XML documentation is now required on every member including private ones, #region blocks are always used with a fixed ordering, and global.json is called out as a pinned dependency. Added dotnet.defaultSolution to the shared VSCode settings so the C# extension finds the solution despite it living under source/, and added a few missing words to the CSpell dictionary. Also, added C# formatting to dprint.

This work was done with the help of Claude Code. The design and architecture of the hosting layer was created with the help of Claude Code, and the documentation was largely written by Claude Code.

Closes issue #16.

@lecode-official lecode-official added this to the Milestone v0.3.0 milestone Aug 1, 2026
@lecode-official lecode-official self-assigned this Aug 1, 2026
@lecode-official lecode-official added Type: Documentation The issue or pull request concerns the updating or adding of content to the documentation. Type: Implementation The issue or pull request concerns the implementation of a new feature. labels Aug 1, 2026
@lecode-official lecode-official linked an issue Aug 1, 2026 that may be closed by this pull request
Added `CliApplication`, `CliApplicationBuilder`,
`CliCommandDispatcherService`, `CliCommandLineArguments`, and
`ExitCode`, giving consumers the ASP.NET Core-style
`CreateBuilder(args)` / `Build()` / `Run()` bootstrap the design docs
describe. The builder wraps a `HostApplicationBuilder` and the
application wraps the built `IHost`, both through composition rather
than inheritance, since the concrete host types are `sealed`. The
dispatcher is a hosted service that currently reports no command has
been wired up yet, because the command model does not exist, and
requests shutdown afterward so a CLI process exits instead of
running forever like a web server.

Pinned the .NET SDK version in a new `global.json` (`rollForward`
disabled) and turned on `RestorePackagesWithLockFile` for
`clinet-core` and `sample-app`, adding their `packages.lock.json`
files. `clinet-core` now references `Microsoft.Extensions.Hosting`.

Documented the new API in a new User Manual article, Building
Applications, linked from the User Manual index. Updated the C#
style, dependency-management, and file-naming docs, and `CLAUDE.md`,
to match: XML documentation is now required on every member
including `private` ones, `#region` blocks are always used with a
fixed ordering, and `global.json` is called out as a pinned
dependency. Added `dotnet.defaultSolution` to the shared VSCode
settings so the C# extension finds the solution despite it living
under `source/`, and added a few missing words to the CSpell
dictionary. Also, added C# formatting to dprint.

This work was done with the help of Claude Code. The design and
architecture of the hosting layer was created with the help of Claude
Code, and the documentation was largely written by Claude Code.

Co-Authored-By: Claude <noreply@anthropic.com>
@lecode-official
lecode-official merged commit 1680a3e into development Aug 1, 2026
1 check passed
@lecode-official
lecode-official deleted the add-hosting branch August 1, 2026 15:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Type: Documentation The issue or pull request concerns the updating or adding of content to the documentation. Type: Implementation The issue or pull request concerns the implementation of a new feature.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Hosting for Encapsulating an App's Resources and Lifetime

1 participant