aria-grid-demo: live examples of @jambotron/aria-grid with Jambotron light/dark and Synthwave themes

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-06 03:10:36 +01:00
co-authored by Claude Opus 5.5
commit 9d2c1e0b4c
32 changed files with 7519 additions and 0 deletions
+30
View File
@@ -0,0 +1,30 @@
# aria-grid-demo
Live examples of [`@jambotron/aria-grid`](https://gitea.jambotron.com/jambotron_gang/-/packages/npm/@jambotron%2Faria-grid) —
an Angular data grid on Angular Aria. Three examples and a theme switch:
1. **Columns, sorting, paging** — cell templates, a column without sorting, filter and the empty state.
2. **Selection and bulk actions** — `JtGridBulkService`: an action without confirmation, with a required reason,
with a dangerous confirmation; "locked" rows fail on purpose to show "done N, failed M".
3. **Row actions and highlight** — icons in the row, the "⋮" menu, dangerous and disabled actions, the open row highlighted.
Themes: **Jambotron light**, **Jambotron dark** (the tokens of jambotron.com) and **Synthwave** (the colors of
reactive-mail-server's web mail). A theme is one attribute — `<html data-theme="…">`; everything is in `src/styles.scss`.
The grid language switch (English / Russian) shows `provideJtGridLabels()`.
## Run
```bash
npm ci # @jambotron scope comes from the Gitea npm registry (.npmrc), no token needed
npx ng serve # http://localhost:4200
```
## Deploy on Jambotron
Upload the repository (ZIP) as a project, pick `docker-compose.yml` in the deploy wizard, give the `web` service a domain,
port `80`. The image builds the app (`node:22-bookworm-slim`) and serves it with nginx (`nginx:1.27`, Debian);
any unknown path falls back to `index.html`.
```bash
docker compose up -d --build
```