Cepha.CLI
1.0.48
dotnet tool install --global Cepha.CLI --version 1.0.48
dotnet new tool-manifest
dotnet tool install --local Cepha.CLI --version 1.0.48
#tool dotnet:?package=Cepha.CLI&version=1.0.48
nuke :add-package Cepha.CLI --version 1.0.48
𧬠Cepha CLI
The command-line toolkit for building, testing, and deploying ASP.NET MVC applications that run entirely in WebAssembly.
What is Cepha?
Cepha is a pioneering SDK (NetWasmMvc.SDK) that runs the full ASP.NET MVC pipeline β controllers, Razor views, routing, model binding, and Identity β entirely inside the browser via WebAssembly.
| Layer | Technology |
|---|---|
| Runtime | .NET 10 WASM running in a dedicated Web Worker |
| Rendering | Razor .cshtml views compiled and executed client-side |
| Main Thread | Zero .NET code β only a thin display surface (main.js) |
| Persistence | SQLite via OPFS (Origin Private File System) |
| Networking | SignalR hubs, CephaKit edge workers |
Cepha CLI (cepha) is the official command-line tool that scaffolds, develops, benchmarks, and deploys Cepha applications.
Installation
dotnet tool install --global Cepha.CLI
Requires .NET 10 SDK or later.
After installation, verify:
cepha --version
Quick Start
# Create a new project
cepha new my-app
# Start the development server
cd my-app
cepha dev
# Open https://localhost:5001 in your browser
The entire application β controllers, views, routing β runs in a Web Worker. The main thread only renders HTML.
Commands
cepha new <name> β Scaffold a new project
Creates a production-ready Cepha MVC application with the full project structure.
cepha new my-app # Standard MVC app
cepha new my-app --identity # With ASP.NET Identity (login, registration, roles)
cepha new my-app --benchmark # With performance benchmark suite
Generated structure:
my-app/
βββ Controllers/
β βββ HomeController.cs
βββ Views/
β βββ Home/
β β βββ Index.cshtml
β β βββ Privacy.cshtml
β βββ Shared/
β βββ _Layout.cshtml
βββ wwwroot/
β βββ css/cepha.css # Material-inspired design system
β βββ main.js # Display surface (main thread)
β βββ cepha-runtime-worker.js
β βββ service-worker.js
βββ Program.cs
βββ my-app.csproj
cepha dev β Start the development server
Builds and launches the WASM application host with live output.
cepha dev
cepha kit β Start the CephaKit backend server
Launches a backend runtime server for hybrid scenarios (client WASM + server API).
cepha kit # Node.js mode (default, port 3001)
cepha kit --port 4000 # Custom port
cepha kit --wrangler # Cloudflare Wrangler mode
CephaKit provides:
- HTTPS development certificates (auto-exported)
- Backend API endpoints alongside the WASM frontend
- Hot-reload compatible architecture
cepha publish β Build and deploy for production
Publishes the application with Brotli pre-compression and multiple deployment targets.
cepha publish # Interactive target selection
cepha publish --folder # Local folder output
cepha publish --cloudflare # Cloudflare Pages deployment
cepha publish --azure # Azure Static Web Apps
cepha publish --kit # Cloudflare Pages + CephaKit Edge Worker
Cloudflare deployment features:
- Automatic Wrangler authentication (OAuth browser flow)
- Brotli pre-compression reporting
- Custom domain connection via Cloudflare API (DNS + SSL)
- CephaKit Edge Worker with SPA routing, CORS, WASM MIME types, and immutable caching
cepha benchmark β Run performance stress tests
Launches an automated benchmark suite that stress-tests the WASM runtime against React, Vue, and Vanilla JS.
cepha benchmark
8 stress tests across 4 frameworks (Cepha, React 18, Vue 3, Vanilla JS):
| Test | What it measures |
|---|---|
| π₯ Animation Storm | 500 spring-physics DOM nodes with mitosis splitting |
| π¬ DOM Flood | Raw frame throughput β thousands of DOM writes/sec |
| π― Click Storm | Moving targets β event latency under sustained fire |
| π Particle Physics | N-body gravity simulation, 5000 particles |
| π WebGL Forge | 100K vertices, GPU saturation test |
| ποΈ Data Siege | Millions of objects β sort, search, transform |
| π Crypto Matryoshka | Nested AES-GCM + SHA-256 deep chain |
| π³οΈ Tunnel Breach | ALL tests simultaneously |
Features:
- π€ Auto-Pilot β Runs all tests sequentially with automatic scoring
- βοΈ Framework Battle β Runs every test across all 4 frameworks, displays comparison table with winner announcement
- π Compare All β Side-by-side score comparison with bar charts
cepha info β Display project information
cepha info
Shows SDK version, Identity status, CephaKit status, controller count, view count, and build state.
cepha help β Show usage documentation
cepha help
Architecture
βββββββββββββββββββββββββββββββββββββββββββββββββββ
β Browser β
β β
β ββββββββββββββββ postMessage βββββββββββββ
β β Main Thread βββββββββββββββββββΊβWeb Worker ββ
β β β β ββ
β β main.js β DOM frames β .NET 10 ββ
β β (display ββββββββββββββββββββ MVC ββ
β β surface) β β Runtime ββ
β β β user events β ββ
β β Renders βββββββββββββββββββΊβControllersββ
β β HTML only β βViews ββ
β β β βRouting ββ
β ββββββββββββββββ βSQLite ββ
β βIdentity ββ
β βββββββββββββ
βββββββββββββββββββββββββββββββββββββββββββββββββββ
Key design principles:
- Worker Sovereignty β The .NET runtime runs exclusively in a Web Worker, never blocking the UI thread.
- Zero JS Framework β The main thread is a thin display surface (~500 lines of vanilla JS). No React, no Vue, no Angular.
- Real MVC β Controllers, model binding, Razor views,
ViewBag, layouts, partial views β the full ASP.NET MVC programming model. - Offline-First β SQLite via OPFS provides persistent storage. Service worker enables full offline operation.
Deployment Targets
| Target | Command | Features |
|---|---|---|
| Local Folder | cepha publish --folder |
Static files ready for any hosting provider |
| Cloudflare Pages | cepha publish --cloudflare |
OAuth login, auto-deploy, custom domains |
| Cloudflare + CephaKit | cepha publish --kit |
Edge Worker with SPA routing, CORS, WASM headers |
| Azure Static Web Apps | cepha publish --azure |
SWA configuration with navigation fallback |
Requirements
- .NET 10 SDK or later
- Node.js 18+ (optional, for CephaKit backend)
- Wrangler CLI (optional, for Cloudflare deployment)
Comparison with Traditional Approaches
| Feature | Cepha | Blazor WASM | React SPA |
|---|---|---|---|
| Runtime location | Web Worker | Main thread | Main thread |
| UI thread blocking | Never | Possible | Possible |
| Programming model | MVC (Controllers + Razor) | Components | Components |
| Server required | No | No | No |
| Offline storage | SQLite (OPFS) | localStorage | localStorage |
| Bundle size (Hello World) | ~9 MB (Brotli) | ~5 MB | ~200 KB |
| Framework on main thread | None (vanilla JS) | Blazor runtime | React runtime |
π‘οΈ Security & Verification
Every release of Cepha CLI is built through a secure GitHub Actions pipeline with multi-layer verification:
| Check | Description |
|---|---|
| π Build Provenance (SLSA) | Cryptographic proof that this package was built from source |
| π SBOM | Software Bill of Materials (SPDX) β full dependency tree |
| π‘οΈ Vulnerability Scan | All dependencies checked against known CVE databases |
| β Smoke Test | Automated install + run verification on every release |
Verify Package Integrity
You can independently verify that any Cepha CLI release was built from this repository:
# 1. Install the tool
dotnet tool install --global Cepha.CLI
# 2. Download the .nupkg for verification (replace VERSION with actual version)
curl -L -o cepha-cli.nupkg https://www.nuget.org/api/v2/package/Cepha.CLI/VERSION
# 3. Verify provenance (requires GitHub CLI: https://cli.github.com)
gh attestation verify cepha-cli.nupkg --owner sbay-dev
Alternatively, find the locally cached package after install:
Windows: %USERPROFILE%\.dotnet\tools\.store\cepha.cli\VERSION\cepha.cli\VERSION\cepha.cli.VERSION.nupkg
Linux: ~/.dotnet/tools/.store/cepha.cli/VERSION/cepha.cli/VERSION/cepha.cli.VERSION.nupkg
View Attestations on GitHub
All attestations and security reports (SBOM, vulnerability scan) are attached to each GitHub Release.
License
MIT Β© sbay-dev
Built with 𧬠NetWasmMvc.SDK β ASP.NET MVC, sovereign in the browser.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
This package has no dependencies.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.48 | 111 | 2/21/2026 |
| 1.0.47 | 83 | 2/21/2026 |
| 1.0.46 | 87 | 2/21/2026 |
| 1.0.44 | 95 | 2/18/2026 |
| 1.0.43 | 84 | 2/18/2026 |
| 1.0.42 | 91 | 2/18/2026 |
| 1.0.41 | 82 | 2/18/2026 |
| 1.0.40 | 84 | 2/18/2026 |
| 1.0.39 | 87 | 2/18/2026 |
| 1.0.38 | 84 | 2/18/2026 |
| 1.0.37 | 86 | 2/18/2026 |
| 1.0.36 | 85 | 2/18/2026 |
| 1.0.35 | 86 | 2/18/2026 |
| 1.0.34 | 86 | 2/18/2026 |
v1.0.37: Official Cepha logo. Professional README. Framework Battle benchmark. Cloudflare Pages + CephaKit Edge Worker deployment.