ui-style-kit-css 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +40 -2
- package/CONTRIBUTING.md +8 -1
- package/README.md +91 -42
- package/STYLE-MAP.md +9 -5
- package/dist/assets/bauhaus-barlow-OFL.txt +93 -0
- package/dist/assets/bauhaus-barlow-semibold.ttf +0 -0
- package/dist/assets/bauhaus-barlow.ttf +0 -0
- package/dist/assets/bauhaus-condensed-OFL.txt +93 -0
- package/dist/assets/bauhaus-condensed-bold.ttf +0 -0
- package/dist/assets/bauhaus-condensed-extrabold.ttf +0 -0
- package/dist/assets/bento-manrope-OFL.txt +93 -0
- package/dist/assets/bento-manrope.ttf +0 -0
- package/dist/assets/clay-grain.png +0 -0
- package/dist/assets/clay-rounded-OFL.txt +93 -0
- package/dist/assets/clay-rounded.ttf +0 -0
- package/dist/assets/neo-noir-corner-dark.png +0 -0
- package/dist/assets/neo-noir-corner-light.png +0 -0
- package/dist/assets/neo-noir-texture-dark.png +0 -0
- package/dist/assets/neo-noir-texture-light.png +0 -0
- package/dist/assets/organic-display-OFL.txt +93 -0
- package/dist/assets/organic-display.ttf +0 -0
- package/dist/assets/organic-icons-LICENSE.txt +21 -0
- package/dist/assets/organic-sans-OFL.txt +93 -0
- package/dist/assets/organic-sans.ttf +0 -0
- package/dist/ui-style-kit.css +47483 -15117
- package/dist/ui-style-kit.min.css +2 -2
- package/dist/ui-style-kit.visual.css +47344 -15106
- package/dist/ui-style-kit.visual.min.css +2 -2
- package/dist/ui-style-kit.with-bridge.css +47510 -15134
- package/dist/ui-style-kit.with-bridge.min.css +2 -2
- package/dist/visual/art-deco.css +2821 -279
- package/dist/visual/bauhaus.css +2 -4692
- package/dist/visual/bento.css +2 -4708
- package/dist/visual/brutalism.css +812 -224
- package/dist/visual/clay.css +2 -4786
- package/dist/visual/cyberpunk.css +2238 -267
- package/dist/visual/data-terminal.css +1671 -293
- package/dist/visual/editorial-luxe.css +1889 -243
- package/dist/visual/industrial-utility.css +2717 -255
- package/dist/visual/maximalist.css +1768 -447
- package/dist/visual/minimal-saas.css +1076 -382
- package/dist/visual/neo-noir.css +2 -4787
- package/dist/visual/neumorphism.css +1266 -388
- package/dist/visual/organic-modern.css +2 -4764
- package/dist/visual/paper-editorial.css +2551 -276
- package/dist/visual/retro-glass.css +2235 -319
- package/dist/visual/retrofuturism.css +1460 -382
- package/dist/visual/tactile.css +2251 -443
- package/dist/visual/technical-blueprint.css +2207 -285
- package/dist/visual/y2k.css +1481 -294
- package/docs/ART-DECO.md +80 -0
- package/docs/BAUHAUS.md +152 -0
- package/docs/BENTO.md +121 -0
- package/docs/CLAY.md +127 -0
- package/docs/DEMO-SHOWCASE.md +65 -0
- package/docs/ECOSYSTEM.md +4 -4
- package/docs/EDITORIAL-LUX.md +75 -0
- package/docs/INDUSTRIAL-UTILITY.md +131 -0
- package/docs/NATIVE-ELEMENTS.md +23 -17
- package/docs/NEO-NOIR.md +94 -0
- package/docs/ORGANIC-MODERN.md +91 -0
- package/docs/PAPER-EDITORIAL.md +63 -0
- package/docs/PUBLISHING.md +31 -10
- package/docs/RELEASE-2.4.0.md +88 -0
- package/docs/RETRO-GLASS.md +105 -0
- package/docs/STYLE-GUIDE.md +40 -25
- package/docs/TACTILE.md +38 -0
- package/docs/TECHNICAL-BLUEPRINT.md +60 -0
- package/docs/TOKENS.md +80 -3
- package/docs/superpowers/plans/2026-09-04-library-wide-theme-fallback-and-fidelity.md +331 -0
- package/docs/superpowers/specs/2026-09-04-library-wide-theme-fallback-and-fidelity-design.md +113 -0
- package/manifest.json +618 -27
- package/package.json +18 -10
- package/styles/art-deco.css +1397 -12
- package/styles/assets/bauhaus-barlow-OFL.txt +93 -0
- package/styles/assets/bauhaus-barlow-semibold.ttf +0 -0
- package/styles/assets/bauhaus-barlow.ttf +0 -0
- package/styles/assets/bauhaus-condensed-OFL.txt +93 -0
- package/styles/assets/bauhaus-condensed-bold.ttf +0 -0
- package/styles/assets/bauhaus-condensed-extrabold.ttf +0 -0
- package/styles/assets/bento-manrope-OFL.txt +93 -0
- package/styles/assets/bento-manrope.ttf +0 -0
- package/styles/assets/clay-grain.png +0 -0
- package/styles/assets/clay-rounded-OFL.txt +93 -0
- package/styles/assets/clay-rounded.ttf +0 -0
- package/styles/assets/neo-noir-corner-dark.png +0 -0
- package/styles/assets/neo-noir-corner-light.png +0 -0
- package/styles/assets/neo-noir-texture-dark.png +0 -0
- package/styles/assets/neo-noir-texture-light.png +0 -0
- package/styles/assets/organic-display-OFL.txt +93 -0
- package/styles/assets/organic-display.ttf +0 -0
- package/styles/assets/organic-icons-LICENSE.txt +21 -0
- package/styles/assets/organic-sans-OFL.txt +93 -0
- package/styles/assets/organic-sans.ttf +0 -0
- package/styles/bauhaus.css +878 -107
- package/styles/bento.css +1176 -108
- package/styles/brutalism.css +262 -11
- package/styles/clay.css +1303 -68
- package/styles/compat-layout.css +1 -2
- package/styles/components.css +105 -34
- package/styles/content-overflow.css +11 -5
- package/styles/cyberpunk.css +1852 -47
- package/styles/data-terminal.css +1116 -12
- package/styles/editorial-luxe.css +576 -12
- package/styles/industrial-utility.css +1771 -12
- package/styles/interactive-surface-bridge.css +30 -20
- package/styles/interactive-surface-theme.css +21 -11
- package/styles/maximalist.css +1214 -132
- package/styles/minimal-saas.css +459 -88
- package/styles/native-elements.css +347 -171
- package/styles/neo-noir.css +656 -14
- package/styles/neumorphism.css +1018 -146
- package/styles/organic-modern.css +688 -18
- package/styles/paper-editorial.css +1048 -12
- package/styles/retro-glass.css +635 -46
- package/styles/retrofuturism.css +944 -56
- package/styles/tactile.css +1810 -108
- package/styles/technical-blueprint.css +668 -17
- package/styles/theme-colors.css +2 -2
- package/styles/y2k.css +950 -42
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,44 @@ All notable changes to **UI Style Kit CSS** will be documented here.
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [2.4.0] - 2026-09-08
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- Added native light/dark/contrast palettes for every preset when `data-theme` is omitted, while preserving explicit shared-theme precedence and the typed semantic handshake.
|
|
12
|
+
- Added a native-aware demo workbench with None, per-preset/mode edits, shared-theme edits, material-color inventory, scoped CSS export, and active-context reset.
|
|
13
|
+
- Added a unified style-specific gallery, including Industrial Utility instruments and alarm demonstration controls; full source boards remain available through `?view=reference`.
|
|
14
|
+
- Added validated `ui`, `personality`, `theme`, and `mode` demo query parameters and updated README/wiki guidance for native palettes and review links.
|
|
15
|
+
- Added a frozen native-control intent contract for every preset and complete per-preset mappings for choice, select, range, progress, meter, file, color, indicator, and scrollbar tokens.
|
|
16
|
+
- Added Firefox range-progress paint, distinct single/multiple select behavior, indeterminate progress treatment, and a complete native-control demo specimen.
|
|
17
|
+
- Added manifest-driven unit and cross-browser computed-style coverage proving all 20 presets resolve to unique native-control signatures.
|
|
18
|
+
- Added frozen six-axis template signatures plus pairwise identity contracts across typography, density, geometry, material, feedback, data presentation, and the 48-token native-control surface.
|
|
19
|
+
- Added fixed desktop and mobile component and native-control specimens for every preset, with direct pairwise visual-difference thresholds.
|
|
20
|
+
- Added executable six-axis reference traits that assert concrete authored CSS for every preset, plus preset-, viewport-, mode-, and pair-scoped browser cases for exact reruns.
|
|
21
|
+
- Added stable global UI-matrix case identifiers, 36 resumable 100-case blocks, exact-case reruns, and bounded range commands so passed coverage is not repeated during diagnosis.
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- Expanded preset identity beyond color and radius so native controls now inherit each system's typography, geometry, material, border, depth, indicator, range, progress, and loading language.
|
|
26
|
+
- Reworked all 20 preset systems against the 39-image v2.4.0 reference archive and retained design contracts. Each identity now reaches components, native controls, feedback, data views, and interaction states.
|
|
27
|
+
- Preserved theme-owned palette channels, semantic native HTML, v2 selectors and entrypoints, bridge ownership, forced-color behavior, reduced motion, and platform-owned picker/dialog boundaries.
|
|
28
|
+
|
|
29
|
+
### Fixed
|
|
30
|
+
|
|
31
|
+
- Restored the shared background token for standalone native palettes by resolving through each preset's active background.
|
|
32
|
+
- Prevented native `strong` and `small` text paint from replacing trust-seal foregrounds, including Tactile's dark instrument seal.
|
|
33
|
+
- Unified demo toolbar dropdown indicators, enlarged and strengthened Maximalist medallion artwork, centered its range thumb, matched busy indicators to its spinner, and removed the large native-form grid gap.
|
|
34
|
+
- Exposed actual native material variables in the color editor instead of restricting it to generic shared roles.
|
|
35
|
+
- Replaced stale per-style bundle-size estimates with build-measured focused preset examples.
|
|
36
|
+
- Corrected Organic Modern native-light label and control-edge contrast while retaining shared-theme precedence.
|
|
37
|
+
- Completed manifest discovery for existing Bento stage, Bauhaus alert text, Clay helper, and Tactile workspace classes; no existing classes were removed.
|
|
38
|
+
- Applied bounded generated-file write retries to README measurements and demo asset hashes as well as distribution CSS.
|
|
39
|
+
- Replaced broad `overflow-wrap: anywhere` inheritance with targeted `break-word` containment and normal word boundaries, and removed clipping from general surfaces, feature strips, and native tables while retaining deliberate progress, media, and accessibility masks.
|
|
40
|
+
|
|
41
|
+
### Security
|
|
42
|
+
|
|
43
|
+
- Updated the development-only `fast-uri` override to `3.1.6`, addressing the four URI-normalization advisories reported by the release dependency audit without adding runtime dependencies.
|
|
44
|
+
|
|
7
45
|
## [2.3.0] - 2026-08-29
|
|
8
46
|
|
|
9
47
|
### Added
|
|
@@ -22,7 +60,7 @@ All notable changes to **UI Style Kit CSS** will be documented here.
|
|
|
22
60
|
- Gave all 20 presets distinct CTA, card, medallion, strip, scrim, and callout identities while preserving the existing class names and theme color roles.
|
|
23
61
|
- Separated filled service actions from framed callout actions so `button-cut` and `button-outline-heavy` express independent, preset-coherent roles instead of sharing one generic CTA silhouette.
|
|
24
62
|
- Reworked the commercial and utility demo specimens to use active theme tokens, explicit utility composition, and container-aware native typography.
|
|
25
|
-
- Aligned ecosystem verification and documentation with `layout-style-css@3.1.0` and `interactive-surface-css@1.
|
|
63
|
+
- Aligned ecosystem verification and documentation with `layout-style-css@3.1.0` and `interactive-surface-css@1.7.0`, including the current exported manifests and `foundation.css`.
|
|
26
64
|
- Expanded the commercial component documentation with composition, accessibility, and responsive-behavior guidance.
|
|
27
65
|
- Routed every Lightning CSS formatting and minification pass through the shared package Browserslist targets, with stable fallbacks and guarded progressive enhancements.
|
|
28
66
|
|
|
@@ -47,7 +85,7 @@ All notable changes to **UI Style Kit CSS** will be documented here.
|
|
|
47
85
|
### Added
|
|
48
86
|
|
|
49
87
|
- Added the public 12-token shared semantic producer contract and its machine-readable manifest inventory for companion and third-party consumers.
|
|
50
|
-
- Implemented the manifest-backed semantic component API with 29 exact `.ui-*` selectors, context-constrained `data-ui-variant` values, and unchanged-markup runtime switching across
|
|
88
|
+
- Implemented the manifest-backed semantic component API with 29 exact `.ui-*` selectors, context-constrained `data-ui-variant` values, and unchanged-markup runtime switching across every preset supported by that release.
|
|
51
89
|
- Added a persistent semantic component demo whose DOM nodes and classes remain stable through every preset switch.
|
|
52
90
|
- Documented native `<dialog>` as the neutral modal/dialog fallback without inventing `.ui-modal` or `.ui-dialog` selectors.
|
|
53
91
|
|
package/CONTRIBUTING.md
CHANGED
|
@@ -13,11 +13,18 @@ The library is CSS-only for consumers. Build and validation scripts run with Nod
|
|
|
13
13
|
|
|
14
14
|
1. Keep the public `data-ui`, `data-theme`, and `data-mode` API stable unless preparing a documented major version.
|
|
15
15
|
2. Preserve class prefixes and prefixed functional tokens.
|
|
16
|
-
3. Define
|
|
16
|
+
3. Define named color schemes in `styles/theme-colors.css` as shared `--usk-*` roles. Keep each preset's native light/dark/contrast palette in its source file, preserve explicit-theme precedence, and verify both paths.
|
|
17
17
|
4. Include the native HTML coverage and accessibility layer.
|
|
18
18
|
5. Run `npm run check` before publishing.
|
|
19
19
|
6. Update `STYLE-MAP.md`, `docs/TOKENS.md`, `README.md`, wiki pages, and `CHANGELOG.md` for public API changes.
|
|
20
20
|
|
|
21
|
+
Use focused tests during implementation and the complete release gate at the end.
|
|
22
|
+
Rebuild after source CSS edits because both demo entrypoints load generated `dist/`
|
|
23
|
+
assets. The build also refreshes manifests, bundled icons, README size measurements,
|
|
24
|
+
and demo cache hashes. Reusable JavaScript helpers should carry JSDoc-compatible
|
|
25
|
+
comments; do not hand-edit generated output. The tracked `wiki/` pages are local
|
|
26
|
+
wiki sources; updating them alone does not publish the hosted GitHub Wiki.
|
|
27
|
+
|
|
21
28
|
## Versioning
|
|
22
29
|
|
|
23
30
|
- Patch: CSS fixes, docs fixes, small accessibility corrections.
|
package/README.md
CHANGED
|
@@ -7,9 +7,11 @@
|
|
|
7
7
|
|
|
8
8
|
It is separate from, but complementary to, **Interactive Surface CSS** and **Layout Style CSS**. Use **UI Style Kit CSS** for visual identity, color themes, UI presets, layout mood, and native HTML styling. Use **Interactive Surface CSS** for interaction-state animation systems and surface behavior. Use **Layout Style CSS** for responsive layout wrappers, grid systems, macro-structure positioning, and container scaffolding.
|
|
9
9
|
|
|
10
|
-
## Current
|
|
10
|
+
## Current release target
|
|
11
11
|
|
|
12
|
-
`v2.
|
|
12
|
+
`v2.4.0` gives all 20 UI style systems a complete native-control identity across selects, choices, ranges, progress, meters, file/color/date launch controls, indicators, and scrollbars. Existing themes, modes, selectors, default/focused/visual/bridge entrypoints, and the 3,600-case browser matrix remain compatible, and parser-based minification remains exactly pinned.
|
|
13
|
+
|
|
14
|
+
This is the local 2.4.0 release candidate, not a claim of npm publication. It also adds native light/dark/contrast palettes when `data-theme` is omitted, a palette-aware color workbench, and a unified demo with style-specific components. See the [2.4.0 release preparation notes](docs/RELEASE-2.4.0.md) for scope and verification boundaries.
|
|
13
15
|
|
|
14
16
|
[Showcase website](https://foscat.github.io/ui-style-kit-css/)
|
|
15
17
|
|
|
@@ -19,7 +21,7 @@ UI Style Kit CSS owns visual identity: themes, semantic `.ui-*` component paint,
|
|
|
19
21
|
|
|
20
22
|
```mermaid
|
|
21
23
|
flowchart LR
|
|
22
|
-
App["Application markup"] --> Attrs["data-ui + data-
|
|
24
|
+
App["Application markup"] --> Attrs["data-ui + data-mode; optional data-theme"]
|
|
23
25
|
Attrs --> USK["ui-style-kit-css"]
|
|
24
26
|
USK --> Themes["Shared --usk-* theme roles"]
|
|
25
27
|
USK --> Components["Prefixed component classes"]
|
|
@@ -38,11 +40,13 @@ flowchart TB
|
|
|
38
40
|
Rgb --> Modes["Light, dark, and contrast modes"]
|
|
39
41
|
Modes --> Prefixes["Per-style prefixed aliases"]
|
|
40
42
|
Prefixes --> Rules["Component, utility, and native rules"]
|
|
41
|
-
Demo["Demo token workbench"] --> Overrides["
|
|
43
|
+
Demo["Demo token workbench"] --> Overrides["Scoped native-palette or shared-theme overrides"]
|
|
42
44
|
Overrides --> Rgb
|
|
43
45
|
```
|
|
44
46
|
|
|
45
|
-
The demo
|
|
47
|
+
The demo shows computed RGB colors for the active native palette or shared theme, supports live edits, and copies a scoped override block. Native mode includes preset-specific material channels such as paper, ink, and brass; shared-theme mode exposes the 23 semantic RGB roles.
|
|
48
|
+
|
|
49
|
+
The [demo showcase guide](docs/DEMO-SHOWCASE.md) explains the unified component gallery, Industrial Utility instruments, palette editing, and the opt-in `?view=reference` boards. Existing `?personality=maximalist` links work; `?ui=tactile&theme=None&mode=dark` selects a native-palette preview.
|
|
46
50
|
|
|
47
51
|
## Ecosystem compatibility
|
|
48
52
|
|
|
@@ -50,11 +54,11 @@ These libraries stay standalone, but the current aligned set is:
|
|
|
50
54
|
|
|
51
55
|
| Library | Aligned version | Owns |
|
|
52
56
|
|---|---:|---|
|
|
53
|
-
| `ui-style-kit-css@2.
|
|
54
|
-
| `interactive-surface-css@1.
|
|
57
|
+
| `ui-style-kit-css@2.4.0` | current release target | visual identity, color themes, UI paint, native HTML styling, content wrapping, and bridge tokens |
|
|
58
|
+
| `interactive-surface-css@1.7.0` | compatible state release | interaction-state primitives, surface behavior, state layers, and input affordances |
|
|
55
59
|
| `layout-style-css@3.1.0` | compatible structural release | structural wrappers, grids, sections, app shells, and layout recipes |
|
|
56
60
|
|
|
57
|
-
UI Style Kit `2.
|
|
61
|
+
UI Style Kit `2.4.0` is the current release target and is verified with Interactive Surface `1.7.0`. Layout Style `3.1.0` is the compatible structural release. The validated minimum remains `ui-style-kit-css@2.1.0`, `interactive-surface-css@1.5.0`, and `layout-style-css@3.0.0`.
|
|
58
62
|
|
|
59
63
|
Use one, two, or all three depending on the project. UI Style Kit does not require the sibling libraries, and the optional bridge only maps shared `--usk-*` roles into Interactive Surface tokens when consumers import it.
|
|
60
64
|
|
|
@@ -69,6 +73,7 @@ For import order, ownership boundaries, and adoption paths, see the [Ecosystem g
|
|
|
69
73
|
- 20 UI style systems
|
|
70
74
|
- 20 shared color schemes
|
|
71
75
|
- `light`, `dark`, and `contrast` modes
|
|
76
|
+
- Native preset colors when no shared theme is selected
|
|
72
77
|
- Combined CSS bundle and per-style production imports
|
|
73
78
|
- Visual-only full and focused entrypoints for consumer-owned layouts
|
|
74
79
|
- Machine-readable `manifest.json` preset, theme, mode, class, and native-part capabilities
|
|
@@ -162,14 +167,15 @@ When the bridge is attached, add `.interactive-surface` to interactable elements
|
|
|
162
167
|
|
|
163
168
|
| Import | Raw | Gzip | Best for |
|
|
164
169
|
|---|---:|---:|---|
|
|
165
|
-
| `ui-style-kit-css/dist/ui-style-kit.min.css` | ~
|
|
166
|
-
| `ui-style-kit-css/visual.min.css` | ~
|
|
167
|
-
| `ui-style-kit-css/with-bridge.css` | ~
|
|
170
|
+
| `ui-style-kit-css/dist/ui-style-kit.min.css` | ~1978 KB | ~379 KB | Compatible runtime UI-system switchers and demos |
|
|
171
|
+
| `ui-style-kit-css/visual.min.css` | ~1962 KB | ~377 KB | Runtime visual switching with consumer-owned layout |
|
|
172
|
+
| `ui-style-kit-css/with-bridge.css` | ~2309 KB | ~400 KB | Deprecated runtime switcher plus stateful bridge |
|
|
168
173
|
| `ui-style-kit-css/theme-colors.css` | ~50 KB | ~6 KB | Shared color schemes for standalone style imports |
|
|
169
|
-
| `ui-style-kit-css/native-elements.css` | ~
|
|
174
|
+
| `ui-style-kit-css/native-elements.css` | ~31 KB | ~5 KB | Shared native HTML fallback styling |
|
|
170
175
|
| `ui-style-kit-css/content-overflow.css` | ~20 KB | ~3 KB | Shared long-text containment for standalone style imports |
|
|
171
|
-
| `ui-style-kit-css/interactive-surface-theme.css` | ~
|
|
172
|
-
|
|
|
176
|
+
| `ui-style-kit-css/interactive-surface-theme.css` | ~9 KB | ~1 KB | Canonical token-and-paint bridge for Interactive Surface state core |
|
|
177
|
+
| `ui-style-kit-css/visual/minimal-saas.css` | ~205 KB | ~30 KB | Focused Minimal SaaS, including semantic aliases and shared foundations |
|
|
178
|
+
| `ui-style-kit-css/visual/industrial-utility.css` | ~278 KB | ~39 KB | Focused Industrial Utility, including its instrumentation styles |
|
|
173
179
|
|
|
174
180
|
## CDN usage
|
|
175
181
|
|
|
@@ -182,7 +188,7 @@ Use the latest published NPM package:
|
|
|
182
188
|
For production, pin the exact approved release rather than relying on `latest`:
|
|
183
189
|
|
|
184
190
|
```html
|
|
185
|
-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/ui-style-kit-css@2.
|
|
191
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/ui-style-kit-css@2.4.0/dist/ui-style-kit.min.css" />
|
|
186
192
|
```
|
|
187
193
|
|
|
188
194
|
## Basic usage
|
|
@@ -210,6 +216,20 @@ document.body.dataset.mode = "dark";
|
|
|
210
216
|
|
|
211
217
|
This changes the semantic components' visual preset without replacing their DOM nodes or rewriting their `.ui-*` classes.
|
|
212
218
|
|
|
219
|
+
### Native palettes and None
|
|
220
|
+
|
|
221
|
+
Keep `data-ui` and `data-mode`, and omit `data-theme` to display the selected style's native palette:
|
|
222
|
+
|
|
223
|
+
```html
|
|
224
|
+
<body data-ui="tactile" data-mode="light">
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
```js
|
|
228
|
+
document.body.removeAttribute("data-theme");
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
The demo labels this choice **None — style defaults**. Do not assign the literal strings `"None"` or `"null"` to the HTML attribute. Native editor exports use `--<prefix>-*-rgb` variables scoped to the active preset/mode without a theme; named-theme exports use `--usk-*-rgb` and remain reusable across presets. Check contrast again after changing colors.
|
|
232
|
+
|
|
213
233
|
## Semantic component API
|
|
214
234
|
|
|
215
235
|
`manifest.json#semanticComponentApi` is the authoritative specification for the implemented generic component API. Its 29 selectors keep the same class names while `data-ui` changes across all 20 presets. `implementationStatus` records the two retained `.ui-spinner` and `.ui-tooltip` hooks, the 27 generated semantic aliases, and an empty pending set.
|
|
@@ -251,28 +271,48 @@ For example, a fixed Minimal SaaS integration may continue to use `<button class
|
|
|
251
271
|
|
|
252
272
|
## UI systems
|
|
253
273
|
|
|
254
|
-
| UI style | `data-ui` |
|
|
255
|
-
|
|
256
|
-
| Minimal SaaS | `minimal-saas` | `saas` | dashboards, admin tools, SaaS
|
|
257
|
-
| Bento UI | `bento` | `bento` |
|
|
258
|
-
| Maximalist / Playful | `maximalist` | `max` | creators, entertainment, bold client sites |
|
|
259
|
-
| Bauhaus / Swiss Modern | `bauhaus` | `bau` | agencies, editorial layouts, design-forward brands |
|
|
260
|
-
| Skeuomorphic / Tactile | `tactile` | `tactile` |
|
|
261
|
-
| Neumorphism | `neumorphism` | `neo` |
|
|
262
|
-
| Retrofuturism | `retrofuturism` | `retro` |
|
|
263
|
-
| Brutalism | `brutalism` | `brutal` | bold creative
|
|
264
|
-
| Cyberpunk | `cyberpunk` | `cyber` | security, gaming,
|
|
265
|
-
| Y2K | `y2k` | `y2k` |
|
|
266
|
-
| Retro Glass | `retro-glass` | `rg` |
|
|
267
|
-
| Editorial Luxe | `editorial-luxe` | `luxe` | luxury brands, architecture, hospitality, premium editorial sites |
|
|
268
|
-
| Organic Modern | `organic-modern` | `organic` |
|
|
269
|
-
| Industrial Utility | `industrial-utility` | `utility` |
|
|
270
|
-
| Technical Blueprint | `technical-blueprint` | `blueprint` | engineering, architecture, technical documentation, scientific tools |
|
|
271
|
-
| Art Deco | `art-deco` | `deco` | luxury, hospitality, heritage brands,
|
|
272
|
-
| Clay | `clay` | `clay` |
|
|
273
|
-
| Data Terminal | `data-terminal` | `terminal` | operator consoles, telemetry, infrastructure, monitoring
|
|
274
|
-
| Paper Editorial | `paper-editorial` | `paper` |
|
|
275
|
-
| Neo-Noir | `neo-noir` | `noir` | cinematic
|
|
274
|
+
| UI style | `data-ui` | Prefix | Defining visual contract | Best for |
|
|
275
|
+
|---|---:|---:|---|---|
|
|
276
|
+
| Minimal SaaS | `minimal-saas` | `saas` | compact flat modules, cool 1px rules, tight radii, restrained type, negligible elevation | dense dashboards, admin tools, focused SaaS workflows |
|
|
277
|
+
| Bento UI | `bento` | `bento` | Soft Mosaic tiles, Manrope, fine borders, compact rounded controls, restrained elevation | friendly product surfaces, feature mosaics, showcase dashboards |
|
|
278
|
+
| Maximalist / Playful | `maximalist` | `max` | loud poster collage, sticker offsets, hard ink strokes, expressive condensed typography | creators, entertainment, bold client sites |
|
|
279
|
+
| Bauhaus / Swiss Modern | `bauhaus` | `bau` | strict grids, heavy rules, primary geometry, flat construction, condensed uppercase type | agencies, editorial layouts, design-forward brands |
|
|
280
|
+
| Skeuomorphic / Tactile | `tactile` | `tactile` | paper plates, serif headings, keylines, chamfered keycaps, dark troughs, mechanical controls | physical workspace configuration and instrument-like product UI |
|
|
281
|
+
| Neumorphism | `neumorphism` | `neo` | borderless same-surface shells, opposing extrusion shadows, concave fields and pressed states | sculpted dashboards and quiet configuration workflows |
|
|
282
|
+
| Retrofuturism | `retrofuturism` | `retro` | atomic enamel shells, metallic rims, inset instrument bays, oval actions, dial controls | atomic-age dashboards and configuration workspaces |
|
|
283
|
+
| Brutalism | `brutalism` | `brutal` | square full-bleed grids, heavy rules, numbered modules, blunt controls, segmented meters | direct operational and bold creative interfaces |
|
|
284
|
+
| Cyberpunk | `cyberpunk` | `cyber` | chamfered HUD panels, clipped controls, technical condensed type, signal-colored edges | security, gaming, routing, and high-tech command tools |
|
|
285
|
+
| Y2K | `y2k` | `y2k` | dense portal panels, 1px bevels, title bars, system typography, segmented indicators | nostalgic fashion, music, event, and community portals |
|
|
286
|
+
| Retro Glass | `retro-glass` | `rg` | brushed application chrome, glossy navigation, beveled controls, glass panes, dark dock treatment | dense desktop-style media and productivity applications |
|
|
287
|
+
| Editorial Luxe | `editorial-luxe` | `luxe` | Didone hierarchy, double rules, rigid editorial geometry, restrained couture material | luxury brands, architecture, hospitality, premium editorial sites |
|
|
288
|
+
| Organic Modern | `organic-modern` | `organic` | matte limestone/forest surfaces, Cormorant Garamond + DM Sans, pointed actions, material photography, fine ledger rules | architecture, sustainable materials, natural product workspaces |
|
|
289
|
+
| Industrial Utility | `industrial-utility` | `utility` | metal-framed panels, recessed instruments, mechanical actions, safety gauges, technical type | operations, manufacturing, logistics, fleet, and equipment systems |
|
|
290
|
+
| Technical Blueprint | `technical-blueprint` | `blueprint` | drafting grids, technical linework, square measured controls, annotations, calibrated geometry | engineering, architecture, technical documentation, scientific tools |
|
|
291
|
+
| Art Deco | `art-deco` | `deco` | stepped symmetry, metallic double keylines, fanbursts, elegant display type, jewel controls | luxury, hospitality, heritage brands, and distinctive showcases |
|
|
292
|
+
| Clay | `clay` | `clay` | hand-molded imperfect edges, mineral grain, raised lower shadows, carved fields, debossed type, and clay-bead loaders | collaborative tools, education, and approachable product sites |
|
|
293
|
+
| Data Terminal | `data-terminal` | `terminal` | dense 1px command grid, mono typography, bracketed actions, strict semantic signal colors | operator consoles, telemetry, infrastructure, monitoring, developer tools |
|
|
294
|
+
| Paper Editorial | `paper-editorial` | `paper` | physical field-manual sheet, binder and index details, print rules, condensed and monospaced type | news, journals, cultural sites, and story-led publishing |
|
|
295
|
+
| Neo-Noir | `neo-noir` | `noir` | cinematic slants, trapezoid controls, diagonal cuts, subtle grain, semantic amber/teal/red signaling | cinematic portfolios, production tools, and dramatic product sites |
|
|
296
|
+
|
|
297
|
+
Each description is backed by concrete CSS declaration checks and preset-scoped visual cases. This lets a failing preset or pair be rerun directly without repeating unrelated green coverage.
|
|
298
|
+
|
|
299
|
+
The demo uses one shared layout with a **Style-specific components** gallery. Industrial Utility's switchgear, instruments, and alarm workflow are showcased alongside each preset's distinctive components. Original template boards remain available for visual QA at `index.html?view=reference` (also supported by `demo/index.html`). See the [demo showcase guide](docs/DEMO-SHOWCASE.md) for the gallery, native/shared palettes, and reference-fixture workflow.
|
|
300
|
+
|
|
301
|
+
See the [Retro Glass component guide](docs/RETRO-GLASS.md) for the full reference-board API, native palette selection, token customization, and accessible interaction contracts. Preset-specific demo components appear only while their owning style is selected.
|
|
302
|
+
|
|
303
|
+
The [Art Deco component guide](docs/ART-DECO.md) covers the 17-group Metropolitan Moderne specimen, its complete public component inventory, paired reference palettes, theme-token integration, and keyboard interactions. Select Art Deco in the reference view to reveal its complete board.
|
|
304
|
+
|
|
305
|
+
The [Editorial Lux component guide](docs/EDITORIAL-LUX.md) covers the couture reference specimen, its ten component groups, token-based palettes, accessible interactions, and responsive layout. Its existing `editorial-luxe` preset ID and `luxe-*` public API remain compatible.
|
|
306
|
+
|
|
307
|
+
The [Neo Noir component guide](docs/NEO-NOIR.md) covers all 15 Midnight Cut reference groups, portable textures, canonical `noir-*` components, light/dark palettes and keyboard interactions. The complete specimen appears in the reference view when Neo-Noir is selected.
|
|
308
|
+
|
|
309
|
+
The [Organic Modern component guide](docs/ORGANIC-MODERN.md) maps the architecture workspace and Control Lab to public `organic-*` classes. Both reference palettes are fallbacks only; shared themes paint the complete UI. Its complete specimen appears in the reference view when Organic Modern is selected.
|
|
310
|
+
|
|
311
|
+
The [Bento component guide](docs/BENTO.md) maps the retained Soft Mosaic template one-to-one to public `bento-*` classes, including service status, quota, listbox, loading, and dialog components. Reference colors are fallbacks behind shared theme roles. Its complete interactive specimen appears in the reference view when Bento UI is selected.
|
|
312
|
+
|
|
313
|
+
The [Tactile workspace guide](docs/TACTILE.md) documents its optional navigation,
|
|
314
|
+
settings, and instrument-panel composition, native material colors, and theme-safe
|
|
315
|
+
foregrounds. These advanced classes are included in the public manifest.
|
|
276
316
|
|
|
277
317
|
## Color themes
|
|
278
318
|
|
|
@@ -358,9 +398,9 @@ contrast
|
|
|
358
398
|
|
|
359
399
|
## Native HTML coverage
|
|
360
400
|
|
|
361
|
-
`styles/native-elements.css` owns the shared native selectors under `[data-ui][data-
|
|
401
|
+
`styles/native-elements.css` owns the shared native selectors under `[data-ui][data-mode]`; `data-theme` is optional. Each style system maps the complete `--usk-native-*` identity contract, so choices, selects, ranges, progress, meters, file/color/date launch controls, indicators, and scrollbars inherit preset-specific geometry, material, borders, depth, typography, and either the active theme or the preset's accessible fallback palette. Browser/OS popup internals remain platform-owned.
|
|
362
402
|
|
|
363
|
-
`styles/content-overflow.css` owns the shared text containment contract under `[data-ui][data-
|
|
403
|
+
`styles/content-overflow.css` owns the shared text containment contract under `[data-ui][data-mode]`, with or without `data-theme`. Text and compact controls use `overflow-wrap: break-word` with normal word boundaries so long hashes, URLs, and copyable tokens wrap only when necessary. Structural wrappers receive shrink constraints without inheriting a forced wrapping policy.
|
|
364
404
|
|
|
365
405
|
The shared native layer covers common native elements, including:
|
|
366
406
|
|
|
@@ -391,7 +431,7 @@ Every style includes theme-driven spinner utilities:
|
|
|
391
431
|
<button class="saas-button saas-button-primary" aria-busy="true">Saving</button>
|
|
392
432
|
```
|
|
393
433
|
|
|
394
|
-
Spinner track, stroke, and accent colors come from the active `data-theme` and `data-mode`, while geometry, motion cadence, depth, and busy-button indicators follow the active UI preset. The generic `.ui-spinner`, `.loading-spinner`, and `[data-loading-spinner]` hooks receive the same preset identity inside any `[data-ui="..."]` scope.
|
|
434
|
+
Spinner track, stroke, and accent colors come from the native palette or active `data-theme` and `data-mode`, while geometry, motion cadence, depth, and busy-button indicators follow the active UI preset. The generic `.ui-spinner`, `.loading-spinner`, and `[data-loading-spinner]` hooks receive the same preset identity inside any `[data-ui="..."]` scope.
|
|
395
435
|
|
|
396
436
|
## Tooltip surfaces
|
|
397
437
|
|
|
@@ -501,13 +541,22 @@ The checked-in demo, favicon pack, and social preview image stay in the reposito
|
|
|
501
541
|
npm run check
|
|
502
542
|
npm run check:compat
|
|
503
543
|
npm run test:e2e
|
|
544
|
+
npm run test:e2e:full
|
|
504
545
|
npm run test:axe
|
|
505
|
-
npm run test:
|
|
546
|
+
npm run test:axe:full
|
|
547
|
+
npm run test:visual:full
|
|
506
548
|
npm run test:matrix
|
|
549
|
+
npm run test:matrix:block -- --block 33
|
|
550
|
+
npm run test:matrix:case -- --case 3245
|
|
551
|
+
npm run test:matrix:range -- --from 3201 --to 3244
|
|
552
|
+
npm run release:verify
|
|
553
|
+
npm run release:verify:full
|
|
507
554
|
npm run pack:dry-run
|
|
508
555
|
```
|
|
509
556
|
|
|
510
|
-
`npm run check` rebuilds the bundles, runs stylelint, verifies package metadata and the documented class API, validates 4.5:1 text/link/filled-component contrast plus 3:1 light-mode component-edge contrast, and invokes `check:compat` for every generated entrypoint.
|
|
557
|
+
`npm run check` rebuilds the bundles, runs stylelint, verifies package metadata and the documented class API, validates 4.5:1 text/link/filled-component contrast plus 3:1 light-mode component-edge contrast, and invokes `check:compat` for every generated entrypoint. `npm run test:e2e` is the bounded release smoke path: a curated Chromium-only Playwright suite that covers representative accessibility scans, demo switching, semantic runtime contracts, and the regression-prone preset checks. `npm run test:e2e:full` keeps the exhaustive Chromium/Firefox/WebKit suite available for explicit manual review. `npm run test:visual:full` preserves the historical visual-baseline suite for deliberate manual demo review; it is not part of the default PR, tag, or npm publish gate.
|
|
558
|
+
|
|
559
|
+
The full UI matrix is intentionally opt-in. Local matrix checks are divided into 36 stable blocks of 100 cases. `npm run test:matrix` runs the blocks in order and stops after the first failing block; use `-- --from-block N` to start at any untested block without repeating earlier green blocks. Each test title includes a stable global case number. Rerun only each failing case with `npm run test:matrix:case -- --case N`; because the other cases in that block have already completed, continue at the next block after the targeted fixes pass. Use `test:matrix:range` only when a bounded follow-up range is useful. `test:matrix:raw` is reserved for the manual sharded automation workflow.
|
|
511
560
|
|
|
512
561
|
The package browser policy is the last two major Chrome, Edge, and Firefox releases plus Safari and iOS 16 or newer, excluding dead browsers. The build resolves that single `package.json` policy into Lightning CSS targets, while `check:compat` verifies required prefix pairs, stable fallbacks, guarded `color-mix()`, `text-wrap`, and `forced-color-adjust` enhancements, and the absence of obsolete intrinsic CTA sizing declarations.
|
|
513
562
|
|
package/STYLE-MAP.md
CHANGED
|
@@ -11,7 +11,7 @@ Lead with stable semantic classes when an interface can switch visual presets:
|
|
|
11
11
|
</article>
|
|
12
12
|
```
|
|
13
13
|
|
|
14
|
-
Changing only the ancestor `data-ui` value restyles that markup across all
|
|
14
|
+
Changing only the ancestor `data-ui` value restyles that markup across all 20 presets in the generated default, visual, and with-bridge bundles. A generated `visual/<preset>.css` focused entrypoint supplies the same semantic aliases for its selected preset only. Raw `styles/*` and standalone preset exports remain advanced prefixed APIs and do not promise multi-preset semantic switching.
|
|
15
15
|
|
|
16
16
|
## UI systems
|
|
17
17
|
|
|
@@ -40,6 +40,10 @@ Color schemes are defined once in `styles/theme-colors.css`. Native HTML fallbac
|
|
|
40
40
|
| Paper Editorial | `paper-editorial` | `paper` | `styles/paper-editorial.css` |
|
|
41
41
|
| Neo-Noir | `neo-noir` | `noir` | `styles/neo-noir.css` |
|
|
42
42
|
|
|
43
|
+
Each row is also bound to an internal six-axis template signature covering typography, density, geometry, material, feedback, and data presentation. The release contracts compare every preset pair across those visible axes and require substantial differences across the 48-token native-control identity surface. Color remains owned by the active semantic theme and mode rather than by a fixed preset palette.
|
|
44
|
+
|
|
45
|
+
The release registry turns those signatures into executable reference traits. Each trait checks a real selector, property, and required value fragment. Preset-scoped browser cases isolate each viewport, mode, and cross-preset comparison.
|
|
46
|
+
|
|
43
47
|
## Shared color file
|
|
44
48
|
|
|
45
49
|
| Purpose | Import |
|
|
@@ -52,15 +56,15 @@ Color schemes are defined once in `styles/theme-colors.css`. Native HTML fallbac
|
|
|
52
56
|
|---|---|
|
|
53
57
|
| Shared native HTML element fallback selectors | `styles/native-elements.css` |
|
|
54
58
|
|
|
55
|
-
Native selectors stay generic under `[data-ui][data-
|
|
59
|
+
Native selectors stay generic under `[data-ui][data-mode]`; `data-theme` is optional. Every preset maps the complete choice, select, range, progress, meter, file, color, indicator, and scrollbar identity token set while retaining theme-owned color channels. The shared `--ui-color-bg` handshake uses the preset's `--usk-native-bg` mapping in both native and named-theme mode. Vendor selectors remain safely separated.
|
|
56
60
|
|
|
57
61
|
## Shared overflow layer
|
|
58
62
|
|
|
59
63
|
| Purpose | Import |
|
|
60
64
|
|---|---|
|
|
61
|
-
| Shared long-text containment for
|
|
65
|
+
| Shared long-text containment for text and controls | `styles/content-overflow.css` |
|
|
62
66
|
|
|
63
|
-
The overflow layer
|
|
67
|
+
The overflow layer uses `break-word` with normal word boundaries for text and compact controls. Layout wrappers keep only their shrink constraints, avoiding inherited emergency wrapping across entire component trees.
|
|
64
68
|
|
|
65
69
|
## Bridge bundle
|
|
66
70
|
|
|
@@ -101,7 +105,7 @@ The bridge inherits from shared `--usk-*` color roles, then applies `.interactiv
|
|
|
101
105
|
|
|
102
106
|
## Semantic component contract
|
|
103
107
|
|
|
104
|
-
The machine-readable source of truth is `manifest.json#semanticComponentApi`. Its 29 implemented generic selectors map only to source suffixes with
|
|
108
|
+
The machine-readable source of truth is `manifest.json#semanticComponentApi`. Its 29 implemented generic selectors map only to source suffixes with 20-of-20 composed preset coverage. The `implementationStatus` section records `.ui-spinner` and `.ui-tooltip` as retained hooks, the other 27 selectors as generated aliases, and no pending selectors.
|
|
105
109
|
|
|
106
110
|
| Role | Generic selector -> current source suffix |
|
|
107
111
|
|---|---|
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
Copyright 2017 The Barlow Project Authors (https://github.com/jpt/barlow)
|
|
2
|
+
|
|
3
|
+
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
|
4
|
+
This license is copied below, and is also available with a FAQ at:
|
|
5
|
+
http://scripts.sil.org/OFL
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
-----------------------------------------------------------
|
|
9
|
+
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
|
10
|
+
-----------------------------------------------------------
|
|
11
|
+
|
|
12
|
+
PREAMBLE
|
|
13
|
+
The goals of the Open Font License (OFL) are to stimulate worldwide
|
|
14
|
+
development of collaborative font projects, to support the font creation
|
|
15
|
+
efforts of academic and linguistic communities, and to provide a free and
|
|
16
|
+
open framework in which fonts may be shared and improved in partnership
|
|
17
|
+
with others.
|
|
18
|
+
|
|
19
|
+
The OFL allows the licensed fonts to be used, studied, modified and
|
|
20
|
+
redistributed freely as long as they are not sold by themselves. The
|
|
21
|
+
fonts, including any derivative works, can be bundled, embedded,
|
|
22
|
+
redistributed and/or sold with any software provided that any reserved
|
|
23
|
+
names are not used by derivative works. The fonts and derivatives,
|
|
24
|
+
however, cannot be released under any other type of license. The
|
|
25
|
+
requirement for fonts to remain under this license does not apply
|
|
26
|
+
to any document created using the fonts or their derivatives.
|
|
27
|
+
|
|
28
|
+
DEFINITIONS
|
|
29
|
+
"Font Software" refers to the set of files released by the Copyright
|
|
30
|
+
Holder(s) under this license and clearly marked as such. This may
|
|
31
|
+
include source files, build scripts and documentation.
|
|
32
|
+
|
|
33
|
+
"Reserved Font Name" refers to any names specified as such after the
|
|
34
|
+
copyright statement(s).
|
|
35
|
+
|
|
36
|
+
"Original Version" refers to the collection of Font Software components as
|
|
37
|
+
distributed by the Copyright Holder(s).
|
|
38
|
+
|
|
39
|
+
"Modified Version" refers to any derivative made by adding to, deleting,
|
|
40
|
+
or substituting -- in part or in whole -- any of the components of the
|
|
41
|
+
Original Version, by changing formats or by porting the Font Software to a
|
|
42
|
+
new environment.
|
|
43
|
+
|
|
44
|
+
"Author" refers to any designer, engineer, programmer, technical
|
|
45
|
+
writer or other person who contributed to the Font Software.
|
|
46
|
+
|
|
47
|
+
PERMISSION & CONDITIONS
|
|
48
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
49
|
+
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
|
50
|
+
redistribute, and sell modified and unmodified copies of the Font
|
|
51
|
+
Software, subject to the following conditions:
|
|
52
|
+
|
|
53
|
+
1) Neither the Font Software nor any of its individual components,
|
|
54
|
+
in Original or Modified Versions, may be sold by itself.
|
|
55
|
+
|
|
56
|
+
2) Original or Modified Versions of the Font Software may be bundled,
|
|
57
|
+
redistributed and/or sold with any software, provided that each copy
|
|
58
|
+
contains the above copyright notice and this license. These can be
|
|
59
|
+
included either as stand-alone text files, human-readable headers or
|
|
60
|
+
in the appropriate machine-readable metadata fields within text or
|
|
61
|
+
binary files as long as those fields can be easily viewed by the user.
|
|
62
|
+
|
|
63
|
+
3) No Modified Version of the Font Software may use the Reserved Font
|
|
64
|
+
Name(s) unless explicit written permission is granted by the corresponding
|
|
65
|
+
Copyright Holder. This restriction only applies to the primary font name as
|
|
66
|
+
presented to the users.
|
|
67
|
+
|
|
68
|
+
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
|
69
|
+
Software shall not be used to promote, endorse or advertise any
|
|
70
|
+
Modified Version, except to acknowledge the contribution(s) of the
|
|
71
|
+
Copyright Holder(s) and the Author(s) or with their explicit written
|
|
72
|
+
permission.
|
|
73
|
+
|
|
74
|
+
5) The Font Software, modified or unmodified, in part or in whole,
|
|
75
|
+
must be distributed entirely under this license, and must not be
|
|
76
|
+
distributed under any other license. The requirement for fonts to
|
|
77
|
+
remain under this license does not apply to any document created
|
|
78
|
+
using the Font Software.
|
|
79
|
+
|
|
80
|
+
TERMINATION
|
|
81
|
+
This license becomes null and void if any of the above conditions are
|
|
82
|
+
not met.
|
|
83
|
+
|
|
84
|
+
DISCLAIMER
|
|
85
|
+
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
86
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
|
87
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
|
88
|
+
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
|
89
|
+
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
90
|
+
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
|
91
|
+
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
92
|
+
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
|
93
|
+
OTHER DEALINGS IN THE FONT SOFTWARE.
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
Copyright 2017 The Barlow Project Authors (https://github.com/jpt/barlow)
|
|
2
|
+
|
|
3
|
+
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
|
4
|
+
This license is copied below, and is also available with a FAQ at:
|
|
5
|
+
http://scripts.sil.org/OFL
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
-----------------------------------------------------------
|
|
9
|
+
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
|
10
|
+
-----------------------------------------------------------
|
|
11
|
+
|
|
12
|
+
PREAMBLE
|
|
13
|
+
The goals of the Open Font License (OFL) are to stimulate worldwide
|
|
14
|
+
development of collaborative font projects, to support the font creation
|
|
15
|
+
efforts of academic and linguistic communities, and to provide a free and
|
|
16
|
+
open framework in which fonts may be shared and improved in partnership
|
|
17
|
+
with others.
|
|
18
|
+
|
|
19
|
+
The OFL allows the licensed fonts to be used, studied, modified and
|
|
20
|
+
redistributed freely as long as they are not sold by themselves. The
|
|
21
|
+
fonts, including any derivative works, can be bundled, embedded,
|
|
22
|
+
redistributed and/or sold with any software provided that any reserved
|
|
23
|
+
names are not used by derivative works. The fonts and derivatives,
|
|
24
|
+
however, cannot be released under any other type of license. The
|
|
25
|
+
requirement for fonts to remain under this license does not apply
|
|
26
|
+
to any document created using the fonts or their derivatives.
|
|
27
|
+
|
|
28
|
+
DEFINITIONS
|
|
29
|
+
"Font Software" refers to the set of files released by the Copyright
|
|
30
|
+
Holder(s) under this license and clearly marked as such. This may
|
|
31
|
+
include source files, build scripts and documentation.
|
|
32
|
+
|
|
33
|
+
"Reserved Font Name" refers to any names specified as such after the
|
|
34
|
+
copyright statement(s).
|
|
35
|
+
|
|
36
|
+
"Original Version" refers to the collection of Font Software components as
|
|
37
|
+
distributed by the Copyright Holder(s).
|
|
38
|
+
|
|
39
|
+
"Modified Version" refers to any derivative made by adding to, deleting,
|
|
40
|
+
or substituting -- in part or in whole -- any of the components of the
|
|
41
|
+
Original Version, by changing formats or by porting the Font Software to a
|
|
42
|
+
new environment.
|
|
43
|
+
|
|
44
|
+
"Author" refers to any designer, engineer, programmer, technical
|
|
45
|
+
writer or other person who contributed to the Font Software.
|
|
46
|
+
|
|
47
|
+
PERMISSION & CONDITIONS
|
|
48
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
49
|
+
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
|
50
|
+
redistribute, and sell modified and unmodified copies of the Font
|
|
51
|
+
Software, subject to the following conditions:
|
|
52
|
+
|
|
53
|
+
1) Neither the Font Software nor any of its individual components,
|
|
54
|
+
in Original or Modified Versions, may be sold by itself.
|
|
55
|
+
|
|
56
|
+
2) Original or Modified Versions of the Font Software may be bundled,
|
|
57
|
+
redistributed and/or sold with any software, provided that each copy
|
|
58
|
+
contains the above copyright notice and this license. These can be
|
|
59
|
+
included either as stand-alone text files, human-readable headers or
|
|
60
|
+
in the appropriate machine-readable metadata fields within text or
|
|
61
|
+
binary files as long as those fields can be easily viewed by the user.
|
|
62
|
+
|
|
63
|
+
3) No Modified Version of the Font Software may use the Reserved Font
|
|
64
|
+
Name(s) unless explicit written permission is granted by the corresponding
|
|
65
|
+
Copyright Holder. This restriction only applies to the primary font name as
|
|
66
|
+
presented to the users.
|
|
67
|
+
|
|
68
|
+
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
|
69
|
+
Software shall not be used to promote, endorse or advertise any
|
|
70
|
+
Modified Version, except to acknowledge the contribution(s) of the
|
|
71
|
+
Copyright Holder(s) and the Author(s) or with their explicit written
|
|
72
|
+
permission.
|
|
73
|
+
|
|
74
|
+
5) The Font Software, modified or unmodified, in part or in whole,
|
|
75
|
+
must be distributed entirely under this license, and must not be
|
|
76
|
+
distributed under any other license. The requirement for fonts to
|
|
77
|
+
remain under this license does not apply to any document created
|
|
78
|
+
using the Font Software.
|
|
79
|
+
|
|
80
|
+
TERMINATION
|
|
81
|
+
This license becomes null and void if any of the above conditions are
|
|
82
|
+
not met.
|
|
83
|
+
|
|
84
|
+
DISCLAIMER
|
|
85
|
+
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
86
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
|
87
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
|
88
|
+
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
|
89
|
+
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
90
|
+
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
|
91
|
+
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
92
|
+
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
|
93
|
+
OTHER DEALINGS IN THE FONT SOFTWARE.
|
|
Binary file
|
|
Binary file
|