Live Style Guide - The style system and guide for Binary.com. The goal of the project is to serve as base style for all Binary projects, and to ensure consistency and maintainability of the brand presentation.
In this document:
Before running or contribute to this project, you need to have the setup of the following packages in your environment
- npm >=4.x.x
Fork the project
In order to work on your own version, please fork the project to your own repo.
Clone using SSH
git clone email@example.com:your-github-username/binary-style.git
Enter project directory
Install your dependencies:
npm install sudo npm install -g grunt-cli sudo gem install compass -n /usr/local/bin
To build everything and run the test suite
optionally, you can run these to only build what you need, note that
copyis a must:
grunt copy grunt css grunt js
To start developing:
Run the following command to watch for js/css changes and rebuild on every change you make:
sudo grunt serve
Open the source code and start editing!
Your site is now running at
How to contribute
Create branch from the latest master branch
git checkout master git pull upstream master git checkout -b [_your_branch_name]
Make your changes
Make pull request
Push your changes to your origin
git push -u origin [_your_branch_name]
Click on the autogenerated link from the terminal to open the PR
Make sure to change the PR base to
Release to Production
Merging the PRs to master branch deploys changes to production
grunt release --production=1 [--cleanup]
Note: The value is needed when more than one option is used
- In order to prevent accidentally releasing to the wrong target, it is mandatory to provide it.
- Your remote origin will be checked to be the correct target of the given parameter.
- Your current branch will be checked to be the correct branch of the given parameter.
- Creates CNAME file
- Deploys to gh-pages with the option
Publishing new version
To publish new package version to npm, run
Test link deployment
There are times that you are working on various branches at the same time, and you want to deploy/test each branch separately on your gh-pages, you can simply use
--branch=branchname for grunt commands:
Deploy your changes to a sub-folder named:
br_branchnameand it can be browsed at: https:// YOUR_GITHUB_USERNAME.github.io/binary-style/br_branchname/
grunt deploy --branch=branchname
Note: In order to remove the created folders from your gh-pages, you can either:
- Remove all
br_*folders and deploy to the root folder:
grunt deploy --cleanup
- Remove the specified folder(s) from your gh-pages:
grunt shell:remove_folder --folder=br_branchname1,br_branchname2,...