Menu

Contributing

It takes a village

There are a variety of ways to contribute to the development of Semantic. We are a very new project and are looking for an enthusiastic and like-minded group of core contributors.

Publicity

One of the easiest ways to support Semantic UI is to get the word out




Squashing Bugs

Please submit any bugs you encounter when using the library to our Github Issues Tracker.

Be sure to include a set of steps to reproduce the issue and any related information, browser, OS etc. If we can't see the issue then it will make solving things much more difficult.

When submitting a bug report, please Fork this JSFiddle to create a test-case. It will have Semantic and normalize.css included for you automatically.
Submit a bug report

Pull Requests

If you see a bug and you'd like to fix it, feel free to open a pull request.

Ideas

Semantic is looking for people to help contribute new core UI components, and suggest extensions for the library.

If you have suggestions for components missing from Semantic which you'd like to see in future versions please add them to our public UI Component board. The current list of upcoming components, and their current development status can be seen on the contributor UI board.

Add an idea

Code

We are looking for a few good coders to help us push out important new features for a release version of Semantic. Here's an overview of current features in development

CSS Variables

We are working on porting Semantic to using CSS variables to allow for easier theming. We are currently planning on using a CSS Pre-processor to move useful values over to variables. The current plan is to not use mix-ins or pre-processor specific code besides variables, and to add vendor prefixing using Grunt.

Help code this
Share Ideas

Example Layouts

We are looking to create example layouts with Semantic to help people make sites quicker, and to learn the intracicies of using Semantic UI. The plan is to eventually create a sister site learnsemantic.com which will contain useful features for learning to use Semantic.

Help code this
Share Ideas

Build Tools

We need to create a customizer for Semantic so user's can choose which components they would like to include and create custom zips with their minified concatenated code.

Most likely this means creating a standalone server that can take API requests for custom builds of semantic and return zip with minified and uncompressed source, or with a little ingenuity in-page javascript which uses JSZIP to do the same

Help code this
Share Ideas

Test Coverage

Semantic uses Jasmine with Karma Test Runner and Travis CI to write unit tests for our UI modules.

We need help to increase our code coverage by writing Jasmine tests for modules and to write feature specs which can be used to write tests.

Help code this
Share Ideas

Style Guide

Contributors may find it useful to read over the coding guidelines for the project. Most importantly, the guide for language, as it is one of the most important parts about Semantic UI.