🏺 Clay ·
Clay is Liferay's web implementation of Lexicon Experience Language. Built with Bootstrap as a foundation, it's comprised of HTML, CSS, and JS.
Clay repository follows the monorepo approach, all the major components that are the pillars of Clay are here in this repository.
The pillar to give colors and structure to Clay, where is the css and examples of HTML markups of the components.
All components that follow clay-css marking and Lexicon use cases, developed on Metal.js with Soy (Closure templates).
Contains the source code and documentation powering clayui.com.
You can find the Clay documentation on the site.
You can improve by sending pull requests to this repository.
We have several examples on the site. Here's the first one to get you started:
{call ClayButton.render}
{param label: 'Primary' /}
{param type: 'button' /}
{/call}
This example render a "Primary" button on the page, following Lexicon patterns.
You will notice that we use a Soy (Closure templates) template system that is built on top of Metal.js, but if you do not feel comfortable feel free to use WebComponents 😉.
<clay-button label="Primary" type="button"></clay-button>
It will do the same.
Each package contains a page with demos, check.
Clay is available as the clay
package in npm for components and for css like clay-css
. It is also available on a CDN for components and for css, check. But if you just want the separate components, it's also available in the npm as clay-.
See the Getting Started guide for more information.
Even if your application does not use the framework Metal.js Clay is flexible and can be used as WebComponents see some examples with:
Feel free to open up problems or send pull requests. We will always be looking at these problems and we will be responding whenever possible.
Before opening a issue make sure it exists.
If you want to contribute to this project and do not know where to start good first issues is a great place to start.
-
Install NodeJS >= v6.11.0, if you don't have it yet.
-
Install global dependencies:
[sudo] npm install -g yarn
- Install project dependencies:
yarn install
- Install dependencies for each package and link them together:
npm run lerna
- Build all packages
npm run build
- Start a local server on port 4000
npm run start
- Run tests:
npm run test
Since travis is failing on executing a11y tests due to out of date suid you need to execute npm run a11y
locally before sending any pr to verify we're following accessibility standars.
BSD License © Liferay, Inc.