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.
Before running or contribute to this project, you need to have the setup of the following packages in your environment
- node
- npm >=4.x.x
- grunt
- git
-
Fork the project
In order to work on your own version, please fork the project to your own repo.
-
Clone using SSH
git clone git@github.com:your-github-username/binary-style.git
-
Enter project directory
cd binary-style
-
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
grunt default
optionally, you can run these to only build what you need, note that
copy
is 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
https://127.0.0.1/
-
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
master
branch
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
--production
(mandatory)- 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.
--cleanup
[optional]- Creates CNAME file
- Deploys to gh-pages with the option
add: false
To publish new package version to npm, run
grunt npm_publish
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_branchname
and 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
OR
- Remove the specified folder(s) from your gh-pages:
grunt shell:remove_folder --folder=br_branchname1,br_branchname2,...