ng-lightning

Native Angular components and directives for Lightning Design System

Usage no npm install needed!

<script type="module">
  import ngLightning from 'https://cdn.skypack.dev/ng-lightning';
</script>

README

ng-lightning

Build Status Sauce Test Status npm version npm

This library contains native Angular components and directives written from scratch in TypeScript using the Lightning Design System CSS framework.

We are looking for community help to find and fix bugs, improve demo site and create new components.

Installation

Install through npm:

npm install --save ng-lightning

Dependencies

This library depends on Salesforce's LDS markup and CSS (tested with 2.9). We don't ship any CSS file, but you have to take care of including LDS CSS rules in your page. There are various ways to achieve this, for example compiling through their source files (@salesforce-ux/design-system) or by adding this into your <head>:

<link rel="stylesheet" href="https://unpkg.com/@salesforce-ux/design-system/assets/styles/salesforce-lightning-design-system.min.css">

SVG Icons

Because of various cross-domain issues, if you want to use SLDS icons, you must provide a copy of the various sprite files (ie @salesforce-ux/design-system/assets/icons/action-sprite/svg/symbols.svg), served locally through your server.

IE11 support

Unfortunately, IE11 does not support two important features.

  • SVG External Content, used to load SVG icons from a spritemap. In order to support this, you will need to use a small script called svg4everybody.
    Available on npm cdn here.

  • Element.classList on SVG elements, used by Angular's renderer.setElementClass. See here for more information. Use classList.js shim, available on npm cdn here.

Typically, these shims should be placed within the <head> element.

Usage & Demo

http://ng-lightning.github.io/ng-lightning/

Contributing

We are always looking for high quality contributions! Please check the CONTRIBUTING.md doc for guidelines.

Need help?

For questions on how to use ng-lightning or how to contribute, please post questions to Stack Overflow using the ng-lightning tag. If you find a bug in the source code or a mistake in the documentation, you can help us by submitting an issue to our GitHub Repository.

Companies using ng-lightning

Browsers

We support the same browsers and versions supported by both Angular and Salesforce's Lightning Design System.
Cross browser/environment testing is performed through Saucelabs.