All Projects → Orfium → orfium-ictinus

Orfium / orfium-ictinus

Licence: other
This repo will include the building blocks to create the Orfium Parthenons to come ...

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to orfium-ictinus

Stardust
🎨Tiller Design System
Stars: ✭ 19 (-5%)
Mutual labels:  react-components, storybook, design-system
Matchbox
🔥 A react UI component library
Stars: ✭ 58 (+190%)
Mutual labels:  react-components, storybook, design-system
shared-react-components-example
An example of a mono-repository of shared React components libraries!
Stars: ✭ 85 (+325%)
Mutual labels:  react-components, storybook, design-system
smores-react
🍭 Marshmallow React components
Stars: ✭ 34 (+70%)
Mutual labels:  react-components, storybook, design-system
React
Modern and minimalist React UI library.
Stars: ✭ 2,546 (+12630%)
Mutual labels:  react-components, design-system
ancestor
💀 UI primitives for ReScript and React
Stars: ✭ 144 (+620%)
Mutual labels:  react-components, design-system
Shine Design
为开发者、设计师和产品经理准备的 UI 设计语言
Stars: ✭ 157 (+685%)
Mutual labels:  react-components, design-system
rebass
⚛️ React primitive UI components built with styled-system.
Stars: ✭ 7,844 (+39120%)
Mutual labels:  react-components, design-system
Circuit Ui
SumUp's component library for the web
Stars: ✭ 625 (+3025%)
Mutual labels:  react-components, design-system
React Rough
🐇 React Components for Rough.js
Stars: ✭ 164 (+720%)
Mutual labels:  react-components, storybook
moon-design
Moon Design System for React
Stars: ✭ 209 (+945%)
Mutual labels:  react-components, design-system
paragon
💎 An accessible, theme-ready design system built for learning applications and Open edX.
Stars: ✭ 85 (+325%)
Mutual labels:  react-components, design-system
ui-kit
D2iQ UI Kit
Stars: ✭ 29 (+45%)
Mutual labels:  storybook, design-system
Axiom React
Axiom - Brandwatch design system and React pattern library
Stars: ✭ 41 (+105%)
Mutual labels:  react-components, design-system
Styleguide
The VTEX Design System and React component library.
Stars: ✭ 138 (+590%)
Mutual labels:  react-components, design-system
Pivotal Ui
Pivotal's design system & component library
Stars: ✭ 637 (+3085%)
Mutual labels:  react-components, design-system
Styled Bootstrap Components
The bootstrap components made with styled-components 💅
Stars: ✭ 196 (+880%)
Mutual labels:  react-components, design-system
react-uswds
USWDS 3.0 components built in React
Stars: ✭ 108 (+440%)
Mutual labels:  storybook, design-system
Hiui
HIUI is a solution that is adequate for the fomulation and implementation of interaction and UI design standard for front, middle and backend.
Stars: ✭ 366 (+1730%)
Mutual labels:  react-components, design-system
Storybook Addon Material Ui
Addon for storybook wich wrap material-ui components into MuiThemeProvider. 📃 This helps and simplifies development of material-ui based components.
Stars: ✭ 513 (+2465%)
Mutual labels:  react-components, storybook

Ictinus

An internal UI kit library that is opinionated. Primary focus is to solve UI duplications and provide a unified and cross product UX, UI and accessibility.


npm pan min size minzip size

📦 Installation

$ npm install @orfium/ictinus
$ yarn add @orfium/ictinus

Please note that react >= 16.0.0 and react-dom >= 16.0.0 are peer dependencies. Also that emotion 11 is being used and that will not work in older emotion projects.

if you want the next version you can always use the next tag. Remember: this is a release candidate, we encourage you to lock version on installation to avoid any changes

$ yarn add @orfium/ictinus@next

🔨 Usage

  1. Start by wrapping your App with ictinus ThemeProvider component like below
import { ThemeProvider } from '@orfium/ictinus';

const App = () => (
  <ThemeProvider>
    <Router>...</Router>
  </ThemeProvider>
);
  1. That's it, now you are ready to go.
import { Select, Button } from '@orfium/ictinus';

Extra

Theme usage

Now you can can have access to the library's theme config by using the hook provided

import { useTheme } from '@orfium/ictinus';

const theme = useTheme();

Theme config

You can apply your own branded colours for each product at the definition of the ThemeProvider. This way you can have access everywhere.

<ThemeProvider
    theme={{
        palette: {
            primary: theme.colors.orange,
            secondary: theme.colors.ciel,
        },
    }}
>
    ...
</ThemeProvider>

Emotion Project - Merge theme configs from different providers

If you are already using emotion and you have defined a different provider you still have to define Ictinus ThemeProvider as well. You must put the theme config example at the top of the providers and yours afterwards.

Then you must use the below function to create a new theme config for the second provider

export const defaultTheme = (ancestorTheme: IctinusTheme) => ({
  ...ancestorTheme,
  ...theme,
});

The final outcome will look like this.

<IctinusThemeProvider
  theme={{
    palette: {
      primary: theme.colors.orange,
      secondary: theme.colors.ciel,
    },
  }}
>
  <ThemeProvider theme={defaultTheme}>
    ....
  </ThemeProvider>
</IctinusThemeProvider>
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].