Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time
February 1, 2020 22:23
February 1, 2020 22:23
June 3, 2020 23:25
January 19, 2018 13:05
June 3, 2020 23:39
February 1, 2020 22:23
February 1, 2020 22:23
February 1, 2020 22:23
February 1, 2020 22:23
August 27, 2017 15:54
February 1, 2020 22:23

Semantic UI Vue

Semantic UI Vue

Pipeline status NPM version codecov
Join the chat at

Website Β· Installation Β· Configuration (TBD)

Looking for maintainers!

There is a lot to do and few maintainers with little time :). If you'd like to help with this project, please let us know.

Semantic UI Vue is the Vue integration for Semantic UI. It is highly inspired on Semantic UI React If you have used it already, you will find Semantic UI Vue's API to be almost the same. Semantic UI Vue is still under heavy development. Please, feel free to contribute. You can see the feature completion state here

Edit Simple semantic-ui-vue example

πŸš€ Installation


The Semantic UI Vue package can be installed via NPM/Yarn:

$ npm install semantic-ui-vue
# or
$ yarn add semantic-ui-vue

Installing Semantic UI Vue provides the JavaScript for your components. You'll also need to include a stylesheet to provide the styling for your components.

Once Semantic UI Vue has been installed, you will need to import it in your main file (usually index.js or main.js) and tell Vue to use it:

import Vue from 'vue';
import SuiVue from 'semantic-ui-vue';

/* ... */


If you are not using Webpack, you can add the script in your html:

<!DOCTYPE html>
<html lang="en">
    <!-- head -->
    <div id="app"></div>
    <script src="node_modules/vue/dist/vue.min.js"></script>
    <script src="node_modules/semantic-ui-vue/dist/umd/semantic-ui-vue.min.js"></script>
      var app = new Vue({
        el: '#app',
        data: {
          message: 'Hello Vue!',
          '<span><sui-button primary>click me</sui-button>{{message}}</span>',

Or, in alternative, you can import it using a CDN:

<script src=""></script>
<script src=""></script>

Now you are ready to go! Check out the components' examples to see how to use them.


Content Delivery Network (CDN)

You can use the default Semantic UI stylesheet by including a Semantic UI CDN link in your index.html file. This is the quickest way to get started with Semantic UI Vue. You won't be able to use custom themes with this method.

To avoid unexpected behavior please use only the latest version of Semantic-UI


Semantic UI CSS package

The Semantic UI CSS package is automatically synced with the main Semantic UI repository to provide a lightweight CSS only version of Semantic UI. Semantic UI CSS can be installed as a package in your project using NPM. You won't be able to use custom themes with this method.

$ npm install semantic-ui-css --save
# or
$ yarn add semantic-ui-css

After install, you'll need to include the minified CSS file in your index.js file:

import 'semantic-ui-css/semantic.min.css';

Semantic UI package

Install the full Semantic UI package. Semantic UI includes Gulp build tools so your project can preserve its own theme changes, allowing you to customize the style variables.

Detailed documentation on theming in Semantic UI is provided here.

$ npm install semantic-ui --save-dev
# or
$ yarn add semantic-ui

After building the project with Gulp, you'll need to include the minified CSS file in your index.js file:

import '../semantic/dist/semantic.min.css';

Nuxt.js module

You can use semantic-ui-vue as nuxt.js module.


  • Install semantic-ui-vue and semantic-ui-css packages
  • Install semantic-ui-vue and semantic-ui-css packages
  • Add this into your nuxt.config.js file:
  modules: [
    'semantic-ui-vue/nuxt', // includes styles from semantic-ui-css
    ['semantic-ui-vue/nuxt', { css: false }], // if you have your own semantic-ui styles

🀝 Contact us!

Do you have a question? Do you want to submit a bug, or suggest an improvement?

Please contact us! Especially at this stage, we really need this.

To do so, do not hesitate to join our chat on Gitter, or submit an issue (it doesn't have to be a bug). Read the for more details

Semantic UI Vue

πŸ“ License

Copyright Β© 2019-present, Mario Lamacchia.
This project is MIT licensed.