@robertkirsz/ui
TypeScript icon, indicating that this package has built-in type declarations

0.8.2 • Public • Published

UI Components Library

A library of UI components that I use in my apps.
Made with React and styled-components, built with Rollup.

Installation

yarn add @robertkirsz/ui

// or

npm install @robertkirsz/ui

Make sure you have latest react, react-dom and styled-components installed as well.

Usage

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.

Drak mode and custom themes

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'
  }
}

BasicStyles

You can import { BasicStyles } from '@robertkirsz/ui' and put it somewhere in your app to get some core styles and basic typography.

Troubleshooting

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.

Development

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).

Install dependencies

yarn install

Start Storybook

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.

Unit tests

yarn test

Formatting code

yarn prettier

Logo

Package Sidebar

Install

npm i @robertkirsz/ui

Weekly Downloads

0

Version

0.8.2

License

GPL-3.0-or-later

Unpacked Size

320 kB

Total Files

30

Last publish

Collaborators

  • robertkirsz