A library of UI components that I use in my apps.
Made with React and styled-components, built with Rollup.
yarn add @robertkirsz/ui
// or
npm install @robertkirsz/ui
Make sure you have latest react
, react-dom
and styled-components
installed as well.
import React from 'react'
import ReactDOM from 'react-dom'
import { ThemeProvider, Button } from '@robertkirsz/ui'
const App = () => (
<Button primary size="small">
Hello
</Button>
)
ReactDOM.render(
<ThemeProvider>
<App />
</ThemeProvider>,
document.getElementById('root')
)
All available components with usage examples and their documentation can be found here.
To use dark mode styles, wrap a particular part of your app with <ThemeProvider>
and pass darkMode
prop to it.
<ThemeProvider darkMode>
<PartsThatNeedToBeInDarkMode />
</ThemeProvider>
If you want to use a custom theme, you can pass your values as theme
prop to <ThemeProvider>
:
const customTheme = {
borderRadius: '0',
colors: {
text: 'red',
primary: 'green',
secondary: 'blue'
}
}
<ThemeProvider theme={customTheme}>
<PartsThatWillReceiveCustomTheme />
</ThemeProvider>
You can find the theme structure and values in src/theme.ts file.
You can also import { defaultTheme } from '@robertkirsz/ui'
and use it as a base for some more precise value-overwrites.
import { defaultTheme } from '@robertkirsz/ui'
const customTheme = {
colors: {
...defaultTheme.colors,
secondary: 'yellow'
}
}
You can import { BasicStyles } from '@robertkirsz/ui'
and put it somewhere in your app to get some core styles and basic typography.
If you don't see Intellisense suggestions for components' props in your editor, make sure you have @types/react
and @types/styled-components
installed as your devDependencies.
Make sure you're using Node version specified in .nvmrc
file. If you have nvm installed, you can do this:
nvm use
It will set the proper Node version for you (or prompt you to install it).
yarn install
yarn storybook
You can use it as a development environment as well as the showcase app for all components.
It will be available at http://localhost:6006.
yarn test
yarn prettier