AppleJelly is a modern headless component library designed to deliver flexible, unstyled UI primitives while prioritizing accessibility and developer experience. Inspired by DataDog's DRUIDS architecture, AppleJelly provides robust functionality without imposing styling decisions, allowing developers to implement custom designs effortlessly. The library features automatic theme switching based on the user's prefers-color-scheme
media query while supporting manual theme overrides.
-
Headless Components
Focus on functionality without baked-in styling – bring your own CSS or favorite styling solution. -
DRUIDS-Inspired Architecture
Built with the same modular philosophy as DataDog's DRUIDS, emphasizing clean separation of logic and presentation. -
Automatic Theme Detection
Components automatically adapt to OS-level light/dark theme preferences via CSS media queries. -
Accessibility First
Full WAI-ARIA compliance and keyboard navigation support out of the box. -
Theme Customization
Override auto-detected themes using CSS variables or component props for granular control.
npm install applejelly
# or
yarn add applejelly
Detailed Usages and API is on HERE
We welcome contributions! Please follow these steps:
-
Fork the repository
-
Create a feature branch (git checkout -b feat/amazing-feature)
-
Commit your changes with semantic commit messages
-
Push to the branch (git push origin feat/amazing-feature)
-
Open a Pull Request
MIT