Skip to content

Commit cf9ea9f

Browse files
authored
docs: refresh README and add CI workflow
1 parent 15d19aa commit cf9ea9f

File tree

2 files changed

+116
-2
lines changed

2 files changed

+116
-2
lines changed

.github/workflows/ci.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: ci
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
8+
jobs:
9+
build-and-test:
10+
runs-on: ubuntu-latest
11+
12+
steps:
13+
- name: Checkout
14+
uses: actions/checkout@v4
15+
16+
- name: Setup .NET SDK
17+
uses: actions/setup-dotnet@v4
18+
with:
19+
global-json-file: global.json
20+
21+
- name: Restore
22+
run: dotnet restore Code311.sln
23+
24+
- name: Build
25+
run: dotnet build Code311.sln --configuration Release --no-restore
26+
27+
- name: Test
28+
run: dotnet test Code311.sln --configuration Release --no-build --verbosity normal

README.md

Lines changed: 88 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,91 @@
11
# Code311
22

3-
Code311 is a modular, design-system-neutral UI framework ecosystem for ASP.NET Core (.NET 10).
3+
Code311 is a modular, design-system-neutral UI framework ecosystem for ASP.NET Core (.NET 10), with a Tabler-backed implementation and an official hybrid MVC + Razor demo host.
44

5-
This repository currently contains Phase 0 governance scaffolding and Phase 1 abstraction contracts.
5+
## Repository status
6+
7+
This repository now includes:
8+
9+
- **Foundation and governance**: solution layout, SDK pinning, centralized package versions, analyzer/nullability/doc enforcement.
10+
- **Framework-neutral contracts and core orchestration**:
11+
- `Code311.Ui.Abstractions`
12+
- `Code311.Ui.Core`
13+
- **Tabler implementation packages**:
14+
- `Code311.Tabler.Core`
15+
- `Code311.Tabler.Components`
16+
- `Code311.Tabler.Dashboard`
17+
- `Code311.Tabler.Widgets.DataTables`
18+
- `Code311.Tabler.Widgets.Calendar`
19+
- `Code311.Tabler.Widgets.Charts`
20+
- `Code311.Tabler.Mvc`
21+
- `Code311.Tabler.Razor`
22+
- **Infrastructure packages**:
23+
- `Code311.Persistence.EFCore`
24+
- `Code311.Licensing`
25+
- **Hybrid demo/integration portal**:
26+
- `Code311.Host`
27+
28+
## High-level architecture
29+
30+
Code311 is intentionally layered:
31+
32+
1. **Abstractions layer** (`Ui.Abstractions`) defines semantics/contracts with no design-system coupling.
33+
2. **Core layer** (`Ui.Core`) provides neutral orchestration services (theme/feedback/loading).
34+
3. **Design-system layer** (`Tabler.*`) maps abstractions into concrete UI behavior and rendering for MVC/Razor, dashboard, and widgets.
35+
4. **Cross-cutting infrastructure** (`Persistence.EFCore`, `Licensing`) remains independent from `Ui.Core` and Tabler component primitives.
36+
5. **Host layer** (`Code311.Host`) composes the ecosystem and demonstrates real integration flows without pushing host concerns down into framework packages.
37+
38+
## Run the host demo (`Code311.Host`)
39+
40+
> Prerequisites
41+
>
42+
> - .NET SDK 10 (preview)
43+
44+
From repository root:
45+
46+
```bash
47+
dotnet restore Code311.sln
48+
dotnet build Code311.sln
49+
dotnet run --project src/Code311.Host/Code311.Host.csproj
50+
```
51+
52+
Default host behavior:
53+
54+
- Uses **SQLite** demo persistence at `src/Code311.Host/App_Data/code311-host-demo.db`.
55+
- Runs explicit startup licensing validation (demo in-memory license configured in host startup).
56+
- Hosts both MVC and Razor Pages routes.
57+
58+
## Key demo sections/routes
59+
60+
Base URL assumes local launch profile default (`https://localhost:5001` or similar):
61+
62+
- Home: `/`
63+
- Components:
64+
- Forms: `/ComponentsDemo/Forms`
65+
- Navigation: `/ComponentsDemo/Navigation`
66+
- Layout: `/ComponentsDemo/Layout`
67+
- Feedback: `/ComponentsDemo/Feedback`
68+
- Data: `/ComponentsDemo/Data`
69+
- Media: `/ComponentsDemo/Media`
70+
- Dashboard: `/Dashboard`
71+
- Widgets:
72+
- DataTables: `/Widgets/DataTables`
73+
- Calendar: `/Widgets/Calendar`
74+
- Charts: `/Widgets/Charts`
75+
- Preferences / Theme: `/Preferences`
76+
- Licensing Diagnostics (Razor Page): `/Diagnostics/Licensing`
77+
- Architecture / About: `/Architecture/About`
78+
79+
## Test and validation
80+
81+
Run the full test matrix:
82+
83+
```bash
84+
dotnet test Code311.sln
85+
```
86+
87+
## Repository layout
88+
89+
- `src/` — product/framework/host packages
90+
- `tests/` — unit and integration test projects
91+
- `docs/` — ADRs and architecture proposal

0 commit comments

Comments
 (0)