A scalable, production-ready React component library with interactive playground
- ๐ฏ Modern Architecture - Built with React 18, TypeScript 5.6, and Vite
- ๐งฉ Modular Components - Tree-shakeable, lightweight components
- ๐ Interactive Playground - Live component demos with documentation
- ๐จ Customizable - LinkedIn-inspired design system with CSS variables
- ๐ง Developer Experience - Hot reload, TypeScript support, comprehensive tooling
- ๐ Production Ready - Optimized builds, tree-shaking, and performance-focused
- ๐ฑ Responsive - Mobile-first design approach
- ๐งช Well Tested - Comprehensive test coverage with Jest
npm install akgui-core
# or
yarn add akgui-core
# or
pnpm add akgui-core
import React from 'react'
import { Button } from 'akgui-core'
import 'akgui-core/dist/main.css' // Import styles
function App() {
return (
<div>
<Button variant="primary" size="large">
Get Started
</Button>
</div>
)
}
AKGUI provides a comprehensive collection of production-ready React components:
- Button - Versatile button with variants, sizes, and states
- Input - Text inputs with validation and styling (Coming Soon)
- Select - Dropdown selection component (Coming Soon)
- Checkbox - Custom styled checkboxes (Coming Soon)
- Radio - Radio button groups (Coming Soon)
- Form - Complete form wrapper with validation (Coming Soon)
- TextArea - Multi-line text inputs (Coming Soon)
- DatePicker - Date selection component (Coming Soon)
- FileUpload - File upload with drag & drop (Coming Soon)
- Alert - Notification messages (Coming Soon)
- Toast - Temporary notifications (Coming Soon)
- Modal - Dialog and overlay modals (Coming Soon)
- Loading - Loading indicators and spinners (Coming Soon)
- Tabs - Tab navigation component (Coming Soon)
- Breadcrumb - Navigation breadcrumbs (Coming Soon)
- Pagination - Data pagination (Coming Soon)
- Table - Data tables with sorting (Coming Soon)
- Card - Content containers (Coming Soon)
- Badge - Status indicators (Coming Soon)
- Avatar - User profile images (Coming Soon)
๐ Full Documentation: Visit our Interactive Playground to explore all components with live examples, complete props documentation, and usage guides.
import React from 'react'
import { Button, Card, Alert } from 'akgui-core'
import 'akgui-core/dist/main.css'
function App() {
return (
<Card>
<Alert variant="success">Welcome to AKGUI!</Alert>
<Button variant="primary" size="large">
Explore Components
</Button>
</Card>
)
}
The playground is your complete component reference! Each component includes:
- ๐ Live Examples - Interactive component previews
- ๐ Full Documentation - Complete props, types, and descriptions
- ๐ป Code Snippets - Copy-paste examples for every use case
- ๐จ Visual Variants - See all styling options in action
git clone https://github.com/ayush-gupta07/akgui-core.git
cd akgui-core
npm install
npm run playground
๐ Coming Soon: Live playground at
akgui-core.dev
Visit http://localhost:3001
to explore:
- ๏ฟฝ Component Browser - Browse all 50+ components by category
- โก Live Editing - Modify props and see changes instantly
- ๐ Usage Examples - From basic to advanced implementations
- ๐๏ธ Integration Guides - Step-by-step setup instructions
- Node.js 18+
- npm, yarn, or pnpm
# Clone the repository
git clone https://github.com/ayush-gupta07/akgui-core.git
cd akgui-core
# Install dependencies
npm install
# Start development
npm run playground
# Build library
npm run build
# Run tests
npm test
# Type checking
npm run typecheck
# Linting
npm run lint
Use our automatic component generator:
npm run create-component MyComponent
This creates:
- โ
Component file (
MyComponent.tsx
) - โ
Styles (
MyComponent.css
) - โ
Tests (
MyComponent.test.tsx
) - โ
Demo configuration (
MyComponent.demo.tsx
) - โ Auto-registers in playground
akgui-core/
โโโ src/
โ โโโ components/ # Component library
โ โ โโโ Button/ # Example component
โ โ โโโ Button.tsx # Component logic
โ โ โโโ Button.css # Component styles
โ โ โโโ Button.test.tsx # Tests
โ โ โโโ Button.demo.tsx # Playground demo
โ โ โโโ index.ts # Exports
โ โโโ styles/ # Global styles & design system
โ โโโ types/ # TypeScript definitions
โ โโโ utils/ # Utility functions
โโโ playground/ # Interactive demo application
โ โโโ src/
โ โโโ components/ # Playground UI components
โ โโโ demos/ # Demo registry
โ โโโ types/ # Playground types
โโโ scripts/ # Build & utility scripts
โโโ dist/ # Built library files
AKGUI uses a LinkedIn-inspired design system with CSS custom properties:
:root {
--akgui-primary: #0a66c2;
--akgui-primary-hover: #004182;
--akgui-gray: #666666;
--akgui-gray-light: #f3f2ef;
/* ... */
}
Override design tokens to match your brand:
:root {
--akgui-primary: #your-brand-color;
--akgui-radius: 12px;
--akgui-shadow: your-custom-shadow;
}
The library provides multiple build formats:
- ESM (
dist/index.es.js
) - Modern ES modules - CommonJS (
dist/index.cjs.js
) - Node.js compatibility - UMD (
dist/index.umd.js
) - Browser script tag support - Types (
dist/index.d.ts
) - TypeScript definitions - Styles (
dist/main.css
) - Component styles
We maintain high test coverage with multiple testing strategies:
# Unit tests
npm test
# Watch mode
npm run test:watch
# Coverage report
npm run test:coverage
# Visual regression tests
npm run test:visual
Monitor bundle size with:
npm run size
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Add tests for new functionality
- Run tests and linting (
npm test && npm run lint
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
MIT ยฉ Ayush Gupta
- Built with Vite for lightning-fast development
- Styled with LinkedIn-inspired design principles
- Tested with Jest and Testing Library
- Type-safe with TypeScript
โญ Star us on GitHub