DINNARTEC / DESIGN SYSTEM / V1.5 / JUNE 2026

A system for building
AI-native software, without theatre.

DOC.TYPE
Design system, v1.5, brand, tokens, primitives, playbook.
ARCHITECTURE
Branded house, one master, three tonal sub‑identities (Solutions · Factory · Labs).
QUALITY BAR
Apple-tier craft. Restraint over maximalism. One idea per section.
01THREE SENTENCES

Brand essence

What the system communicates
Essence · Voice · Posture

We are builders. AI-native from day one. We believe the next great software company will look nothing like the last one.

We operate lean and ship working software: Solutions for people, Factory for products, Labs for what comes next, sharing one quiet, confident master brand.

The system speaks builder-direct: evidence over poetry, clear over clever, confident without theatre.

FOUNDED
2026
TEAM
Two founders + AI
TAGLINE
Innovating the future, improving the present.
TONE
Builder. Direct. Honest.
THE MARK · /design-system/LOGO
Five spokes, one node.

Anatomy, construction grid, sub-brands, scale, applications, anti-patterns: the full spec for the canonical Dinnartec mark.

02BUILDER · DIRECT · EVIDENCE OVER POETRY

Voice & tone

The system speaks like a builder writing, confident, specific, never decorative. No literary metaphors borrowed from other crafts. Below: four principles, three headline examples, two body-copy examples, and a banned-phrase table that exists because we get asked, often.

Principles

PRINCIPLE · 01
Builder, not corporate.

We sound like an engineer writing, not a marketer pitching. No metaphors borrowed from other crafts (no essays, no presses, no editors). Long sentences are fine when they earn it; bullet lists only when items are genuinely parallel.

PRINCIPLE · 02
Specific over abstract.

Name the company. Name the number. Name the year. Name the technology. Abstraction is what people use when they have nothing to say.

PRINCIPLE · 03
Builder voice.

“We ship,” not “we innovate.” “We build,” not “we leverage.” The language of someone at a keyboard, not someone in a meeting.

PRINCIPLE · 04
Sentence case, always.

No Title Case Headlines. No ALL-CAPS for emphasis (except mono labels). No exclamation marks. No emoji. The work carries the weight.

Headlines, sentence case, no exceptions

✓ DO
AI-native software. Two founders. Three practices.
✗ DON’T
Empowering Founders Through Innovation

Sentence case + concrete count + concrete structure. Title case + abstract verb is corporate cold.

✓ DO
From 37 spreadsheets to one ledger.
✗ DON’T
AI-Powered Solutions for Modern Business

Specific number, specific outcome. The bad one could be any company.

✓ DO
Your tech team, hired by the project.
✗ DON’T
Cutting-edge Engineering Excellence

Names the relationship and arrangement. The bad one tells you nothing.

Body copy, concrete or silent

✓ DO

We built a single source of truth in 11 weeks and recovered $340K in uninvoiced revenue in the first quarter of operation.

✗ DON’T

Our innovative solution helped the client achieve significant operational efficiencies and unlock new revenue streams.

Real numbers, real timeline. Vague verbs hide that you have nothing to say.

✓ DO

Two founders. AI-native from day one. One internal agent (NAVI) operating behind three branches.

✗ DON’T

A passionate team of seasoned professionals delivering best-in-class solutions globally.

Concrete count, concrete operating model, concrete structure. Buzzword density signals you are hiding.

Banned phrases & substitutes

Don’t writeWrite instead
Leverage synergiesUse what we have. Combine X and Y.
Empower foundersBuild for founders. Help founders ship.
Unlock the power of(just describe what it does)
Cutting-edge(name the specific tech)
Game-changing(name the specific change)
AI-powered(don’t advertise it, show it)
World-class(provide evidence)
Best-in-class(provide evidence)
Innovative solution(say what it actually is)
Seamless experience(describe the actual flow)
03SYNE · ARCHIVO · JETBRAINS MONO

Typography

DISPLAY
Syne

Cadet type foundry, BIPRK. A geometric display with Latin-American warmth in its curves, the ‘a’ and ‘g’ are quietly imperfect. We chose Syne because it is institutional when set at 700, playful at 800, and carries a builder’s attitude.

400500600700800
BODY
Archivo

Omnibus-Type, open source. A grotesque with generous counters that reads calmly at every size. Rigorous without being cold, the system’s voice of reason.

400500600700
MONOSPACE
JetBrains
Mono

The engineers’ typeface, by engineers. Mono carries coordinates, labels, status, code, timestamps, the scaffolding around editorial prose.

400500600
MAJOR THIRD · 1.250 · CLAMPED

Type scale

TokenFontSizeLineTrackingWeightUse
heroSyneclamp(80, 12vw, 200px)0.95-0.045em400 / 700Brand hero, one per page
h1Syneclamp(64, 9vw, 144px)0.95-0.035em700Page opener
h2Syneclamp(40, 5.2vw, 72px)1.05-0.02em400/700 mixedSection title
h3Syne30px1.15-0.02em600Card title
h4Syne22px1.2-0.02em600Sub-card
leadArchivo19px1.70400Standfirst paragraph
bodyArchivo16px1.550400Prose
smallArchivo14px1.50400Captions
microArchivo12px1.30.18em500 / UPPERButtons, labels, nav
metaJetBrains Mono11px1.40.08em400 / UPPERCoordinates, eyebrows, status
04INSTITUTIONAL BLACK · WARM PAPER · FOUR ACCENTS

Color

