- CSS 49.6%
- JavaScript 19.6%
- Python 14.9%
- HTML 14.7%
- Just 1.2%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
The title now sits in .code-window-tab, an active tab with an accent edge on top that joins a terminal-black screen (--bg-primary); the rest of the bar is chrome. The three coloured dots are gone. Numbered lines get a gutter rule. Macro, docs, bench specimens and changelog follow. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> |
||
| docs | ||
| src/jax_ui | ||
| .gitignore | ||
| .python-version | ||
| CLAUDE.md | ||
| justfile | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
jax-ui
Terminal-aesthetic CSS/JS design language for Python projects.
Colour schemes
Colour is the only swappable part of the design language. jax.core.css
carries every rule with no colour values; one schemes/<name>.css carries the
palette. Pick one at import:
<link rel="stylesheet" href="/jax/css/jax.core.css">
<link rel="stylesheet" href="/jax/css/schemes/cobalt.css">
jax.css is the drop-in shortcut: the core plus the default scheme (ember).
To bake a different default into it, uv run jax-build --scheme cobalt.
| scheme | accent |
|---|---|
ember |
amber on ash — the default |
moss |
phosphor green on a cooled slate |
cobalt |
cold blue on graphite |
viola |
magenta-violet on a blued charcoal |
teal |
cyan on a sea-dark neutral |
mono |
no accent hue — luminance carries every state |
Each scheme carries both light and dark in one light-dark() declaration,
so scheme and theme are independent: jax.theme picks the mode, jax.scheme
(optional, only if a page ships more than one) picks the palette.
Every scheme is gated by uv run jax-contrast-check at the same AA targets in
both modes. A palette that misses one fails the build.
Adding a scheme
Copy any file in src/jax_ui/static/css/schemes/, change the values, run
uv run jax-contrast-check. The contract — the exact token set a scheme must
define — is documented at the top of tokens.css and enforced by the check.
Build
uv run jax-build # concat + minify -> dist/
uv run jax-build --scheme moss # ... with moss as the default scheme
uv run jax-dev # watch + rebuild
Requirements
The stylesheets use light-dark() and color-mix() — Baseline 2024, so
Chrome 123+, Safari 17.5+, Firefox 120+.