Skip to content

The home of the ClickHouse design system and component library.

Notifications You must be signed in to change notification settings

ClickHouse/click-ui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
GitHub Actions
Dec 19, 2024
c2fc77b ยท Dec 19, 2024
Nov 22, 2023
Jan 4, 2024
Nov 24, 2023
Sep 16, 2024
Dec 19, 2024
Dec 19, 2024
Jul 11, 2023
May 17, 2024
Aug 2, 2023
May 2, 2024
Jul 25, 2023
Sep 16, 2024
Dec 19, 2024
Dec 19, 2024
Jan 16, 2024
May 17, 2024
May 29, 2023
Sep 16, 2024

Repository files navigation

Click UI

The home of the ClickHouse design system and component library. Click UI is in very early development and subject to change, we do not recommend using it for production purposes.

Using Click UI in an external app

Click UI has been tested in NextJS, Gatsby, and Vite. If you run into problems using it in your app, please create an issue and our team will try to answer.

  1. Navigate to your app's route and run npm i @clickhouse/click-ui or yarn add @clickhouse/click-ui
  2. Make sure to wrap your application in the Click UI ClickUIProvider, without doing this, you may run into issues with styled-components. Once thats done, you'll be able to import the individual components that you want to use on each page. Here's an example an App.tsx in NextJS.
import { ClickUIProvider, Text, ThemeName, Title, Switch } from '@clickhouse/click-ui'

function App() {
  const [theme, setTheme] = useState<ThemeName>('dark')

  const toggleTheme = () => {
    theme === 'dark' ? setTheme('light') : setTheme('dark')
  }

  return (
    <ClickUIProvider theme={theme} config={{tooltip:{ delayDuration: 0 }}}>
      <Switch checked={theme === 'dark'} onClick={() => toggleTheme() } />

      <Title type='h1'>Click UI Example</Title>
      <Text>Welcome to Click UI. Get started here.</Text>
    </ClickUIProvider>
  )
}

export default App

To develop this library locally ๐Ÿš€

  1. Clone this repo, cd into the click-ui directory
  2. To install dependencies, run npm i
  3. To build the latest styles, run npm run generate-tokens
  4. To run ClickUI locally, run npm run dev and navigate to http://localhost:5173
  5. To run Storybook locally, run npm run storybook and navigate to https://localhost:6006

Enjoy!