High-performance, specification-first terminal UI for .NET 10.
SharpVision is a terminal UI library for applications that need correct terminal protocol behavior, Unicode-aware layout, deterministic mutable controls, and observable rendering proof. The repository is under active development; the protocol coverage matrix is the authoritative statement of what is implemented and tested.
Calendar controls, selection states, navigation, and responsive layout in the live showcase:
FIGlet text, theme-aware styling, scrolling, and the control catalog:
SharpVision.Terminalhandles transport, terminal protocols, capabilities, Unicode cell geometry, input, buffers, and rendering.SharpVisionsupplies dispatcher-affine mutable controls, layout, focus, routed input, styling, scrolling, menus, popups, and windows.SharpVision.Showcaseis the runnable gallery for shipped controls and interaction states.tests/contains the terminal and UI verification suites.
The project structure contract defines the one-way dependency graph and ownership boundaries.
SharpVision 0.2.0-alpha.1 is a prerelease and may change before the stable
API. Add the retained UI package to a .NET 10 application with:
dotnet add package SharpVision --version 0.2.0-alpha.1SharpVision.Terminal is installed transitively. Reference that lower-level
package directly only when building terminal infrastructure without the UI
control layer. The
first-application walkthrough
contains a complete hosted example.
Requirements: .NET SDK 10.0.203 (or a compatible patch), Node.js 22+, and Make. Restore, build, and verify the repository with:
make restore
make format
make lint
make build
make testRun the interactive gallery with make run. The
continuous-integration contract
maps these commands to the public gate.
To build an application instead of the repository, start with the first-application walkthrough.
The documentation is part of the product contract. Start with the documentation index, then choose the area you are changing:
| Need | Start here |
|---|---|
| First app, layout, events, background work, and custom controls | Walkthroughs |
| Terminal wire behavior and support | Protocol index and coverage matrix |
| Reader-facing feature availability | Feature support |
| Ownership, runtime, rendering, and capabilities | Architecture map |
| Layout, input, threading, lifecycle, themes, and hosting | Concept map |
| Public control APIs and composition | Control catalog |
| Test oracles and quality expectations | Test map |
| Runnable API examples | Showcase, text editor, and Snake |
Read Contributing, Security, Support, and the Code of Conduct before opening an issue or pull request. Those documents explain the docs-first workflow, private vulnerability reports, and the evidence expected for changes.

