nc://aurora

v0.1.0Pinned
ThomSharktools/nodecode-aurora: Builds web pages in the Aurora CSS system: look up real markup offline, and check a page before delivery. - a rewrite of Ntizar/hermes-aurora (MIT), credited to Ntizar27f573a· 9 Nov1 commit
data1 filetest2 filescell.lisp8.7 KBcensus.lisp16.5 KBcheck.lisp16.1 KB

nodecode-aurora

Aurora Design System: page markup looked up offline, and a page checked against the census. A Nodecode rewrite of Ntizar/hermes-aurora by Ntizar.

Aurora is a pure CSS design system: no build step, no JavaScript, every public class namespaced .nz-. This cell carries its catalogue the way the original plugin did -- a snapshot of the design system's own components.json, shipped in data/censo.json -- and gives the model two tools over it: one that answers what a need is called, one that measures a page before it is delivered.

Get it

Tell the agent "add the aurora cell", or run nodecode add nc://aurora.

Set it up

Nothing is required: the census ships with the folder, and there is no key, no service and no network call. The section only says how the tools behave.

{ "aurora": { "limit": 5, "channel": "v10", "require_footer": true } }
Member Default Notes
limit 5 families a lookup answers with when the call names none (1 to 20)
channel v10 the channel or pinned tag a page links (v10, or a release such as v10.10.0)
footer Hecho con <3 por David Antizar the attribution a page must carry, verbatim; the design system writes a heart where <3 stands
require_footer true whether a page without the attribution fails the check

A limit under 1 refuses the start and names the member; set it in /settings and (restart-cells "nodecode-aurora").

Use it

The model does the work in three steps: search the object, write the page from the markup the search returned, then check the page.

aurora_search("tabla que se apila en movil")
aurora_search("kpi", limit: 2, with_markup: false)
aurora_validate(path: "site/panel.html")
aurora_validate(html: "<html lang=\"es\" ...>")

aurora_search answers, one block a family, the family name, the pack its classes live in, the demo page, the classes, what not to use, the terms that matched and the canonical markup from the catalogue. The same lookup from eval, and from the command line:

(aurora:lookup "aviso de error")                    ; the section's limit
(aurora:lookup "chat" :limit 3 :with-markup nil)    ; a call's own parameters
(aurora:census-info)                                ; system, version, channel, counts

/aurora table that stacks on mobile runs the same search.

aurora_validate fails a page for an unknown nz- class, a pack a used class lives in but the page does not link, a gradient, a backdrop-filter, an !important, a hand-written colour in the page's own <style>, an emoji in the UI, more than one <h1>, and a missing attribution footer; it only warns about a missing lang, a missing data-nz-theme, a <body> without class="nz" and a max-width breakpoint. The same check from eval, as values:

(multiple-value-bind (ok failures warnings measured)
    (aurora:check page :footer (aurora::default-footer))
  (list ok failures warnings))

(help :aurora) answers the doctrine the original's four skills carried: the namespace, tokens only, no gradients, BEM, mobile-first breakpoints, the typography floor, the footer, and the order of work. *primer* is that text, so a layer can reword it.

The cell is offline and read-only: data/censo.json is the only file it opens, a page it is handed is the only other thing it reads, and it writes nothing.

Run the cell's tests from the cells repository:

.github/test-cell.sh tools/nodecode-aurora

Add nc://aurora

  1. 1

    Install Nodecode

    Once per machine.

    $ curl -fsSL https://nodecode.ai/install.sh | sh
  2. 2

    Add the cell

    Pinned at 27f573a.

    $ nodecode add nc://aurora

    Or tell the agent add the aurora cell.