Exadel Smart Library

UI component library with flair and precision

ESL is an open-source web components library that helps developers create modern-looking, effective, and user-friendly interfaces faster.

Why the ESL Web Components Library?

Browser Support

Our web components library uses built-in browser functionality — Web API and ECMAScript 6 features that are fully supported by modern browsers such as Chrome, Firefox, Safari, or Edge.

If you want our UI component library to work in older browsers, you can use one of the polyfill lists — "light" or "full."

Read More

Let's Get Started

Join the array of consumers who successfully use our UI component library. ESL brings to you a number of ultra-light reusable UI components to create unique layouts and utilities to improve the development experience.

Our News

  • ESL v5.8.0 new

    This update adds built-in support for the no-target attribute in esl-tab and esl-trigger, which now hide inactive elements by default. We’ve also introduced the public ESL.version property for easier diagnostics and tooling (make sure to include lib.ts to access it). The esl-carousel received several updates: a more consistent rendering flow, extended proactive event handling, and improved support for dynamic container-class behaviors via the esl-carousel-class-behavior plugin.

  • ESL v5.7.0 new

    ESL v5.7.0 is here!

    This release introduces dynamic media condition support in ESLMediaQuery via the new ESLMediaShortcuts registry — allowing components to react to changing custom parameters in real time. As ESLMediaQuery powers nearly all ESL components, this unlocks more flexible and expressive behavior across the board. The update also includes minor stability fixes for esl-carousel, improving navigation logic and error handling.

  • ESL v5.6.0 new

    This release includes further improvements to the ESLCarousel CSS renderer. It now uses a grid layout out of the box, eliminating the need for auto-height calculations.

    This is a major change in CSS Renderer, so the update has been released under a minor version bump.

  • ESL v5.5.0 new

    The ESL Release v5.5.0 is now available on NPM.

    This release introduces important new features for the ESL Carousel, including full support for the autoplay plugin and a new CSS renderer implementation that widens capabilities and rendering flexibility. Several bug fixes improve carousel plugins behavior, esl-animate repeat option handling, and time parsing.

  • ESL v5.3.0

    The ESL Tech Release v5.3.0 is now available.

    The repository has been completely migrated to a classic monorepo structure and now uses Lerna for package management. This change does not affect ESL consumers - NPM packages remain 100% compatible with previous versions.

    Here is the list of regular release changes:

    • Updtae the eslint-config-esl import plugin: eslint-import-resolver-typescript is now built-in.
    • Retired the isBot check, as it is no longer functional or supported.
  • ESL v5.2.0

    The ESL v5.2.0 has been released, bringing several improvements and fixes:

    • Added the ability to control slide reordering in the default renderer of ESLCarousel (see the lazy-reorder option). This update also includes minor fixes related to default styles and CLS issues.
    • Significant updates and optimizations in ESL's shared ESLint/Stylelint configurations.
    • ESLMedia improvements, including 'disablePictureInPicture' support, fixing the first frame poster on iOS, and more.
    • Fixed drag behavior for ESLScrollbar with an html target.
    • ESLUtils: pick object utility function and parseLazyAttr formatter.
    • Site improvements, including a complete reimplementation of the page layout.
Show older news