npm.io
2.6.1 • Published 2 months ago

@equinor/eds-core-react

Licence
MIT
Version
2.6.1
Deps
13
Size
1.4 MB
Vulns
0
Weekly
0
Stars
147

@equinor/eds-core-react

React implementation of the Equinor Design System (EDS). Use it to build applications that follow the EDS guidelines and stay up to date with the latest components.

Make sure to check out our Storybook for more examples! Read the changelog for details on specific releases.

Installation

npm install @equinor/eds-core-react styled-components 
import { Button, Typography } from '@equinor/eds-core-react'
Beta Release (EDS 2.0)

Experimental – For testing and feedback only. Not production-ready.

npm install @equinor/eds-core-react@beta
import { Button, Typography } from '@equinor/eds-core-react/next'
CSS Setup

Beta components require CSS to be imported once in your app's entry point:

// main.tsx or App.tsx (import once at app root)
import '@equinor/eds-core-react/next/index.css'

Or in a global CSS file:

/* styles/global.css */
@import '@equinor/eds-core-react/next/index.css';

Note: Import the CSS only once, not in each component file. The stylesheet contains styles for all beta components.

Learn more:

Additional Setup

If you use TypeScript, make sure you have TypeScript >= 3.8 as a devDependency:

npm install typescript --save-dev
Fonts

The Equinor typeface is not included and needs to be added to the head of your project. Its available from the EDS CDN:

<link rel="stylesheet" href="https://cdn.eds.equinor.com/font/eds-uprights-vf.css" />
Required Stylesheets

EDS Core React components require css variables (colors, spacing and typography).

@import '@equinor/eds-tokens/css/variables';

Usage

import * as React from 'react'
import { render } from 'react-dom'
import { Button, Typography } from '@equinor/eds-core-react'

const App = () => (
  <>
    <Typography variant="h1" bold>Buttons</Typography>

    <Typography variant="h2">Contained (default)</Typography>

    <Button>Primary</Button>
    <Button color="secondary">Secondary</Button>
    <Button color="danger">Danger</Button>
    <Button disabled>Disabled</Button>

    <Typography variant="h2">Outlined</Typography>

    <Button variant="outlined">Primary</Button>
    <Button variant="outlined" color="secondary">Secondary</Button>
    <Button variant="outlined" color="danger">Danger</Button>
    <Button variant="outlined" disabled>Disabled</Button>

    <Typography variant="h2">Ghost</Typography>

    <Button variant="ghost">Primary</Button>
    <Button variant="ghost" color="secondary">Secondary</Button>
    <Button variant="ghost" color="danger">Danger</Button>
    <Button variant="ghost" disabled>Disabled</Button>
  </>
)

render(<App />, document.getElementById('root'))

Components

  • Accordion
  • Autocomplete
  • Avatar
  • Banner
  • Breadcrumbs
  • Button
    • ButtonGroup
    • ToggleButton
  • Card
  • Checkbox
  • Chip
  • Dialog
  • Divider
  • EdsProvider
  • Icon
  • Input
  • Label
  • List
  • Menu
  • Native Select
  • Pagination
  • Paper
  • Popover
  • Progress
    • Circular
    • Dots
    • Linear
    • Star
  • Radio
  • Scrim
  • Search
  • SideBar
  • Side Sheet
  • Slider
  • Snackbar
  • Switch
  • Table
  • Table of contents
  • Tabs
  • TextArea
  • TextField
  • Tooltip
  • TopBar
  • Typography

Documentation

Changelogs

Package Structure

@equinor/eds-core-react
├── /                    # Stable components (EDS 1.0)
└── /next                # Beta components (EDS 2.0)

Keywords