Dinnartec operates on dark. The ground is not pure black: it’s an ink with 3% warmth so it never reads as a browser default. Each vertical gets a single accent color, never mixed with another vertical’s accent in the same composition.

Core palette. The ground the whole system sits on

Ink#0A0A0B
Page ground. Default surface. AA 19.87 : 1 vs paper.
Ink Raised#121214
Cards, elevated surfaces. Never a full block background.
Ink Deep#050506
Footer, pull-quotes, the absolute deep.
Paper#FAFAF7
Primary text on dark. Also light-mode ground variant.
Paper Muted62% α
Secondary text, sub-heads. AA 9.5:1.
Paper Dim42% α
Meta, coordinates, scaffolding mono.
Edge10% α
Hairline borders, dividers. Never more than 1px.
Paper Ground#F4F2EC
Light-mode ground. Warm bone. Not #fff.

Vertical accents. One per sub-identity

Core
#FAFAF7
DINNARTEC · CORE
Paper on ink.

The master brand uses paper itself as its signal color. No accent at all. This is deliberate. Core is the institutional wrapper; the verticals carry the hue. Contrast 19.87:1 on ink. Always AA-large and AAA-small.

Solutions
#836CDA
SOLUTIONS · INDIGO-VIOLET
Trust depth.

Indigo-violet: the deep cool that signals trust and gravitas without theatre. Solutions is the human-facing vertical (services, hire-team) and its color carries weight without playfulness. Use for active states, accent text on ink, underlines. Never on large paper backgrounds.

Factory
#5B7BE0
FACTORY · COBALT
Structural blue.

Cobalt blue: the color of dependable structure, the engine, the institutional grid. Factory is the product company: SaaS that runs without drama. Use on status dots, data, charts, active nav.

Labs
#8FA3BD
LABS · STEEL
Gunmetal instrument.

Cool steel: the color of laboratory instruments under work-light. Scalpel, IC trace, gunmetal of an instrument case. Pulled below silver luminance so it stays clearly distinct from paper-muted on dark; weighted instrument, not polished ornament. Use on code hot-spots, MCP/Brickend badges, citation marks, diagrams.

Contrast-passing usage

