4.16.0 • Published 10 days ago

@exadel/esl v4.16.0

Weekly downloads
-
License
MIT
Repository
github
Last release
10 days ago

Exadel Smart Library

npm npm Downloads version build License

Exadel Smart Library (ESL) is a web components based library that gives you a set of lightweight and flexible custom elements to easily create basic UX modules and make your websites super fast.

Demo Site (draft)

Library Structure

Components

Form Components

Utilities


Installation Guide

  1. Preconditions:

    • Make sure you have all needed polyfills to support browsers from your browser-support list. See Browser support & Polyfills for details.
    • Use bundler to build your project. Currently, only ES6 modules are available for consumption.
  2. Install esl npm dependency

    npm i @exadel/esl --save
  3. Import Components/Modules you need.

    import '@exadel/esl/modules/esl-component/core';
    • core module entry usually represents main part of the module;
    • include optional sub-features directly. See component's documentation for details.
      import '@exadel/esl/modules/esl-media/providers/iframe-provider';
    • Some modules contain cumulative all entries.
    • Styles are distributed in two versions:
      • 'ready to use' core.css or core.less
      • mixin version core.mixin.less for custom tagname definition
  4. Optional Setup environment configuration, e.g. custom screen breakpoints.

    import {ESLMediaBreakpoints} from '@exadel/esl/modules/esl-media-query/core';
    
    // define XS screen breakpoint for up to 800px screen width
    ESLMediaBreakpoints.addCustomBreakpoint('XS', 1, 800); 
  5. Register components via register static method call

    ESLImage.register();

    You can pass custom tag name to 'register' function, but use this option only in an exceptional situation.

Browser support & Polyfills

Exadel Smart Library does not have dependencies but uses the following list of native browser features:

All of them are fully supported by modern browsers, such as Chrome, Firefox, Safari or Edge (>43).

In order to make ESL work in older browsers you can use a "light" polyfills list of IntersectionObserver, ResizeObserver and Custom Elements (Older versions of Edge and Safari)

Or make the library work in IE11 or Edge (<14) by using the "full" polyfills list provided.

See more details on what polyfill approach might look like in the test-server examples.

Also, ESL has built-in polyfills for some of DOM and ES6 features. They are available under ./polyfills directory.


Roadmap

  • UI Playground (will be available soon) demo server
  • More helpers and sugar of ESLBaseElement (event listener helpers and decorators)
  • Extension of esl-utils
  • Dynamic Footnotes component
  • Extension of esl-form elements (custom form base, helpers, validation and more)
  • ESLCarousel component
  • ESLToast component
  • More components in the library

Development Information for contributors

If you are a part of ESL team or want to contribute to the project you can find useful information about the project processes and agreements here:


ESL Core Team: Alexey Stsefanovich, Julia Murashko, Yuliya Adamskaya.

ESL Contributors: Aliaksandr Auseyeu, Andrey Belous, Dmytro Shovchko, Dzianis Mantsevich, Liubou Masiuk, Natallia Harshunova, Yana Bernatskaya.

Exadel, Inc.

npm.io

5.0.0-beta.16

10 days ago

5.0.0-beta.15

10 days ago

5.0.0-beta.14

19 days ago

5.0.0-beta.13

23 days ago

5.0.0-beta.12

27 days ago

4.16.0

29 days ago

4.15.0

1 month ago

5.0.0-beta.11

2 months ago

5.0.0-beta.10

3 months ago

5.0.0-beta.9

4 months ago

5.0.0-beta.8

4 months ago

5.0.0-beta.6

4 months ago

5.0.0-beta.7

4 months ago

5.0.0-beta.4

4 months ago

5.0.0-beta.5

4 months ago

5.0.0-beta.3

5 months ago

5.0.0-beta.2

5 months ago

5.0.0-beta.1

5 months ago

4.14.1

5 months ago

4.9.4

10 months ago

4.9.3

10 months ago

4.9.0

10 months ago

4.9.2

10 months ago

4.9.1

10 months ago

4.14.0

6 months ago

4.10.0

9 months ago

4.13.0

7 months ago

4.13.1

6 months ago

4.12.0

8 months ago

4.10.0-beta.1

10 months ago

4.11.0

8 months ago

4.8.0

11 months ago

4.9.0-beta.1

11 months ago

4.5.0-beta.1

1 year ago

4.8.0-beta.1

11 months ago

4.4.1

1 year ago

4.4.0

1 year ago

4.3.1

1 year ago

4.7.0

11 months ago

