Skip to content

Pixel Component Library

A modern, themeable Angular component library with Material Design integration and Tailwind CSS support.

  • 🎨 Comprehensive Theme System - Built-in light/dark themes with full customization
  • 🧩 Standalone Components - Modern Angular standalone components
  • 💨 Tailwind CSS Integration - Portable design tokens and utilities
  • 🎯 Material Design - Seamless integration with Angular Material
  • 📱 Responsive - Mobile-first design approach
  • Accessible - WCAG 2.1 AA compliant
  • 🚀 Tree-shakeable - Optimized bundle sizes
  • 📘 TypeScript - Full type safety and IntelliSense
Terminal window
npm install @surkyl/pixel
# or
pnpm add @surkyl/pixel
  1. Import the theme styles in your styles.scss:
@use '@surkyl/pixel/styles/themes';
  1. Use components in your application:
import { PixelHeader, ThemeService } from '@surkyl/pixel/core';
@Component({
selector: 'app-root',
standalone: true,
imports: [PixelHeader],
template: `
<pixel-header
[brandName]="'My App'"
(menuClick)="handleMenuClick()">
</pixel-header>
`
})
export class AppComponent {
constructor(public themeService: ThemeService) {}
}
  1. (Optional) Configure Tailwind with the Pixel preset:
tailwind.config.js
const pixelPreset = require('@surkyl/pixel/tailwind-preset');
module.exports = {
presets: [pixelPreset],
// ... your config
};
  • Header - Application toolbar with user menu
  • Sidenav - Responsive navigation sidebar
  • Footer - Application footer
  • Form Components - Enhanced form controls
  • Table - Data table with sorting and pagination
  • Layouts - SPA and multi-column layouts
  • Theme Toggle - Light/dark mode switcher
  • And more…

The Pixel theme system provides:

  • CSS variable-based theming
  • Built-in light and dark themes
  • Runtime theme switching
  • Custom theme support
  • Material Design integration
  • Tailwind CSS compatibility
// Toggle theme
themeService.toggleTheme();
// Set specific theme
themeService.setTheme('pixel-dark');
// Register custom theme
themeService.registerTheme('my-theme', customThemeConfig);

Comprehensive documentation is available in the wiki/pixel/ directory:

Run unit tests:

Terminal window
nx test pixel

Build the library:

Terminal window
nx build pixel

Run tests in watch mode:

Terminal window
nx test pixel --watch

See the Contributing Guide for development setup and guidelines.

This library is part of the Surkyl AIO project.