Skip to content

betterwebinit/designkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

DesignKit UI

A blazing fast, future-proof library of web components built in vanilla JavaScript.

DesignKit UI Logo

A Better Web Initiative Project

  • Lightweight & high-performance ⚡
  • Framework-agnostic - works with React, Vue, Angular, or no framework 🧩
  • Works with CDNs for easy implementation 🚛
  • Fully customizable with CSS 🎨
  • Includes a beautiful dark theme 🌛
  • Built with accessibility as a core principle ♿️
  • Part of the Rustyll ecosystem for modern web development 🦀
  • Open source 😸

Philosophy

DesignKit UI was born from the belief that web development should be:

  • Simple but not simplistic: Components that solve complex UI challenges without adding complexity to your codebase.
  • Fast by default: Performance should never be an afterthought. We optimize for speed at every level.
  • Truly accessible: Accessibility isn't a checkbox—it's built into our DNA.
  • Framework-agnostic: Your UI components shouldn't dictate your technology choices.
  • Future-proof: Built on web standards that will stand the test of time.

As part of the Better Web Initiative, we're committed to making the web faster, more accessible, and more sustainable. We believe that by building tools that respect these principles, we can contribute to a web that works better for everyone.

Why DesignKit UI?

DesignKit UI is a hard fork of DesignKit, redesigned from the ground up with a focus on performance, simplicity, and future-proof architecture. As part of the Rustyll family - a next-generation static site generator - DesignKit UI serves as the perfect companion for building modern, efficient web interfaces.

Unlike component libraries that lock you into specific frameworks or build tools, DesignKit UI uses web components—a set of standardized browser APIs—to provide truly reusable UI elements that work anywhere HTML runs.

Getting Started

Installation

npm:

npm install designkit-ui

yarn:

yarn add designkit-ui

pnpm:

pnpm add designkit-ui

bun:

bun add designkit-ui

Usage

<!-- Import from CDN -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/designkit-ui/dist/themes/light.css">
<script type="module" src="https://cdn.jsdelivr.net/npm/designkit-ui/dist/designkit.js"></script>

<!-- Use components -->
<kit-button variant="primary">Click me</kit-button>

Or import as ES modules:

// Import specific components
import 'designkit-ui/dist/components/button/button.js';

// Or import everything
import 'designkit-ui/dist/designkit.js';

Features

  • Tiny footprint: Core library under 50KB (minified and gzipped)
  • No dependencies: Built on web standards with no external dependencies
  • SSR-friendly: Works seamlessly with server-side rendering
  • Tree-shakable: Import only what you need
  • TypeScript: Full TypeScript support with accurate types
  • Theme tokens: Comprehensive design tokens for consistent styling
  • Form components: Rich set of accessible form controls
  • Utility components: Layout, navigation, and feedback components
  • Performance-first: Optimized for Core Web Vitals and runtime performance
  • Customization API: Powerful but intuitive API for theming and extending components

Components

DesignKit UI includes a comprehensive set of components:

  • Buttons & Inputs
  • Forms & Controls
  • Layout & Structure
  • Navigation
  • Feedback & Alerts
  • Data Display
  • Media & Icons
  • Utilities

Visit our documentation site for a complete list of components and usage examples.

Roadmap

Note: This roadmap is not exhaustive and may change based on community feedback and project priorities.

Q3 2023

  • Initial release and documentation
  • Core components (buttons, inputs, modals)
  • Theme system
  • Accessibility audits

Q4 2023

  • Form components
  • Data display components
  • Animation system
  • i18n support

Q1 2024

  • Advanced components (data tables, file uploads)
  • Visual regression testing
  • Component playground
  • Framework adapters (React, Vue, Svelte)

Q2 2024

  • Design system integration tools
  • Component generator
  • Performance benchmarking tools
  • Enterprise components

Future

  • AI-assisted customization
  • Server components integration
  • AR/VR component adaptations
  • IoT interface components

Want to influence our roadmap? Open an issue with your suggestion!

Theming

DesignKit UI is designed to be easily customized using CSS custom properties:

:root {
  --dk-color-primary: #3d7aed;
  --dk-color-success: #2ecc71;
  --dk-color-warning: #f39c12;
  --dk-color-danger: #e74c3c;
  --dk-border-radius-medium: 4px;
  --dk-font-family-sans: 'Inter', sans-serif;
}

Theme Presets

DesignKit UI comes with several built-in theme presets:

  • light.css - Our default light theme
  • dark.css - Our elegant dark theme
  • system.css - Automatically follows system preferences
  • high-contrast.css - Optimized for accessibility

Browser Support

DesignKit UI supports all modern browsers, including:

  • Chrome/Edge (last 2 versions)
  • Firefox (last 2 versions)
  • Safari (last 2 versions)
  • iOS Safari (last 2 versions)
  • Android Chrome (last 2 versions)

Contributing

DesignKit UI is an open source project and contributions are welcome! To contribute:

  1. Fork the repository
  2. Clone your fork
  3. Install dependencies: yarn install
  4. Start the dev server: yarn start
  5. Submit a pull request with your changes

We have a Code of Conduct that all contributors are expected to follow.

Development

# Start development server
yarn start

# Run tests
yarn test

# Build production version
yarn run build

Creating New Components

To scaffold a new component:

npm:

npm run create dk-component-name

yarn:

yarn run create dk-component-name

pnpm:

pnpm run create dk-component-name

bun:

bun run create dk-component-name

The Better Web Initiative Ecosystem

DesignKit UI is part of Better Web Initiative:

  • Rustyll SSG: Ultra-fast static site generator built for the future
  • DesignKit UI: Web component library (this project)

Community

License

DesignKit UI is available under the AGPL-3.0 License.


Built with ❤️ by the Better Web Initiative for the future of web development.

⭐ Star us on GitHub🐦 Follow us on Twitter🌐 Visit our website

Styling

DesignKit uses Twind for styling, which is a small compiler that converts Tailwind classes into CSS rules at runtime. This provides all the benefits of Tailwind CSS without the need for a build step.

Shadow DOM Styles

Components use Shadow DOM for style encapsulation, and Twind is integrated to work properly with Shadow DOM using the @twind/with-web-components package.

Custom Properties

DesignKit exposes a rich set of CSS custom properties for theming. Refer to the documentation for details on available custom properties.

About

Future-Proof Web Components UI

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published