Skip to content

ayush-gupta07/akgui-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

27 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŽจ AKGUI Core

A scalable, production-ready React component library with interactive playground

npm version TypeScript React Build Status License

โœจ Features

  • ๐ŸŽฏ 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

๐Ÿš€ Quick Start

Installation

npm install akgui-core
# or
yarn add akgui-core
# or
pnpm add akgui-core

Basic Usage

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>
  )
}

๐Ÿ“š Components

AKGUI provides a comprehensive collection of production-ready React components:

๐ŸŽฏ Core 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 Components

  • 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)

๐Ÿ”” Feedback Components

  • Alert - Notification messages (Coming Soon)
  • Toast - Temporary notifications (Coming Soon)
  • Modal - Dialog and overlay modals (Coming Soon)
  • Loading - Loading indicators and spinners (Coming Soon)

๐Ÿงญ Navigation Components

  • Tabs - Tab navigation component (Coming Soon)
  • Breadcrumb - Navigation breadcrumbs (Coming Soon)
  • Pagination - Data pagination (Coming Soon)

๐Ÿ“Š Data Display

  • 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.

Quick Example

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>
  )
}

๐ŸŽฎ Interactive Playground & Documentation

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

Run Locally

git clone https://github.com/ayush-gupta07/akgui-core.git
cd akgui-core
npm install
npm run playground

Online Documentation

๐ŸŒ 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

๐Ÿ› ๏ธ Development

Prerequisites

  • Node.js 18+
  • npm, yarn, or pnpm

Getting Started

# 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

Creating New Components

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

Project Structure

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

๐ŸŽจ Design System

AKGUI uses a LinkedIn-inspired design system with CSS custom properties:

Colors

:root {
  --akgui-primary: #0a66c2;
  --akgui-primary-hover: #004182;
  --akgui-gray: #666666;
  --akgui-gray-light: #f3f2ef;
  /* ... */
}

Customization

Override design tokens to match your brand:

:root {
  --akgui-primary: #your-brand-color;
  --akgui-radius: 12px;
  --akgui-shadow: your-custom-shadow;
}

๐Ÿ“ฆ Build Outputs

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

๐Ÿงช Testing

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

๐Ÿ“Š Bundle Analysis

Monitor bundle size with:

npm run size

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development Workflow

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make your changes
  4. Add tests for new functionality
  5. Run tests and linting (npm test && npm run lint)
  6. Commit your changes (git commit -m 'Add amazing feature')
  7. Push to the branch (git push origin feature/amazing-feature)
  8. Open a Pull Request

๐Ÿ“„ License

MIT ยฉ Ayush Gupta

๐Ÿ™ Acknowledgments


Made with โค๏ธ by the AKGUI Team
โญ Star us on GitHub

About

A scalable, production-ready React component library with interactive playground

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published