Skip to content
/ krado Public

Krado is the build tool that powers your UI. It unifies live Figma data and local overrides into a single source of truth. The engine handles complex spring physics calculations and generates type-safe color primitives, keeping your codebase synchronized and robust.

License

Notifications You must be signed in to change notification settings

akrade/krado

Repository files navigation

@akrade/krado

npm version License: Apache-2.0 Tests Quality Score Accessibility

Krado Design System — Modern Code for Modern Times v2.6.1 • Production Ready • Fully Tested • Accessible

Krado is a design system that automatically turns your design decisions into usable code.

Think of it as a bridge between designers and developers. Change a color in Figma → it updates everywhere in your app automatically. No more manually copying hex codes, no more hardcoded spacing values. Your design system stays synchronized between design and code without manual intervention.


Recent Changes (v2.6.0)

Major Feature & Documentation Release

  • Advanced Token Ingestion — Full support for W3C DTCG formats and CLI-driven token builds via @akrade/krado-tokens.
  • Documentation Architecture — Reorganized into a clear docs-public/ structure with role-based navigation (Developer, DevOps, Manager).
  • Improved Performance — Optimized build pipelines and token transformation logic with 112+ new tests passing.
  • Zero Breaking Changes — Full backward compatibility for existing production environments.

View Full Release Notes →


Quick Start

Install the package that matches your needs. Each package works independently or together as part of the complete system.

# Full component library with React components
npm install @akrade/krado-ui

# Design tokens only (works with any framework)
npm install @akrade/krado-tokens

# React hooks for custom components
npm install @akrade/krado-ux

# Developer experience toolkit (CLI)
npm install @akrade/krado-dx

# AI prompt engineering engine
npm install @akrade/krado-ai

Full Installation Guide with Examples →


Package Architecture

Krado is architected as a five-layer system where each layer solves a specific problem. You can use any layer independently or combine them for the full experience.

Layer Package Version What It Does
Visual @akrade/krado-ui v1.2.8 Pre-built React components with full accessibility, theming, and physics-based animations. Drop into any React project.
Behavior @akrade/krado-ux v1.0.6 React hooks that provide behavioral logic and design token access. Build your own components with Krado's "feel" without using our visual styles.
Data @akrade/krado-tokens v1.5.0 Design tokens extracted from Figma Variables API or custom JSON files, transformed into multiple formats (CSS vars, JS exports, TypeScript types). Framework-agnostic. Now supports W3C DTCG format.
Ops @akrade/krado-dx v0.17.3 Developer Experience toolkit with CLI commands for DevOps automation, releases, and project setup.
AI @akrade/krado-ai v0.1.0 Prompt engineering engine for LLM-assisted development with structured prompts, preferences, and IDE sync.

Why This Architecture?

Most design systems force you to use everything or nothing. Krado lets you choose your level of adoption:

  • Use just the tokens if you have existing components but want automated design sync from Figma
  • Use tokens + hooks if you want Krado's behavioral patterns but need custom visual styles (e.g., for Tailwind CSS)
  • Use the full stack if you want production-ready components that just work
  • Use just the DX toolkit if you want to automate releases and setup for any project
  • Use the AI engine if you want structured prompts and preferences for LLM-assisted development

Deep Dive into Architecture →


Documentation

Getting Started

Technical Guides

Project Management


What Makes Krado Different?

Automated Design Ops

Traditional design systems require manual synchronization between Figma and code. Designers update a color, developers copy-paste hex codes, bugs happen, things drift out of sync.

Krado eliminates manual work entirely. Our token extraction pipeline connects directly to the Figma Variables API. When a designer changes a design value in Figma, the next build pulls those changes automatically and regenerates your CSS variables, JavaScript exports, and TypeScript types. Your codebase stays perfectly synchronized with your design source of truth.

Physics-Based Animations

Most UI libraries use arbitrary easing curves or duration values. Krado uses real physics calculations via spring-easing to generate animations that feel natural. Every motion follows spring physics with configurable stiffness and damping, then gets compiled into CSS linear() easings for optimal performance. The result: animations that feel responsive and alive without manual timing tuning.

Accessibility as a Foundation

Every component in Krado achieves WCAG 2.1 Level AA compliance through comprehensive testing:

  • Automated accessibility testing with axe-core integrated into the test suite
  • Manual screen reader testing (NVDA, JAWS, VoiceOver)
  • Keyboard navigation patterns following ARIA Authoring Practices
  • Focus management and visual focus indicators
  • Semantic HTML with proper ARIA attributes

This isn't an afterthought or optional feature. It's baked into the architecture through our use of Radix UI primitives, which handle the complex accessibility patterns so you don't have to.

Built on Radix UI Primitives

Radix UI provides unstyled, accessible components that handle the hard parts: keyboard navigation, focus management, screen reader support, and ARIA compliance. Krado builds visual styles and behavioral enhancements on top of this solid foundation. This gives you:

  • Best-in-class accessibility without implementing complex ARIA patterns yourself
  • Composability via the asChild prop, letting you customize DOM structure without losing functionality
  • Framework compatibility - works anywhere React runs (Next.js, Remix, Astro, Create React App)
  • Future-proof architecture - Radix's stable primitives mean fewer breaking changes

Three-Mode Theming System

Krado supports three distinct theming modes to match different development workflows:

