5.2
Paquetes
Propuesto¿Cómo reciben los sitios los tokens y los componentes?
Ya decidido
- Los paquetes son públicos.
Especificación
- Dos paquetes. @akribis/tokens, construido en cada build desde los archivos publicados: los CSS (base, type, shape, uno por marca, all) con las fuentes apuntando a Brand, tokens.json, units.json, contrast.json, anatomy.json y standards.json. Sin dependencias, sin JavaScript.
- La versión es la fecha del build como versión de calendario (2026.10.6), la misma que llevan los datos y el registro de cambios (5.4). Un sitio fija la versión que usa y la sube cuando el registro de cambios le diga qué cambió.
- Publicado en npm cuando AKRIBIS decida la licencia del paquete (los logotipos, colores y textos son de AKRIBIS; las fuentes, OFL); hasta entonces el tarball se instala desde Brand (/packages/).
- Un sitio enlaza el CSS del paquete en el orden del contrato (base, type, shape, su marca) y no copia nada.
- @akribis/site (ADR-0031) es la capa compartida de todo sitio: la integración de Astro, los patrones como componentes, la plantilla de página, el Worker, el verificador y el starter con el que empieza un sitio nuevo, con los datos de la marca y el CSS de tokens adentro. Un sitio instala este paquete y nada más de Brand; los logotipos y las fuentes se cargan desde brand.akribis.group. Misma versión que el de tokens, construido en el mismo build.
Para volver a razonar
- La licencia del paquete y la organización de npm que lo publica.
- Publicación automática desde el build cuando haya integración continua.
Evidencia para auditar
- brand/src/package.ts · public/packages/index.json
- Audit (2026-10-05): no site imports a shared package; each keeps its own tokens (37 to 138 custom properties) and fonts
- AKRIBIS-Group/design@main · packages/ (an earlier attempt, never consumed)
Entrega
- Los tarballs @akribis/tokens y @akribis/site en /packages/
- construidos en cada build
- y su índice.
Depende de
Lo necesitan
Decisión
Figuras
@akribis/tokens@2026.10.7 todavía no publicado en npm
Los tokens como CSS y JSON DTCG, el registro, las cadenas, la anatomía y los estándares: para todo lo que no es un sitio Astro (ADR-0029).
npm install @akribis/tokens@2026.10.7
# o directo desde Brand
npm install https://brand.akribis.group/packages/akribis-tokens-2026.10.7.tgzakribis-tokens-2026.10.7.tgz · 45 KB · 27 archivos
- LICENSE.md
- README.md
- anatomy.json
- contrast.json
- css/akiot.css
- css/akleia.css
- css/akribis-group.css
- css/akribis-one.css
- css/akribis.css
- css/akrimet.css
- css/akuralab.css
- css/akutemp.css
- css/akzotec.css
- css/all.css
- css/base.css
- css/shape.css
- css/singular4.css
- css/solfarma.css
- css/type.css
- imagery.json
- package.json
- standards.json
- strings.json
- tokens.json
- units.json
- units.schema.json
- voice.json
@akribis/site@2026.10.7 todavía no publicado en npm
La capa compartida de todo sitio: la integración de Astro que configura el sitio desde los datos de la marca, los patrones como componentes, la plantilla de página, el Worker, el verificador que corre tras cada build y el starter con el que empieza un sitio nuevo (ADR-0031).
npm install @akribis/site@2026.10.7
# o directo desde Brand
npm install https://brand.akribis.group/packages/akribis-site-2026.10.7.tgzakribis-site-2026.10.7.tgz · 180 KB · 136 archivos
- LICENSE.md
- README.md
- data/README.md
- data/anatomy.json
- data/css/akiot.css
- data/css/akleia.css
- data/css/akribis-group.css
- data/css/akribis-one.css
- data/css/akribis.css
- data/css/akrimet.css
- data/css/akuralab.css
- data/css/akutemp.css
- data/css/akzotec.css
- data/css/all.css
- data/css/base.css
- data/css/shape.css
- data/css/singular4.css
- data/css/solfarma.css
- data/css/type.css
- data/fonts.json
- data/icons.json
- data/manifest.json
- data/standards.json
- data/strings.json
- data/units.json
- package.json
- src/check-live.js
- src/check-live.ts
- src/check-site.js
- src/check-site.ts
- src/cms/body.ts
- src/cms/catalog.ts
- src/cms/client.ts
- src/cms/dates.ts
- src/cms/embeds.ts
- src/cms/language.ts
- src/cms/menu.ts
- src/cms/navmodel.ts
- src/cms/normalise.ts
- src/cms/pages.ts
- src/cms/resources.ts
- src/cms/router.ts
- src/cms/sitemap.ts
- src/cms/tree.ts
- src/cms/types.ts
- src/components/Attribution.astro
- src/components/Button.astro
- src/components/CardGrid.astro
- src/components/Configurator.astro
- src/components/Consent.astro
- src/components/ContactForm.astro
- src/components/Endorsement.astro
- src/components/FacetBar.astro
- src/components/GroupBar.astro
- src/components/GroupFooter.astro
- src/components/Icon.astro
- src/components/LanguageSwitch.astro
- src/components/LegalLine.astro
- src/components/MegaNav.astro
- src/components/NotFound.astro
- src/components/OneModule.astro
- src/components/PageHead.astro
- src/components/QuoteAdd.astro
- src/components/QuoteScript.astro
- src/components/Rail.astro
- src/components/SectionHeader.astro
- src/components/SiteFooter.astro
- src/components/SiteHeader.astro
- src/components/SkipLink.astro
- src/components/ThemeScript.astro
- src/components/ThemeToggle.astro
- src/components/UnitDirectory.astro
- src/components/UtilityBar.astro
- src/components/WhatsAppLink.astro
- src/components/cards/Card.astro
- src/components/cards/ProductCard.astro
- src/components/cards/PublicationCard.astro
- src/components/cards/SegmentCard.astro
- src/components/cards/TopicCard.astro
- src/components/cms/CmsBody.astro
- src/components/cms/Pagination.astro
- src/components/cms/ProductGrid.astro
- src/components/cms/RegistrationForm.astro
- src/components/quote.ts
- src/configurator/engine.ts
- src/data.ts
- src/facets.ts
- src/index.ts
- src/layouts/CmsShell.astro
- src/layouts/Shell.astro
- src/middleware.ts
- src/nav.ts
- src/pages/404.astro
- src/pages/robots.txt.ts
- src/pages/shared.astro
- src/routes/cms.astro
- src/routes/configurator.ts
- src/routes/contact.ts
- src/routes/language.ts
- src/routes/purge.ts
- src/routes/sitemap.ts
- src/sitemap-xml.ts
- src/templates/Application.astro
- src/templates/Axis.astro
- src/templates/CatalogIndex.astro
- src/templates/Contact.astro
- src/templates/Home.astro
- src/templates/Industry.astro
- src/templates/Magnitude.astro
- src/templates/Product.astro
- src/templates/Publication.astro
- src/templates/RubricIndex.astro
- src/templates/Search.astro
- src/templates/SectionIndex.astro
- src/templates/Segment.astro
- src/templates/Topic.astro
- src/templates/load.ts
- src/templates/regions/Body.astro
- src/templates/regions/Closing.astro
- src/templates/regions/Ecosystem.astro
- src/templates/regions/Products.astro
- src/templates/regions/Publications.astro
- src/templates/regions/Tiles.astro
- src/templates/registry.ts
- src/title.ts
- src/worker.js
- starter/README.md
- starter/_gitignore
- starter/astro.config.mjs
- starter/package.json
- starter/public/_headers
- starter/src/pages/[locale]/[page]/index.astro
- starter/src/pages/[locale]/index.astro
- starter/tsconfig.json
- starter/worker/index.js
- starter/wrangler.jsonc
Publicarlo en npm (y con qué licencia) es una decisión pendiente; hasta entonces un sitio puede instalar el tarball desde esta dirección.