Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Xtend UI is a frontend library of Tailwind CSS components enhanced by vanilla js for building interfaces with advanced interactions and animations.
Xtend UI is an open-source frontend library that delivers Tailwind CSS components enhanced with vanilla JavaScript for advanced interactions and animations. It is built by Riccardo Caroli and licensed under MIT, with documentation licensed under CC-BY-4.0.
Xtend UI is a collection of UI components styled with Tailwind CSS and enhanced with vanilla JavaScript. It takes Tailwind CSS markup and adds interactive behavior such as animations, positioning, and focus management, producing ready-to-use web interface elements. The library is framework agnostic and can be embedded into any JavaScript framework, including React, Vue, or Svelte. Development is tracked on GitHub with 452 stars, and the project is maintained by Riccardo Caroli (copyright 2017-2026).
Xtend UI is aimed at frontend developers who use Tailwind CSS and want prebuilt interactive components without adopting a heavy framework. It suits developers building custom UI kits, teams that need accessible components with keyboard trapping, and JavaScript developers who prefer vanilla JS over framework-specific libraries.
To run the project locally, clone the repository, install packages with pnpm install, and start the development server with pnpm dev. The documentation site is built with Next.js and can be served in production with pnpm build && pnpm serve. For the v1.0 documentation branch, use yarn install and yarn dev instead.
Xtend UI is free and open source under the MIT License. The code is free to use in commercial and personal projects.
Yes, Xtend UI is released under the MIT License, so you can use it commercially and personally without licensing fees.
Yes, the library is framework agnostic. Its vanilla JavaScript core can be embedded in React, Vue, Svelte, or any other JavaScript framework.
Supported browsers are those that support optional chaining, JavaScript modules, dynamic imports, IntersectionObserver, async functions, flexbox gap, WebP, variable fonts, CSS variables, and CSS grid. This covers modern browsers without requiring legacy polyfills.
You can clone the GitHub repository and run pnpm install to set up the project. The online setup guide is available at the official documentation.