Atoms
Basic building blocks - buttons, inputs, labels, icons The smallest functional units that can’t be broken down further without losing their meaning.
The @leadline-inc/design-system is a comprehensive component library that provides a cohesive set of reusable UI components for building consistent and scalable user interfaces. This library is architecturally designed following the Atomic Design Pattern, ensuring a systematic and hierarchical approach to component organization.
Our design system follows the Atomic Design methodology, creating a clear hierarchy of components that promotes reusability, maintainability, and consistency across all applications.
The @leadline-inc/design-system is built upon the robust foundation of Ant Design (antd), one of the most comprehensive and battle-tested React UI libraries. By inheriting from Ant Design, our system benefits from:
On top of the Ant Design foundation, we apply the Atomic Design methodology to create a systematic approach to component organization and usage.
The Atomic Design Pattern is a methodology for creating design systems that breaks down user interfaces into their basic building blocks. It uses the analogy of chemistry, where atoms combine to form molecules, which combine to form organisms, and so on.
Atoms
Basic building blocks - buttons, inputs, labels, icons The smallest functional units that can’t be broken down further without losing their meaning.
Molecules
Simple combinations - search forms, navigation items Groups of atoms bonded together to perform a specific function.
Organisms
Complex components - headers, footers, product lists Groups of molecules joined together to form distinct interface sections.
Templates
Page-level objects - wireframes, layout structures Page-level objects that place components into a layout and articulate the design’s underlying content structure.
Pages
Specific instances - actual content, real data Specific instances of templates that show what a UI looks like with real content.
Components are organized in a clear hierarchy from simple to complex, making it easy to understand relationships and dependencies.
Atoms → Molecules → Organisms → Templates → PagesEach component is self-contained and can be used independently or combined with others to create more complex interfaces.
The system leverages design tokens for:
Button
Basic interactive element with variants for primary, secondary, and tertiary actions.
Input
Form input fields with validation states and accessibility features.
Icon
Scalable vector icons with consistent sizing and theming.
Label
Text labels with typography hierarchy and semantic meaning.
Form Field
Combination of label, input, and help text for form construction.
Search Box
Input field combined with search icon and submit functionality.
Button Group
Multiple buttons working together for related actions.
Navigation
Complete navigation system with menus, links, and user actions.
Data Table
Complex table component with sorting, filtering, and pagination.
Modal Dialog
Complete modal system with overlay, content area, and actions.
// Building complex interfaces by composing atoms and molecules<SearchForm> <FormField> <Label>Search Query</Label> <Input placeholder="Enter search terms..." /> <HelpText>Use quotes for exact matches</HelpText> </FormField> <Button variant="primary" type="submit"> <Icon name="search" /> Search </Button></SearchForm>All components inherit from a central theme configuration, ensuring consistency across the entire system.
Every component is built with accessibility in mind, including:
To start using the design system in your project:
Install the package
npm install @leadline-inc/design-systemImport components
import { Button, Input, Card } from "@leadline-inc/design-system";Follow the atomic principles
The atomic design approach ensures that your application maintains consistency while providing the flexibility to create unique and engaging user experiences.