Library for creating atomic react components
Elementary is a library for creating atomic react components.
Inspired by tachyons and styled-system.
@quarkly/elementary"">
npm i @quarkly/elementary
npm i styled-components
Let’s create element:
import React from 'react';
import ReactDom from 'react-dom';
import elementary from '@quarkly/elementary';
const Box = elementary.div();
ReactDom.render(
<Box width={[1, 1 / 2, 1 / 4]} bgc={['red', 'green', 'blue']} height="300px" ></Box>,
document.getElementById('root'),
);
Since Elementary is based on styled-components, the interface may be familiar to you.
const Box = elementary.div`
border: 2px solid tomato;
`;
import React from 'react';
import ReactDom from 'react-dom';
import elementary from '@quarkly/elementary';
const Box = elementary.div({
effects: {
hover: ':hover',
},
variant: 'boxes',
rules: ['height', 'backgroundColor'],
});
ReactDom.render(
<Box width={[1, 1 / 2, 1 / 4]} bgc={['red', 'green', 'blue']} height="300px" ></Box>,
document.getElementById('root'),
);
First argument is the configuration:
Licensed under MIT.