/yamada-ui

React UI components of the Yamada, by the Yamada, for the Yamada built with React and Emotion.

Primary LanguageTypeScriptMIT LicenseMIT

Yamada UI

NPM Minzip MIT License NPM Downloads MIT License Github Stars MIT License

English | 日本語

Yamada UI is a React UI component library that streamlines the development of cutting-edge web applications and websites. This library offers a diverse range of components that can be easily combined to construct complex user interfaces, incorporating various features such as color modes and animations, which are not typically supported by other React UI component libraries.

Contents

Respect

Yamada UI has drawn a lot of inspiration from Chakra UI, MUI and Mantine UI. This has brought me wonderful experiences in my life. I am deeply grateful to Segun Adebayo and all the gods who have given me such experiences. And I love them.

Documentation

It's the https://yamada-ui.com website for the latest version of Yamada UI.

Features

  • Ease of Styling: Yamada UI contains a set of layout components like Box and Stack that make it easy to style your components by passing props.
  • Flexible & composable: Yamada UI components are built on top of a React UI Primitive for endless composability.
  • Animation: Yamada UI provides hooks that allow for easy declaration of animations. These hooks can be written similar to CSS animations and are supported by all components.
  • Color mode: Yamada UI makes it easy to set values for each color mode in the props of all components. This is not currently implemented in any other React UI component library.
  • Theme switching: Yamada UI allows users to switch themes. Users can adapt their own themes and use web applications and websites. This is not currently implemented in any other React UI component library.
  • Other features: Yamada UI comes with essential loading and notification features that are considered crucial for modern web applications and websites. This means you don't have to define them individually yourself.

Installation

To use Yamada UI components, all you need to install the @yamada-ui/react package.

$ pnpm add @yamada-ui/react

# or

$ yarn add @yamada-ui/react

# or

$ npm install @yamada-ui/react

@yamada-ui/table and @yamada-ui/calendar, among others, are not included with @yamada-ui/react. You will need to install them separately.

# Provide a convenient Table component using `@tanstack/react-table`.
$ pnpm add @yamada-ui/table

# Provide a convenient Calendar and datePicker, MonthPicker component
$ pnpm add @yamada-ui/calendar

# Provide a convenient Carousel component using `embla-carousel-react`.
$ pnpm add @yamada-ui/carousel

# Provide a convenient Dropzone component using `react-dropzone`.
$ pnpm add @yamada-ui/dropzone

# Provide a convenient Markdown component using `react-markdown` and `react-syntax-highlighter`.
$ pnpm add @yamada-ui/markdown

# a package for conveniently using `Font Awesome`.
$ pnpm add @yamada-ui/fontawesome

Usage

To get started with using the components, please follow the steps below:

  1. Wrap your application with the UIProvider provided
import { UIProvider } from "@yamada-ui/react"

const App = ({ children }) => {
  return <UIProvider>{children}</UIProvider>
}

export default App

Yamada UI supports light and dark modes by default

  1. Now you can start using components like so
import { Box, Text } from "@yamada-ui/react"

const Example = () => {
  return (
    <Box>
      <Text>ギャルのパンティーおくれーーーっ!!!!!</Text>
    </Box>
  )
}

CodeSandbox

Support

Please support this project with you or your organization. Your logo will appear here with a link to your website. We'll appreciate some support. [Contribute]

Organizations

Individuals

Contributing

Wouldn't you like to contribute? That's amazing! We have prepared a contribution guide to assist you.

The documentation site for Yamada UI is located in a separate repository. If you're interested in contributing to the documentation, please refer to this contribution guide.

License

MIT © Hirotomo Yamada