Mode Visual Styles When to Use
Default Mode Full Krado theme applied Production apps using Krado's design language
Headless Mode Zero visual styles, user-defined only Custom styling with Tailwind CSS or CSS Modules, need behavior only
Extended Mode Krado base theme + user overrides Branded apps that want Krado's foundation with custom modifications

This flexibility means you can adopt Krado incrementally or switch styling approaches without rewriting your component logic.

View Live Examples in Storybook →


Development

To contribute or run the codebase locally:

# Clone the repository
git clone https://github.com/akrade/krado.git
cd krado

# Install dependencies (requires pnpm 8+)
pnpm install

# Run development environment (starts Storybook and file watchers)
pnpm dev

# Build all packages with Turbo caching
pnpm build

# Run full test suite (unit tests + accessibility tests)
pnpm test

Monorepo Structure

Krado uses pnpm workspaces for package management and Turbo for orchestrating builds across the monorepo. This setup provides:

  • Dependency deduplication - shared dependencies are installed once at the root
  • Build caching - Turbo caches build outputs, skipping unchanged packages
  • Parallel execution - tasks run concurrently across packages when possible
  • Atomic versioning - Changesets manage version bumps and changelog generation

Contributing Guide →


Performance Metrics

Krado is designed for production use with strict performance requirements. Here's how we measure up:

Metric Target Current Status
Test Coverage >90% 100% (166/166 passing) Exceeds target
Build Time <5s 1.56s 3.2x faster than target
Bundle Size <100KB 64.4KB gzipped 35% under budget
Accessibility WCAG 2.1 AA Level AA compliant Meets standard
Quality Score >9.0 9.8/10 Exceeds target

What These Metrics Mean

  • Test Coverage: 166 tests covering unit tests, integration tests, and accessibility validation with axe-core
  • Build Time: Complete monorepo build (all packages) completes in under 2 seconds thanks to Turbo caching
  • Bundle Size: Production bundle including all 11 components weighs 64.4KB gzipped, staying well under the 100KB budget
  • Accessibility: Every component passes automated axe-core scans and manual screen reader testing
  • Quality Score: Composite score based on test coverage, build performance, bundle size, accessibility compliance, and documentation completeness

Full Performance Report with Benchmarks →


Roadmap

Current Focus: Phase 5 — Component Library Expansion (Q1 2026)

We're expanding the component library from 11 to 35+ production-ready components, all built on Radix UI primitives with full Krado integration.

Target Release: @akrade/krado-ui v2.0.0 (March 2026)

Planned Components by Category:

  • Form Controls (9 components): OTP Field, Password Toggle Field, enhanced Select with search, multi-step forms, file upload, date picker, time picker, color picker, rich text input
  • Content Display (8 components): Tooltip, Hover Card, Avatar, Badge, Chip, Skeleton, Empty State, Stat Card
  • Navigation (7 components): Dropdown Menu, Context Menu, Menubar, Navigation Menu, Breadcrumbs, Pagination, Drawer
  • Dialogs & Feedback (4 components): Dialog, Alert Dialog, Toast, Popover
  • Layout & Data (4 components): Scroll Area, Separator, Collapsible, Progress, Table, List

Key Features for v2.0.0:

  • All components follow Radix UI composition patterns
  • Full support for three-mode theming (default/headless/extended)
  • Physics-based animations via Framer Motion
  • Comprehensive test coverage (unit + accessibility)
  • Interactive Storybook documentation
  • TypeScript support with generated types

View Detailed Roadmap →


Future: Phase 6 — Advanced Token Pipeline (2026)

We are focusing on streamlining design-to-code workflows with enhanced automation and synchronization capabilities for the Krado token pipeline.

Key Objectives:

  • Advanced token synchronization strategies
  • Visual design analysis and automated token extraction
  • Enhanced developer experience with robust management tooling
  • Streamlined CI/CD integration and conflict resolution

View Phase 6 Overview →

Contributing

Krado is currently maintained by the Akrade Design Ops Team as an internal project. We welcome feedback, bug reports, and feature requests from the community.

How to Get Involved

  • Report Issues: GitHub Issues - Bug reports, feature requests, and questions
  • Read Contributing Guide: CONTRIBUTING.md - Detailed guidelines for code contributions
  • Review License: Apache 2.0 License - Understand usage rights and restrictions

License

Apache License 2.0

Copyright 2024-2025 Akrade Design Ops Team

Summary of Rights

You CAN:

  • Use Krado commercially in your projects (including proprietary software)
  • Modify the source code to fit your needs
  • Distribute modified or unmodified versions
  • Use Krado in products you sell
  • Use in closed-source projects (no copyleft requirement)

You MUST:

  • Include the original Apache 2.0 license text in distributions
  • Include the copyright notice from the LICENSE file
  • State significant changes you made to the code
  • Include the NOTICE file if it exists

You CANNOT:

  • Hold the authors or copyright holders liable for damages
  • Use Akrade's trademarks without explicit permission
  • Claim the software comes with warranties (it's provided "as is")

The Apache 2.0 license is permissive and business-friendly. You can integrate Krado into commercial products without worrying about viral copyleft provisions.

Full License Text →


Links


Built with ❤️ by Akrade

About

Krado is the build tool that powers your UI. It unifies live Figma data and local overrides into a single source of truth. The engine handles complex spring physics calculations and generates type-safe color primitives, keeping your codebase synchronized and robust.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published