4.3.0

1 year ago

4.7.1

11 months ago

4.6.0

12 months ago

4.5.0

12 months ago

4.6.0-beta.1

12 months ago

4.3.0-next.1

1 year ago

4.2.1

1 year ago

4.2.0

1 year ago

4.1.0

1 year ago

4.1.1

1 year ago

4.0.1

2 years ago

4.0.0

2 years ago

4.0.2

2 years ago

4.0.0-beta.19

2 years ago

4.0.0-beta.18

2 years ago

4.0.0-beta.15

2 years ago

4.0.0-beta.14

2 years ago

4.0.0-beta.17

2 years ago

4.0.0-beta.16

2 years ago

4.0.0-beta.11

2 years ago

4.0.0-beta.10

2 years ago

4.0.0-beta.13

2 years ago

4.0.0-beta.12

2 years ago

4.0.0-beta.8

2 years ago

4.0.0-beta.9

2 years ago

4.0.0-beta.7

2 years ago

4.0.0-beta.6

2 years ago

4.0.0-beta.5

2 years ago

4.0.0-beta.4

2 years ago

3.14.3

2 years ago

4.0.0-beta.3

2 years ago

4.0.0-beta.2

2 years ago

3.14.1

2 years ago

3.14.2

2 years ago

4.0.0-beta.1

2 years ago

3.13.0-beta.5

2 years ago

3.13.0-beta.4

2 years ago

3.13.0-beta.6

2 years ago

3.10.1-beta.1

2 years ago

3.13.0-beta.1

2 years ago

3.13.0-beta.3

2 years ago

3.13.0-beta.2

2 years ago

3.13.2

2 years ago

3.13.1

2 years ago

3.10.0

2 years ago

3.12.1

2 years ago

3.12.0

2 years ago

3.14.0

2 years ago

3.11.0-beta.3

2 years ago

3.11.0-beta.2

2 years ago

3.11.0

2 years ago

3.11.0-beta.1

2 years ago

3.13.0

2 years ago

3.14.0-beta.4

2 years ago

3.14.0-beta.3

2 years ago

3.14.0-beta.2

2 years ago

3.14.0-beta.1

2 years ago

3.9.1

2 years ago

3.9.0

2 years ago

3.8.0

2 years ago

3.7.0-beta.4

2 years ago

3.7.0-beta.3

2 years ago

3.7.0-beta.2

2 years ago

3.7.0-beta.1

2 years ago

3.7.0

2 years ago

3.8.0-beta.1

2 years ago

3.6.0

2 years ago

3.4.1

3 years ago

3.5.0

2 years ago

3.4.0

3 years ago

3.3.0

3 years ago

3.2.0

3 years ago

3.1.0

3 years ago

3.0.3

3 years ago

3.0.2

3 years ago

3.0.1

3 years ago

3.0.0

3 years ago

3.0.0-beta.20

3 years ago

2.9.1

3 years ago

3.0.0-beta.19

3 years ago

3.0.0-beta.18

3 years ago

3.0.0-beta.17

3 years ago

2.9.0

3 years ago

3.0.0-beta.16

3 years ago

2.8.2

3 years ago

3.0.0-beta.15

3 years ago

3.0.0-beta.14

3 years ago

2.8.1

3 years ago

2.8.0

3 years ago

3.0.0-beta.13

3 years ago

2.7.3

3 years ago

3.0.0-beta.12

3 years ago

3.0.0-beta.11

3 years ago

3.0.0-beta.9

3 years ago

2.7.2

3 years ago

3.0.0-beta.10

3 years ago

3.0.0-beta.3

3 years ago

3.0.0-beta.5

3 years ago

3.0.0-beta.4

3 years ago

3.0.0-beta.7

3 years ago

3.0.0-beta.6

3 years ago

3.0.0-beta.8

3 years ago

2.7.0

3 years ago

2.7.1

3 years ago

3.0.0-beta.1

3 years ago

2.6.4

3 years ago

3.0.0-beta.2

3 years ago

2.7.0-beta.1

3 years ago

2.6.1

3 years ago

2.5.2

3 years ago

2.7.0-beta.2

3 years ago

2.6.0

3 years ago

2.6.3

3 years ago

2.6.2

3 years ago

2.5.1

3 years ago

2.5.0

3 years ago

2.4.1

3 years ago

2.4.0

3 years ago

2.3.0

3 years ago

2.3.2

3 years ago

2.3.1

3 years ago

2.2.1

3 years ago

2.2.0

3 years ago