|
1 | 1 | # ClawdStrike Academy |
2 | 2 |
|
3 | | -Next.js app (`clawdstrike-academy`): interactive onboarding for the ClawdStrike runtime security system — lesson tracks, guard gallery, policy lab, and in-browser WASM demos. |
| 3 | +**Learn ClawdStrike by doing.** An interactive learning surface for the runtime security stack: guided tracks, a guard gallery, policy exercises, and a real policy engine compiled to **WebAssembly** — running in your browser. |
4 | 4 |
|
5 | | -## Screenshots |
| 5 | +--- |
6 | 6 |
|
7 | | -Assets live in `[images/](./images/)`. Paths are relative to this README (`./images/…`). |
| 7 | +## What you’ll find here |
8 | 8 |
|
9 | | -### Landing |
| 9 | +- **Learning tracks** — ordered lessons from first principles to deeper topics (threat scenarios, policy lab, guard deep-dives). |
| 10 | +- **Guard Gallery** — all built-in guards in one place, with tiered explanations and hands-on pages. |
| 11 | +- **Policy Lab** — edit YAML, compare rulesets, see inheritance — tied to how ClawdStrike actually evaluates policy. |
| 12 | +- **No separate install for readers** — when this app is hosted or you run it locally, the heavy lifting is the same engine the project ships, just behind a friendly UI. |
10 | 13 |
|
11 | | -Hero, primary CTAs, and learning tracks. |
| 14 | +--- |
12 | 15 |
|
13 | | -### Guard Gallery |
| 16 | +## Preview |
14 | 17 |
|
15 | | -Tier sections and guard cards. |
| 18 | +<p align="center"> |
| 19 | + <strong>Landing</strong> — hero, tracks, and calls to action |
| 20 | +</p> |
| 21 | +<p align="center"> |
| 22 | + <img |
| 23 | + src="./images/academy-readme-landing.png" |
| 24 | + alt="ClawdStrike Academy landing: hero and learning tracks" |
| 25 | + width="1100" |
| 26 | + /> |
| 27 | +</p> |
16 | 28 |
|
17 | | -## UI / design (required) |
| 29 | +<p align="center"> |
| 30 | + <strong>Guard Gallery</strong> — browse guards by tier |
| 31 | +</p> |
| 32 | +<p align="center"> |
| 33 | + <img |
| 34 | + src="./images/academy-readme-guard-gallery.png" |
| 35 | + alt="ClawdStrike Academy Guard Gallery overview" |
| 36 | + width="1100" |
| 37 | + /> |
| 38 | +</p> |
18 | 39 |
|
19 | | -**All UI work in `apps/academy` must follow:** |
| 40 | +--- |
20 | 41 |
|
21 | | -`[docs/design/DESIGN.md](docs/design/DESIGN.md)` |
| 42 | +## More about the project |
22 | 43 |
|
23 | | -That document is the design-system reference (colors, typography, shadows, layout, components). Read it before adding or changing pages, components, or global styles. When AI agents implement UI here, point them at that path. |
| 44 | +ClawdStrike is the wider **policy, receipts, and enforcement** system this Academy teaches. Start at the [repository root README](../../README.md) for install, architecture, and community links. |
24 | 45 |
|
25 | | -**Implementation note:** `DESIGN.md` references Waldenburg / Geist; the app uses **Cormorant Garamond** (300/600) for display and **JetBrains Mono** for code until licensed or self-hosted fonts are added. |
| 46 | +--- |
26 | 47 |
|
27 | | -## Development |
| 48 | +## For contributors & tooling |
28 | 49 |
|
29 | | -From the repository root (npm workspaces): |
| 50 | +If you are **developing this app**, running it locally, or you are an **AI agent** changing UI or behavior, use the dedicated guide — it holds setup commands, design rules, and repo-specific notes: |
30 | 51 |
|
31 | | -```bash |
32 | | -npm install |
33 | | -cd apps/academy |
34 | | -npm run dev |
35 | | -``` |
36 | | - |
37 | | -Then open [http://localhost:3000](http://localhost:3000). |
38 | | - |
39 | | -**Tooling:** Node **24** matches root `package.json` `engines` (e.g. `mise install` / `mise exec -- npm run dev`). The `dev` script runs a `prebuild` (ruleset + source extraction) before Next.js. |
40 | | - |
41 | | -**Hydration noise in dev:** Some browser extensions (e.g. Grammarly) inject attributes on `<body>`. The root layout uses `suppressHydrationWarning` on `<body>` so that does not surface as a React hydration error. |
| 52 | +**[→ Development guide (Contributors & agents)](./DEVELOPMENT.md)** |
0 commit comments