CSS in JS implementation of Semantic UI using EmotionJS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Emotion Semantic UI

CSS in JS implementation of Semantic UI using EmotionJS


This project primarily uses StorybookJS for development.

Quick Start

  1. git clone this project
  2. npm install
  3. npm run storybook or npm run dev

Creating components

Make a new folder in the components folder, make sure the folder name is unspaced and Pascal Case (ExampleComponentName). Create a JS file with the same folder name (or appropriate variation).


  • Documented PropTypes and default props.
  • Storybook examples in a stories subfolder.

Project Structure

The goal is to keep the package as lightweight and minimal as possible, so there's not much to it. If you look at the package.json, you'll see a few dev dependencies like Babel, React, and Storybook.

In terms of actual dependencies, we only have EmotionJS, since it's used in the actual components. React and react-dom are peer-deps (since the project's using this will be react-based).

Folder Structure

  • /components/
  • /components/ComponentName/
  • /components/ComponentName/ComponentName.js
  • /components/ComponentName/index.js - contains exports of all components in folder
  • .babelrc - env and react Babel presets.


High Priority

  • More components

Low Priority

  • Install ESLint + Prettier for code style management
  • Install Jest/Enzyme for testing
  • Integrate Jest + Storybook for testing


  • Install Lerna to manage sub-packages, allowing users to install specific components