@nadicodeai/design-system 12.1.172 → 12.1.174
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/AGENTS.md +37 -6
- package/DESIGN.md +7 -8
- package/README.md +1 -1
- package/dist/tokens/nadicode.dtcg-resolved.json +1 -1
- package/dist/tokens/nadicode.dtcg.json +1 -1
- package/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -1,12 +1,43 @@
|
|
|
1
1
|
# @nadicodeai/design-system
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
components belong to `@nadicodeai/ui`, and a component's own contract is the
|
|
6
|
-
usage page in its source; `examples/` contains rendered specimens.
|
|
3
|
+
React components belong to `@nadicodeai/ui`, and a component's own contract is
|
|
4
|
+
the usage page in its source; `examples/` contains rendered specimens.
|
|
7
5
|
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
## What goes in DESIGN.md
|
|
7
|
+
|
|
8
|
+
`DESIGN.md` is nadicode's visual identity in
|
|
9
|
+
[Google's DESIGN.md format](https://github.com/google-labs-code/design.md/blob/main/docs/spec.md):
|
|
10
|
+
the four token groups in its front matter, and prose saying how those values
|
|
11
|
+
look applied, in the format's sections (Overview, Colors, Typography, Layout,
|
|
12
|
+
Elevation & Depth, Shapes, Components, Do's and Don'ts) and the ones it adds for
|
|
13
|
+
the same purpose (Data Visualization, Motion, Iconography, Brand media
|
|
14
|
+
authority, Registers). Its Components section says how components look: the
|
|
15
|
+
tokens, materials and states their appearance takes.
|
|
16
|
+
|
|
17
|
+
It never says how a component, a composition or a page is built, filled or
|
|
18
|
+
placed, such as what a card's header holds, which composition a page renders or
|
|
19
|
+
where a command goes, even when several components share the rule
|
|
20
|
+
([ADR](../../docs/adr/2026-10-27-design-md-holds-the-visual-identity.md)). Such a
|
|
21
|
+
rule goes to its owner:
|
|
22
|
+
|
|
23
|
+
- What a component or composition does, takes or holds: its types and the usage
|
|
24
|
+
page in its source in `@nadicodeai/ui`.
|
|
25
|
+
- How a Portal page is assembled: its composition, and the block in
|
|
26
|
+
`apps/portal/registry/blocks/` that shows it.
|
|
27
|
+
- What code can detect: a type or a lint rule in `packages/oxlint-plugin/`.
|
|
28
|
+
- What a pull request decided and worth repeating: an exemplar in the
|
|
29
|
+
`product-design` skill, whose rule index links every rule to its owner.
|
|
30
|
+
- A product's pages and scope: that app's docs.
|
|
31
|
+
|
|
32
|
+
Edit `DESIGN.md` only when the look changes: a token, a material, the type
|
|
33
|
+
scale, a colour's meaning, a radius, a motion value. Its sections that still
|
|
34
|
+
hold rules of the second kind move to their owners in
|
|
35
|
+
[#5187](https://github.com/nadicodeai/nadicodeai/issues/5187); edit them only to
|
|
36
|
+
move a rule out.
|
|
37
|
+
|
|
38
|
+
## Working here
|
|
39
|
+
|
|
40
|
+
- Design and CSS changes: `product-design` first, then the owner above.
|
|
10
41
|
- Placement: `../ui/AGENTS.md`. Every reusable component lives in
|
|
11
42
|
`@nadicodeai/ui`, even while one product alone uses it.
|
|
12
43
|
- Terms: `GLOSSARY.md`. Static consumption: `README.md`.
|
package/DESIGN.md
CHANGED
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
version: alpha
|
|
3
3
|
name: nadicode Design System
|
|
4
4
|
description: >-
|
|
5
|
-
nadicode's
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
contract is the usage page in its source in @nadicodeai/ui.
|
|
5
|
+
nadicode's visual identity: the tokens and how they look applied in every
|
|
6
|
+
component, website section and product screen of the website, the Portal,
|
|
7
|
+
the Nadia desktop app and the Alveare desktop app. What a component does,
|
|
8
|
+
takes or holds is the usage page in its source in @nadicodeai/ui.
|
|
10
9
|
|
|
11
10
|
colors:
|
|
12
11
|
action: "#1e3cff"
|
|
@@ -525,7 +524,7 @@ spacing:
|
|
|
525
524
|
|
|
526
525
|
## Overview
|
|
527
526
|
|
|
528
|
-
This file is nadicode's
|
|
527
|
+
This file is nadicode's visual identity: the tokens above are the values, and the sections below say how they look applied. Every component in `@nadicodeai/ui`, every website section, and every screen in the Portal, Nadia and Alveare builds on it. What a component, a composition or a page does, takes or holds is never written here: [`AGENTS.md`](AGENTS.md#what-goes-in-designmd) says what this file holds and where every other design rule goes.
|
|
529
528
|
|
|
530
529
|
nadicode puts AI Agents to work inside small and mid-sized companies. Its sites and products read as a technology company with a real product: the interface is neutral and exact, the product is shown working, and colour and depth give the page its energy. Three ideas carry every screen:
|
|
531
530
|
|
|
@@ -914,7 +913,7 @@ Every component has a usage page, as Geist documents each of its own: what it is
|
|
|
914
913
|
| Words | Which strings the product words, and how. |
|
|
915
914
|
| Access | Its role, its name, its keyboard path and its focus. |
|
|
916
915
|
|
|
917
|
-
The page is written in the component's own source, as the TSDoc of its main export (`@family`, `@when`, `@instead`, `@behaviour`, `@words`, `@access`), so an editor shows it on hover in every product; `@nadicodeai/ui`'s showcase renders every page, family by family, with the component drawn in its states. A component without its usage page, or a page without its specimen, fails the package's checks. A usage page holds its component
|
|
916
|
+
The page is written in the component's own source, as the TSDoc of its main export (`@family`, `@when`, `@instead`, `@behaviour`, `@words`, `@access`), so an editor shows it on hover in every product; `@nadicodeai/ui`'s showcase renders every page, family by family, with the component drawn in its states. A component without its usage page, or a page without its specimen, fails the package's checks. A usage page holds what its component does, takes and holds, applies the look in this file and never restates it.
|
|
918
917
|
|
|
919
918
|
The table below maps all 73 entries in the [Geist component reference](https://vercel.com/geist/introduction) to our shared owners; how each owner is used is on its usage page. **Component** means a public owner exists for the job; it does not promise every Geist prop. **Composition** means existing parts provide the presentation together. An **enhanced capability gap** names specific behavior, not the absence of a matching component name. Use our exported APIs and names, not Geist's prop names: for example, our Button appearance is `variant`, while HTML submission behavior is `type`. A dedicated name in Geist does not require another primitive in our library; prefer existing compositions before adding another registry or dependency.
|
|
920
919
|
|
|
@@ -1255,7 +1254,7 @@ The clear space is one stroke width of the rendered logo on every side. The mini
|
|
|
1255
1254
|
- Do use the dotted field only on a canvas where things are arranged. Don't put it behind lists, dashboards, settings or website sections.
|
|
1256
1255
|
- Do build a page from its composition. Don't assemble a page's header, toolbar, rows or menus by hand.
|
|
1257
1256
|
- Do put navigation in the top bar and the page's actions on its title row. Don't put an action in the top bar or a second sidebar beside the first.
|
|
1258
|
-
- Do
|
|
1257
|
+
- Do change this file when the look changes, and put how a component or a page is built with its owner. Don't restate this file in another document; link to it.
|
|
1259
1258
|
|
|
1260
1259
|
## Token extension
|
|
1261
1260
|
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# nadicode Design System
|
|
2
2
|
|
|
3
|
-
The `@nadicodeai/design-system` package. [`DESIGN.md`](./DESIGN.md) is nadicode's
|
|
3
|
+
The `@nadicodeai/design-system` package. [`DESIGN.md`](./DESIGN.md) is nadicode's visual identity: every token and how it looks applied. [What goes in it](AGENTS.md#what-goes-in-designmd) says where every other design rule goes. This README says how to consume the package and how the build turns `DESIGN.md` into what it ships.
|
|
4
4
|
|
|
5
5
|
This README is a package map and the setup guide for static or non-React consumers. React consumers use the UI package's stylesheet and follow [`packages/ui/README.md`](../ui/README.md); they do not compose design-system stylesheets themselves.
|
|
6
6
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://www.designtokens.org/schemas/2025.10/format.json",
|
|
3
|
-
"$description": "nadicode's
|
|
3
|
+
"$description": "nadicode's visual identity: the tokens and how they look applied in every component, website section and product screen of the website, the Portal, the Nadia desktop app and the Alveare desktop app. What a component does, takes or holds is the usage page in its source in @nadicodeai/ui.",
|
|
4
4
|
"nadicode": {
|
|
5
5
|
"core": {
|
|
6
6
|
"color": {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://www.designtokens.org/schemas/2025.10/format.json",
|
|
3
|
-
"$description": "nadicode's
|
|
3
|
+
"$description": "nadicode's visual identity: the tokens and how they look applied in every component, website section and product screen of the website, the Portal, the Nadia desktop app and the Alveare desktop app. What a component does, takes or holds is the usage page in its source in @nadicodeai/ui.",
|
|
4
4
|
"nadicode": {
|
|
5
5
|
"core": {
|
|
6
6
|
"color": {
|