Binary-Style
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:
Pre-installation
Before running or contribute to this project, you need to have the setup of the following packages in your environment
Quick start
-
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/
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 master
branch
Manage releases
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
Parameters:
--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
Publishing new version
To publish new package version to npm, run
grunt npm_publish
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:
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,...