AccentOn Ink (#0A0A0B)On Paper (#FAFAF7)Approved useAvoided use
Core paper19.87 : 1 · AAAN/AAll text on ink. Borders. Icon strokes.Large flood as a brand signal (it's type).
Solutions indigo-violet4.84 : 1 · AA-small3.90 : 1 · AA-large onlyAccent text/rules on ink. Underlines. CTA bg.Body text on paper. Small icons on paper.
Factory cobalt5.05 : 1 · AA-small3.72 : 1 · AA-large onlyStatus dots. Data accents. CTA bg.Body text on paper. Small text on paper.
Labs steel7.53 : 1 · AAA-large · AA-small2.50 : 1 · FAILCode links. Citation marks. Diagram strokes.Anything on paper. Steel fails on bone. Use ink variant.
LIGHT MODE
Warm Paper.

The inversion is not #ffffff. It’s #F4F2EC, a warm bone. Ink goes to #0A0A0B. Accents deepen one step for contrast on bone: indigo-violet #3D2D85, cobalt #2A3FA0, steel #3D4A5C. Dark is the default; light is for reading-heavy Labs papers, PDFs, and print.

0512-COL · 4PX BASE · 1320 CONTAINER

Spatial system

Generous space is non-negotiable. Restraint reads as confidence. Every surface sits on a 4px grid; every container breathes.

GRID

12 columns, 24 → 64px gutter

Mobile collapses to 4 columns. Tablet to 8. Desktop 12. Asymmetric splits (7/5, 5/7, 8/4) are preferred over perfect halves.

CONTAINERS

Three widths, no more

narrow960pxLabs papers, technical specs, legal.
default1320pxMarketing, product marketing.
wide1560pxData, dashboards, galleries.

Gutter is max(24px, 3.2vw), scales with viewport.

Spacing scale, base 4px, geometric where it matters

s-1
4
s-2
8
s-3
12
s-4
16
s-6
24
s-8
32
s-12
48
s-16
64
s-24
96
s-32
128

Breakpoints

TokenMinGridTypical hero
xs04 col, 16px gutterhero @ 80px
sm6406 col, 20px gutterhero @ 96px
md9608 col, 24px gutterhero @ 128px
lg128012 col, 32px gutterhero @ 168px
xl160012 col, 48px gutterhero @ 200px
06MOTION IS NARRATIVE, NOT DECORATION

Motion

Every transition has a reason. If it doesn't tell the user something, where they came from, what's arriving, what's stable, it shouldn't exist.

PRINCIPLE · 01
Narrative, not decoration.

Motion tells a story of cause and effect. If removing it doesn’t change what the user understands, it shouldn’t exist.

PRINCIPLE · 02
Arrive slow, leave fast.

Entrance ease is generous (expo-out, 520ms). Exit ease is curt (expo-in, 200ms). Respect time; don’t waste it on goodbye.

PRINCIPLE · 03
Scroll is a timeline.

We use scroll-linked animation for long-arc storytelling, one idea per section, revealed in sequence. Parallax is banned. Only position, scale, opacity.

Easings, named, not anonymous

STANDARD
cubic-bezier(.22,.61,.36,1)

Default. 80% of all transitions. Calm, professional, unshowy.

ENTRANCE
cubic-bezier(.16,1,.3,1)

Content arriving on page, scroll-reveal. Expo-out.

EXIT
cubic-bezier(.7,0,.84,0)

Content leaving. Expo-in, slow pull, fast release.

PRECISE
cubic-bezier(.4,0,.2,1)

UI state change, hover, focus. Direct, no overshoot.

NARRATIVE
cubic-bezier(.87,0,.13,1)

Scroll-linked arcs. The "cinematic" ease.

DURATIONS
instant , 120ms
fast    , 200ms
base    , 320ms
slow    , 520ms
narrate , 900ms
epic    , 1400ms
REDUCED MOTION
Opacity survives. Transform doesn’t.

When prefers-reduced-motion: reduceis set, we preserve opacity fades but clamp translate/scale/rotate to zero and collapse durations to 1ms. The edge rule’s pulsing dot freezes on. No parallax, no marquee, no autoplay ever.

07CORE STATES DOCUMENTED

Component primitives

Buttons, primary, secondary, ghost

PRIMARY · default
DISABLED
LOADING · label hides, dots pulse
ICON-ONLY · square, no label
TOKENS
--paper--ink--paper-muted--edge-strong--ring--d-base--ease-precise.vertical-{accent}
✓ DO

One primary CTA per surface. Secondary actions go ghost or text-link. The eye lands once, then chooses.

✗ DON’T

Two primaries on the same surface. The user pauses; the page now has two equally loud options instead of one and a fallback.

Cards

DEFAULT
A quiet card.

1px edge, ink-raised fill. No shadow, no radius. Hairline does the work.

HOVER
Edge brightens.

Border goes from 10% to 22%. Background lifts 3% toward paper. 320ms, precise ease.

VERTICAL · FACTORY
Accent-rule card.

Left-edge 2px accent signals which vertical owns the card.

TOKENS
--ink-raised--edge--edge-strong--s-10--d-base--ease-precise.card[data-v]

Layout primitives, Stack · Cluster · Grid

STACK · vertical

Vertical flow with consistent gap. Replaces hand-rolled <div style={{display:flex,flexDirection:column,gap:N}}>.

row 1
row 2
row 3
gap accepts 0–48 (4px scale)
CLUSTER · horizontal + wrap

Inline group, wraps by default. align, justify, wrap as props.

livebetamitossv0.1.3
replaces display:flex,gap,flexWrap
GRID · cols + responsive

cols takes a number (repeat) or template string. responsive collapses to 1 col below 768px.

1
2
3
4
5
6
cols="2fr 1fr" for asymmetric
gap uses the 4px scale: 0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 16, 20, 24, 32, 40, 48.
◊ Default gap={4} = 16px. Default wrap on Cluster is true.
◊ Each primitive renders a <div>; pass style for one-off overrides.
◊ Replaces 80% of the inline style={{display:flex,gap}} hand-rolls.
TOKENS
--ds-gap--ds-cols--s-{0..48}.ds-stack.ds-cluster.ds-grid

Stat, display value + mono label

DEFAULT · ROW OF KPIs
$340K
recovered
11 weeks
brief to launch
37 stores
reconciled, Crepes & Waffles
0
post-launch incidents
EMPHASIS · HERO
$1.2M
ARR signed in Q1
2 founders
shipping AI-native
vertical colors the value. emphasis="hero" jumps to t-h2 (clamped 40-72px).
◊ Use sparingly, three stats in a row is the natural rhythm. More than four crowds.
◊ Numbers above 6 digits get hard to read; format $340K not $340,000.
TOKENS
--f-display--t-h3--t-h2--paper--paper-muted--tr-snug.ds-stat[data-v]

SpecRow, Apple-style spec table

FACTORY PRODUCT · 4 COL
Real Estate
VERSION
v2.3.1
STATUS
Live
CATEGORY
Operations · SaaS
SHIPPED
August 2025
LABS RELEASE · 3 COL
@brickend/core
VERSION
v0.1.3
LICENSE
MIT · OSS
PUBLICADO
Hace 2 semanas
◊ Cells flow horizontally with hairline dividers; collapses to 2-col below 640px.
value accepts JSX, pass a <Badge> for status, mono text for versions.
◊ Pair with a heading above (product name, release codename), the spec row alone is too dense.
TOKENS
--ds-spec-cols--edge--edge-strong--f-display--f-mono--t-body

Footer, every Dinnartec surface

SINGLE PRIMITIVE · CONFIG VIA PROPS
One footer, every surface.

The <Footer> below this card is the same component used on /. Props: brand, slogan, columns, showThemeSwitch, copyright, legal, langSwitch.

◊ Items can be link ({href}) or plain text (no href).
columns.length drives the grid template via CSS var, 1, 2, or 3 columns adapt.
◊ Mobile: collapses 4-col → 2-col → 1-col at 860 / 480.
◊ Bottom row only renders if copyright, legal, or langSwitch are set.
TOKENS
--ink-deep--paper--paper-muted--paper-dim--paper-faint--ds-footer-cols

ProductSignature, unified attribution across Factory products

DEFAULT · 4 PRODUCTS
One signature, every product.

© 2026 Real Estateby Dinnartec

© 2026 Fitnessby Dinnartec

© 2026 Brickendby Dinnartec

© 2026 NAVIby Dinnartec

RULES
◊ Format: © {year} {product} · by Dinnartec
◊ The master brand Dinnartec renders in --paper (full strength); the rest in --paper-dim.
◊ Lives at the bottom of every Factory product page, closes the brand loop quietly.
◊ Use instead of plain copyright text on Factory surfaces; on the Dinnartec master site itself, use the standard <Footer> copyright.
◊ Override parent only if the structure ever needs it (default Dinnartec).
TOKENS
--f-mono--paper--paper-dim--paper-faint

Inputs

RULE DARKENS, NO RING, NO GLOW.
· Enter a valid work email.
TOKENS
--edge-strong--paper--paper-dim--status-error--f-body--t-body

Badges & status pills

AvailableBetaIn developmentDeprecatedOSS · MITFactory · v2.3

Badges are rectangles, never capsules. 1px border, mono label, 6px status dot. Live dots pulse 2s infinite.

TOKENS
--edge-strong--paper-muted--status-{live,beta,error,neutral}.badge[data-v]

Navigation

NAV · DEFAULT · TRANSPARENT ON INK · 80PX TALL
NAV · SCROLLED · INK 80% + 8PX BACKDROP-BLUR + 1PX EDGE
DESKTOP BEHAVIOR
◊ Fixed top, z-index 100, 80px tall
◊ Wordmark + nav links + lang switch + CTA
◊ Active link → label in vertical accent
◊ Hover → label paper-muted → paper, 320ms precise
◊ Scroll > 8px → bg ink/80 + blur(8) + edge
MOBILE BEHAVIOR · <860PX
◊ Height collapses 80 → 64px
◊ Links + lang + CTA hidden, hamburger appears
◊ Tap burger → full-screen overlay (ink-deep)
◊ Numbered list, mono nums + display labels
◊ Closes on Escape, tap outside, route change
TOKENS
--ink--edge--paper--paper-muted--ring.vertical-{accent}backdrop-filter

Theme switch

SEGMENTED · 3 ICONS
Light / Dark / System.

Click any icon to flip the theme of this entire doc. Choice persists in localStorage. System follows the OS via prefers-color-scheme.

RULES
◊ Always icons-only. No text labels.
◊ Active option inverts (paper bg + ink fg)
◊ Inactive sits in paper-dim, hover → paper-muted
◊ Sets data-theme on every .ds-root
◊ Light mode swaps ink ↔ paper-ground for the core tokens
◊ Vertical accents swap to --*-ink variants on light (AA on bone)
◊ Status colors (live/beta/error) also recalibrate, bright reds/greens fail on light
◊ Reduced motion respected; transitions clamp to 1ms
◊ Accessible via role="radiogroup", aria-label, title
TOKENS
data-theme--ink-raised--paper--ink--paper-dim--paper-muted--ring

Forms, composing inputs into a request

DEFAULT · CONTACT FORM
What you build by default.
◊ One input per row. Never side-by-side except <640px.
◊ Labels in mono, uppercase, paper-dim. Above the input, never floating.
◊ Submit button never centered. Always left-aligned.
◊ Hint text in mono 11px, 6px below the input.
WITH ERROR · VALIDATION
The error sits below.
· Use your work email, gmail addresses bounce.
· Required. Even a rough range helps.
◊ Error rule turns red, label stays paper-dim.
◊ Error message in mono 11px, prefixed with em-dash.
◊ Errors are written, not generic. “Required” is the worst possible error message.
◊ Submit disables until all errors clear.
RULES
Forms aren’t decorative.
◊ Never ask for a phone number unless you’ll call.
◊ Never use placeholder as label, placeholders disappear on focus.
◊ Validation runs on blur, not on every keystroke.
◊ Success state is a confirmation message, not a redirect.
◊ Loading state replaces the submit button label, doesn’t spin next to it.
◊ One required field per row. Optional fields marked explicitly.
◊ The form’s width matches its longest expected input, don’t stretch to container.
08UNMISTAKABLY DINNARTEC

Signature moves

Three behaviors that, taken together, make any surface recognizably Dinnartec, even without the wordmark.

SIGNATURE · 01
The edge rule.

A 40px horizontal hairline always pinned to the top of the viewport, containing live metadata: locale coordinates, current section, build timestamp, status. It replaces the typical marketing nav’s ambient role with engineering evidence.

◊ Left · build + geo coords
◊ Mid  · current section num + name
◊ Right · locale + date + status dot
◊ Pulses on “shipping”, freezes on reduced motion
◊ Scrolled: adds 8px backdrop-blur, 1px bottom edge
DNN·DS / v1.507 · SIGNATURE MOVESES/EN, 2026.06.06, SHIPPING
Anatomy

The rule re-renders on every route change and on every IntersectionObserver section switch.

We build AI-native software,
without theatre.

SIGNATURE · 02
Typographic assembly.

Every hero headline is structured as discrete fragments: a regular prefix, a dim aside, a bold accent, and a clean final clause. On page load the fragments arrive in sequence, ~180ms apart, each with an expo-out entrance. No typewriter, no blur, just orderly composition, as if someone is typesetting the sentence in front of you.

◊ Fragments inherit weight from role
◊ Only opacity + 12px translateY animate
◊ Total assembly ≤ 1.2s, never more
◊ Scroll-triggered for non-hero H2s
SIGNATURE · 03
Mono scaffolding.

Every block of prose is wrapped in engineering evidence, coordinates, section numbers, timestamps, commit hashes, set in JetBrains Mono at 11px, 8% tracking. The scaffolding never appears inside prose; it lives above, beside, or below, like annotations on a build log.

◊ Pairs with H2s by default
◊ Uses ◊ glyph as list bullet
◊ Dates in ISO-8601 (2026.06.06)
◊ Commit hashes: 7 characters, lowercase
§ 02.03
SOLUTIONS
CASE / CREPES
,
2025.11.08
COMMIT 9a8f2e1
AUTHOR / AM
READ / 4 MIN
From 37 spreadsheets to one ledger.

Crepes & Waffles came to us with a reconciliation problem. We built a single source of truth in 11 weeks and recovered $340K in uninvoiced revenue in the first quarter of operation.

09WHAT WE DRAW · WHAT WE REFUSE

Imagery & iconography

Imagery is geometry, type, diagrams, mono coordinates, accent rules, and MarkField. Photography is governed by Plate. Product reality is governed by EvidenceFrame. Every visual surface stays scarce, captioned, and tied to proof.

◊ TYPE / OUTCOMESYNE 700 · DISPLAY · -0.025em
TYPOGRAPHY & FRAMES
Type as image.

Editorial composition does the work. Display type for the headline, mono for the coordinates, 1px hairlines for structure. Specific numbers and named outcomes, never photographs of offices, founders, servers, or hands at a keyboard.

agentmcpbrick.authdeploy
DIAGRAMS & ARCHITECTURE
Blueprint, never screenshot.

Product is represented as abstracted architecture by default: 1px lines, 4px nodes, mono labels, vertical accent on the live path. Product screenshots remain rejected; EvidenceFrame shows constructed ledgers, traces, diagrams, and case proof. Never floated, never tilted.

MarkField: organic identity texture

v1.5 keeps one identity primitive for now: MarkField. It is built from repeated mark units and reserved for quiet brand signal, not decorative illustration.

SOFT-CONTOUR · FAINT · PAPER
SIGNAL-VOLUME · STANDARD · INK
ARC · FAINT · LABS ACCENT

Photography: sanctioned only via <Plate />

When the page discusses a specific thing or person and the reader gains something from seeing the actual object, render it through the Plate primitive. Duotone treatment locks the photograph into the system palette; the numbered caption forces a deliberate count per surface. Decorative or ambient photography remains rejected: portraits, offices, hands at keyboards, stock, and screenshots.

Humanoid robot prototype walking through an industrial floor.
PLATE 01Humanoid prototypePaper / Ink · subtle grain
Humanoid robot prototype, duotone violet treatment.
PLATE 02Humanoid prototypePaper / Solutions
Humanoid robot prototype, duotone cobalt treatment.
PLATE 03Humanoid prototypePaper / Factory
Humanoid robot prototype, duotone gunmetal treatment.
PLATE 04Humanoid prototypePaper / Labs
RULES OF USE
  1. Subject-isolated. The thing being discussed is the dominant element. Clean ground or contextual environment that serves it.
  2. Duotone always. Treatment matches the host vertical (Solutions / Factory / Labs) or defaults to Paper / Ink.
  3. Scarce by surface. One per long-form page or landing section. Social canvases may use one dominant Plate.
  4. Numbered caption.«PLATE 0X» is required. The count is the discipline.
  5. Banned subjects. Staff portraits, offices, hands at keyboards, stock photography, screenshots.

Iconography, outline, 1.5px, 24px grid

ARROW
CHECK
CODE
BOLT

Heroicons v2 Outline. 24×24 grid, 1.5px stroke, round caps and joins, currentColor. Never filled, never duotone. Icons always trail text in CTAs, never icon-only buttons.

09.5PLATE · MARKFIELD · SOCIAL SURFACES

Imagery v1.5

v1.5 does not restyle Dinnartec. It adds two controlled visual capabilities to the current system: better photographic plates, and subtle identity fields built from the mark.

UNCHANGED CORE

Same system. More ways to show real material.

  • Syne, Archivo, and JetBrains Mono.
  • Ink, paper, and the three vertical accents.
  • Radius 0, 1px hairlines, rectangular modules.
  • Type-first composition and evidence-first imagery.
MARKFIELD · SIGNAL-VOLUME · STANDARD
PLATE V1.5

Photography remains scarce.

Plate now has density, grain, and crop intent. It still accepts only real photographs that help the reader inspect a thing.

Humanoid robot prototype rendered as a controlled Dinnartec plate.
PLATE 15.01Subject-isolated photographLanding density · subtle grain
MARKFIELD

A field, not an illustration.

MarkField extends the dot-grid into a branded organic texture. It supports composition, but never competes with the message.

INK · PAPER MARKS
PAPER · INK MARKS

SOCIAL APPLICATION

Exports can carry imagery without becoming ads.

The social layer uses the same primitives: type, metadata, hairlines, Plate, and MarkField. No new fonts. No screenshots. No platform-native decoration.

DNN · RELEASE / 2026

Brickend v0.2 en npm.

14 bricks7 templatesOpen source

Surface matrix

SurfacePlateMarkFieldRule
Landing heroRareRareType remains the default hero material.
Landing sectionAllowedAllowedUse when the image proves the section.
Blog postAllowedRarePlate carries real references and objects.
Social exportAllowedAllowedOne idea per canvas. No screenshots.
Open GraphRareAllowedPrefer type, metadata, and low-density signal.
BOUNDARY

Capability layer, not a new skin.

If a piece needs a different font, a different palette, rounded containers, tilted mockups, or screenshots to work, it does not belong in v1.5.

10REAL WORK, FRAMED WITH DISCIPLINE

Evidence artifacts

The system can show product reality without becoming a SaaS template. Evidence artifacts are the sanctioned way to reveal ledgers, traces, diagrams, release notes, and case proof. They are not screenshots. They help the reader judge the work.

FACTORY / SYSTEM STATEFIG. 10.01
PORTFOLIO
37 properties reconciled.
Live
MRR
+18%
ROWS
14,220
INCIDENTS
0
tx_8921 matched -> invoice_441
tx_8922 pending -> owner review
tx_8923 matched -> lease_203
Real Estate operations ledgerv2.3 / live data

A system state may be shown when the artifact is built inside the DS. No screenshots, tilted mockups, glass cards, or ambient desktop scenes.

SOLUTIONS / CASE PROOFFIG. 10.02
BEFORE
37 spreadsheets

Manual reconciliation, duplicated rows, invoices without a shared source of truth.

AFTER
1 ledger

Single operational record, exception queue, weekly finance review.

$340K recovered
From 37 spreadsheets to one ledger11 weeks / $340K

A case artifact compresses the situation, the intervention, and the measurable result. It should feel like a clean work file, not an ad.

LABS / RESEARCH NOTEFIG. 10.03
§ 03.02
MODEL
POLICY
TOOLCALL
if actor.scope.allows(task):
  plan = planner.expand(task)
  run(plan, boundary=actor.scope)
else:
  request_handoff(actor, task)
Brickend permission boundarymethod / prior art

Labs artifacts can be denser. They earn that density with structure: method, diagram, pseudo-code, constraint, source.

NAVI / AGENT TRACEFIG. 10.04
Planner handofforchestrator -> planner

NAVI artifacts may use the midnight treatment, but the information still has to be inspectable: who acted, why, and under which permission scope.

Method artifacts

EXPLANATION SYSTEM
The method is shown as work, not as decoration.

Use MethodArtifact when a section needs to explain how Dinnartec works. It gives Open Design and production code the same grammar: inputs, system maps, checklists, logs, and outputs.

DIAGNÓSTICODINNARTEC
ENTRADAS
Hojas12
Tareas manuales18
Sistemas5
PLANAlcance, riesgo, costo
MAPA DEL SISTEMADINNARTEC
UsuariosDatosNúcleo operativoReglasHerramientas
LISTA DE LANZAMIENTODINNARTEC
ConstrucciónLista
Prueba con usuariosLista
CapacitaciónLista
ProducciónActiva
REGISTRO DE MEJORADINNARTEC
Tareas manuales-32%
Errores-18%
Siguiente automatizaciónAprobada
Ciclo 02 parte del uso medido
◊ Spanish surfaces use Spanish labels. English mirrors use English labels.
◊ Never mention a channel or tool unless the section is about that exact channel or tool.
◊ Each artifact must answer one question: what enters, what changes, what ships, or what improves.

When to use an artifact frame

TypeWhat it must showWhere it belongs
System stateA ledger, system trace, release artifact, or abstract product state.Factory pages, product launches, demos.
Case proofBefore and after numbers, timeline, client context, operational artifact.Solutions pages and case studies.
Research noteDiagram, pseudo-code, benchmark, method note, prior art reference.Labs papers and docs.
Agent protocolTask state, handoff, permission boundary, trace or message schema.NAVI product and internal tooling.
BOUNDARY
Evidence beats atmosphere.

If an image only says "technology", reject it. If it lets the reader inspect a real state, a real constraint, or a real result, rebuild that evidence as a Dinnartec artifact. The character stays Dinnartec because the surface remains rectangular, captioned, measured, and scarce.

11FOUR PATTERNS · ONE PRIMITIVE

Textures & surfaces

The TextureSurface primitive defines four sanctioned background patterns. Every texture must signal, count, or label something. Decoration without function is the failure mode. If the surface still reads after removing the texture, remove it.

PATTERN 01

Dot-grid

Drafting paper · diagram ground · technical surface.

Reads as "esto es un plano". Standard (16px) para superficies normales; tight (8px) para detalle cercano; loose (28px) para fondos amplios.

TIGHT8px · radial 1
STANDARD16px · radial 1
LOOSE28px · radial 1

PATTERN 02

Hatch

Errata · zona cancelada · cita marginal.

Convención de plano técnico: rayado = marcado, no eliminado. Reservado para callouts y bloques de cita. Nunca como fondo de hero.

TIGHT4px gap · 1px line
STANDARD8px gap · 1px line
LOOSE14px gap · 1px line

PATTERN 03

Grain

Hero · respiración · superficie larga.

Ruido SVG, opacidad bakeada por densidad. Tone se ignora. Úsalo para evitar sensación de "rectángulo plano" en heroes; nunca como decoración secundaria.

TIGHTfractal 1.4 · α 0.10
STANDARDfractal 0.9 · α 0.07
LOOSEfractal 0.55 · α 0.05

PATTERN 04

Halftone

Banda perimetral · sub-rule · marcador de contenido.

Hereda lenguaje del print de revista. Útil como banda inferior de sección o degradación de Plate. El accent se permite cuando la banda vive dentro de un vertical específico.

TIGHT12px · circle 1.6
STANDARD18px · circle 1.6
LOOSE · solutions28px · accent

Patrones haciendo trabajo

Si la textura no se nota cuando se quita, no estaba haciendo trabajo. Cuatro ejemplos de texturas en su rol real.

DOT-GRID · diagrama de arquitectura

ERRATA · v1.2

El parámetro retry_after dejó de aceptar segundos en v1.2. Usar milisegundos.

HATCH · zona errata / cancelado

F.02 · OPERATOR ARM

Treinta y siete
articulaciones,
una intención.

GRAIN · hero · superficie larga

FOOT STRIP · 2026 · DINNARTEC

HALFTONE · banda perimetral

V1.5 · IDENTITY TEXTURE

MarkField is separate from TextureSurface.

TextureSurface signals surface roles: diagram, errata, grain, or perimeter band. MarkField signals Dinnartec identity through tiny repeated mark units. Use it less often than dot-grid.

RULES OF USE
  1. Function first. Cada textura señala, cuenta o etiqueta. Si pudiera quitarse sin perder información, no entra al sistema.
  2. One per surface. Nunca apiles patrones. Una superficie, una textura.
  3. Default tone is faint. Strong se reserva para callouts y errata, no para énfasis decorativo.
  4. Accent is locked to vertical context. Solutions/Factory/Labs accent solo en superficies que ya viven en ese vertical.
  5. Grain ignores tone. Su opacidad va bakeada por densidad. Documentado en el primitivo.
12THE INTERNAL AI AGENT · GRADIENT AS SIGNAL

NAVI

NAVI is our internal multi-agent system. Three agents (orchestrator, planner, customer) operate over tasks, projects, milestones, calendar and CRM, view-aware and bilingual. It is also the only surface in this design system permitted to speak through gradient. The composition borrows one tone from each vertical: cobalt from Factory, violet from Solutions, steel from Labs, on a single deep ground. NAVI does not invert in light mode; it stays a dark island regardless of theme.

WHAT NAVI IS
Identity · Surface · Token

A multi-agent system, rendered as one midnight composition with one tone per vertical on a single deep ground.

The orchestrator handles single actions directly: one create, one update, one lookup. When the request needs multi-entity coordination, it hands off to the planner; when the speaker is a customer, the customer agent takes over with its own permission scope. All three share the same surface treatment: Factory’s cobalt sits lower-left, Solutions’ violet upper-right, Labs’ steel ambient overhead. The three glows swell and drift toward each other on the inhale, then relax on the exhale, an 11-second cycle driven by the registered --navi-breath property.

Tokens are organised in three groups: ground (--navi-ground, --navi-ground-raised), glows (--navi-glow-cobalt, --navi-glow-violet, --navi-glow-steel), and consumption (--navi-gradient for surfaces, --navi-gradient-text for inline text fills, --navi-accent for solid color). Surfaces using NAVI must wrap their content in className=“navi-surface” . Locks paper/edge tokens to dark-mode values locally and arms the breathing animation. prefers-reduced-motion disables it.

The gradient at scale

Sample render. Inline NAVI mention

Powered byNAVI

One reference render. The word NAVI uses --navi-gradient-text as a background-clip-text fill: a bright spectrum walk (cobalt → violet → steel) distinct from --navi-gradient. The text variant uses var() of the vertical accents so it auto-swaps to deep ink variants in light mode (still readable on bone). The midnight mesh would render unreadable as text fill, that is why two consumption tokens exist. For full surfaces (chips, blocks, hero panels), use --navi-gradient wrapped in .navi-surface.

Where NAVI lives, and where it does not

APPROVED
  • NAVI badge, chip or version tag
  • NAVI hero on its own page or section
  • NAVI avatar: rectangular swatch, optional inner glyph
  • NAVI signage when introducing the agent in product
AVOIDED
  • Background fills on hero or section panels (not NAVI)
  • Card surfaces, button backgrounds, navigation links
  • Anywhere the surface is not about NAVI itself
  • Decorative orbs, glow auras, atmospheric mesh. Ever.
THE ATOM · /design-system/LOGO/NAVI
Nucleus, orbit, particle.

Three forms, four states, five DS tokens. The NAVI mark as a behavioural system. Anatomy, responsive tiers, idle / thinking / speaking / listening, palette, quality test.

13HOW SOLUTIONS · FACTORY · LABS MODULATE THE CORE

Sub-identity playbook

Each vertical inherits typography, grid, motion and primitives. They differ only in four dimensions: accent, density, voice, and imagery cue.

DimensionCore (master)SolutionsFactoryLabs
ACCENTPaper #FAFAF7Indigo-violet #836CDACobalt #5B7BE0Steel #8FA3BD
DENSITYGenerous. 192px section pad. Narrow container for prose.Generous. Wide column. Outcome numbers up front.Dense. Product-page density. 96–128px pad. Tables, data.Academic-dense. 960px narrow container. Footnotes common.
VOICEInstitutional. Third-person plural. "We at Dinnartec."Warm, first-person-plural. "We partner with you." Case studies named.Product-first, benefits-led. "One ledger. Every number."Technical, reverent of prior art. "This builds on the work of…"
IMAGERYTypography-driven. Editorial frames, mono coordinates, dot-grid texture. No photos.Outcome numbers in display type. Accent rules, 1px frames, named cases. No portraits.Product as abstracted architecture by default. Real UI states only inside EvidenceFrame.Diagrams. Pseudo-code blocks. Architecture in 1px lines on dot-grid.
DATA DISPLAYSparingly. Revenue, team size. Mono.Outcome numbers ($340K recovered, 11 weeks). Specific cases, named.Live dashboards, uptime, MRR, row count. Mono, cobalt accents.Benchmarks, tables, formulas. Steel highlights. Monospace-first.
CTA"Let’s talk""Hablemos / Let’s talk" · indigo-violet bg"Try demo" · cobalt bg · always paired with pricing"Read the paper" / "View on GitHub" · steel bg

Three heroes, one system

SOLUTIONS / 01
Your tech team,
hired by the project.

We diagnose, we build, we ship. We stay only as long as you need us.

FACTORY / BACKOFFICE
One ledger.
Every number.
● 99.97% · MRR +18% · v2.3
LABS / BRICKEND
Backends,
composable by agents.
$ npm i @brickend/core
14WHAT THIS SYSTEM EXPLICITLY REJECTS · 14 ITEMS

Anti-patterns

01
Purple → cyan AI gradients.

The default 2023–24 “AI product” palette. Floating orbs, laser gradients on hero backgrounds. Instant cliché. Single exception: NAVI surfaces. The internal AI agent owns the only gradient in the system, a midnight mesh of all three vertical hues at night (cobalt + violet + steel) on a deep ink ground (token --navi-gradient, scoped via .navi-surface). Theme-independent on purpose. Outside NAVI, still cliché. The rule strengthens by being scarce.

02
"AI-powered" badges.

We are AI-native. We don’t advertise it. If we have to tell you, we haven’t shown you.

03
Stock isometric illustrations.

Tiny people next to oversized laptops. Fuchsia buildings. Anything from a SaaS template. Never.

04
Rounded pill buttons.

We are rectangles. border-radius: 0 is a brand decision. Exception: status dots.

05
Emoji in product copy.

Zero emoji. If you need a visual mark, use the glyph or an outline icon.

06
Title Case Headlines.

Sentence case only. Title case is corporate cold, and we are not.

07
Drop shadows on cards.

We use a 1px hairline. Shadows belong on the hero image, nowhere else. No 0 10px 25px blurs.

08
Parallax, springs, bounces.

We don’t fake physics. Motion is narrative. If it wouldn’t happen in a live theater blocking, it doesn’t happen here.

09
LinkedIn-voice copywriting.

"Leveraging synergies." "Empowering founders." "Unlock the power of…" All banned. Write like a builder writing.

10
Decorative or ambient photography.

No offices at night, no founders in their space, no warm-light hands at a keyboard, no stock, no floating mockups. Two sanctioned exceptions: <Plate /> for subject-isolated photographs and <EvidenceFrame /> for ledgers, traces, diagrams, and case proof built inside the DS. Both are captioned, scarce, and tied to something the reader can inspect.

11
Mixing two vertical accents.

One surface, one accent. Solutions indigo-violet and Factory cobalt never touch on the same page. Labs silver does not appear on a Factory page.

12
Dark mode that’s actually grey.

Our ink is #0A0A0B. It has 3% warmth. Not #1e1e1e, not #121212 as ground. Commit to black.

13
Stacked or decorative-only textures.

Patterns are surfaces, not garnish. Never stack two textures on the same surface (no hatch over dot-grid, no grain over halftone). One surface, one texture. And every texture must signal, count, or labelsomething: dot-grid means «technical surface», hatch means «errata / cancelled», grain means «hero respiration», halftone means «perimeter sub-rule». If you can remove the texture and the surface still reads, remove it. Use the <TextureSurface /> primitive. Ad-hoc backgrounds bypass the discipline.

14
Screenshots as brand imagery.

No product screenshots, browser chrome, app windows, dashboard crops, or UI pasted into a frame. Product reality is rebuilt as <EvidenceFrame />. Visual identity comes from type, Plate, TextureSurface, and <MarkField />.

15DINNARTEC HOMEPAGE · ABOVE-THE-FOLD SPEC

Sample hero

A working spec a designer or frontend engineer can execute without guessing. The layout, the tokens, the motion sequence.

DNN / HOMEDINNARTECES/EN, SHIPPING
Dinnartec
SolutionsFactoryLabsPartners
Let’s talk
◊ FY26 Q2
◊ 2 founders
◊ 3 products shipped
◊ 1 open-source lab

We build
AI-native
software.

Our own products. Custom software. Open research. Three branches on a shared base. From diagnosis to release in weeks, not months.

SOLUTIONS
Custom software for founders.
FACTORY
Three SaaS products, more coming.
LABS
Open research. Brickend + MCP.
LAYOUT SPEC
Geometry
◊ Container, 1320px / gutter max(24, 3.2vw)
◊ Nav row, 72px tall · border-bottom edge-faint
◊ Hero body, grid 1.1/.9 · gap 48px · align-items: end
◊ Headline, clamp(56, 10vw, 168) · Syne · -0.045em
◊ Standfirst, 20px lead · Archivo · max-width 42ch
◊ CTA row, 36px gap from standfirst
◊ Vertical rail, 3 cols · each accent + label + h4
◊ Section height, 100vh on ≥ lg · 88vh on md · auto on sm
MOTION SEQUENCE · on load
Timeline
◊ 0ms · edge rule paints instantly
◊ 80ms · nav links fade in, 200ms
◊ 220ms · accent rule + eyebrow 12px→0 entrance, 520ms
◊ 320ms · headline fragment 1 “We build” · 520ms entrance
◊ 480ms · headline fragment 2 “AI-native”
◊ 640ms · headline fragment 3 “software.” · 720ms entrance
◊ 820ms · standfirst paragraph 20px→0 · 520ms
◊ 1040ms · CTA row 12px→0 · 520ms
◊ 1180ms · vertical rail staggered, 80ms delta per cell
◊ 1400ms · mono margin-note fades in
◊ 1500ms · status dot begins 2s pulse
TOKENS USED
Nothing off-system
COLOR
ink · paper · paper-dim · paper-muted · edge · edge-faint · status-live · solutions-accent · factory-accent · labs-accent
TYPE
hero (clamp) · h4 · lead · micro · meta · mono
MOTION
ease-entrance · ease-precise · d-slow (520) · d-narrate (900) · stagger 80ms