From 014c3a23dc7bf6c35c5e8a6842c70c85abe7d619 Mon Sep 17 00:00:00 2001 From: Eric Ferraiuolo Date: Mon, 10 Jun 2013 12:17:04 -0400 Subject: [PATCH] Add CONTRIBUTING.md which documents how to contribute to Pure The README.md was updated to remove some information which now lives in CONTRIBUTING.md. Closes #75 --- CONTRIBUTING.md | 131 ++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 80 ++++++++++------------------- 2 files changed, 158 insertions(+), 53 deletions(-) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..b3770c8 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,131 @@ +How to Contribute to Pure +========================= + +Feel free to [open issues][] and send pull requests on GitHub! When sending a +pull request, please create a new topic/feature branch, and send your pull +request from that branch. Please do *not* send pull requests from your `master` +branch because this tends to lead to merge conflicts. + +In order for us to to merge your pull requests, we need you to review and sign +our [Contributor License Agreement][]. The CLA protects you and your +contributions along with all other developers who use Pure. + + +[Contributor License Agreement]: #contributor-license-agreement +[open issues]: https://github.com/yui/pure/issues + + +Docs and Website +---------------- + +[Pure's website][Pure] is also open source, so please open any issues or pull +requests for the docs and website over at the [`pure-site`][pure-site] +repository. + + +[Pure]: http://purecss.io/ +[pure-site]: https://github.com/yui/pure-site + + +Building and Testing Pure +------------------------- + +Pure uses [Grunt][], a JavaScript task runner that runs on [Node.js][], for +building and testing. You'll need Node.js and Grunt installed to work on Pure. +Once installed, clone the `pure` repo (either the main repo or your fork) and +install Pure's gruntplugins via npm: + +```shell +$ git clone git://github.com/yui/pure.git +$ cd pure/ +$ npm install +``` + +Building Pure is easy, run `grunt`: + +```shell +$ grunt +``` + +Pure use [CSSLint][] for basic testing to make sure we're shipping valid CSS +which complies with standard best practices. To run Pure's tests, run +`grunt test`: + +```shell +$ grunt test +``` + +**Note:** To save your fingers from The Developer Konami Code: ⌘⇥ ↑ ⏎ run the +`grunt watch` task with will continuously test and build Pure anytime a CSS file +changes: + +```shell +$ grunt watch +``` + +### Browser Support and Testing + +Pure is tested and works in: + +* IE 7+ +* Latest Stable: Firefox, Chrome, Safari +* iOS 6.x +* Android 4.x + +Before sending pull requests, please ensure that you open the test HTML files +in these environments. If you don't have access to all these environments, list +the ones that you have tested in on the pull request description. That way, we +know what's missing, and can help you out. + + +[Grunt]: http://gruntjs.com/ +[Node.js]: http://nodejs.org/ +[CSSLint]: https://github.com/stubbornella/csslint + + +Coding Standards and Style Guide +-------------------------------- + +Pure has adopted the [SMACSS][] conventions for writing CSS. If you are new to +SMACSS, you should give it a read, especially the section on [module rules][]. + +The [Extend][] section of the Pure website more info about the style guide and +naming conventions, along with examples of how to extend the library. + + +[SMACSS]: http://smacss.com/ +[module rules]: http://smacss.com/book/type-module +[Extend]: http://purecss.io/extend/ + + +Contributor License Agreement +----------------------------- + +Please [sign Pure's CLA][CLA] before sending pull requests. We can't merge your +pull requests unless you have a signed CLA. + +The CLA ensures that everyone who submits a work of authorship to Pure is +contributing work that is their own or for which they can authoritatively speak. +This protects the all of of developers who use Pure in their daily work, all of +whom rely on Pure's BSD license to appropriately cover their use of the library. + +The CLA does **not** transfer title or copyright of your contributed work to +Yahoo!. It merely guarantees that you approve the use of your work within Pure +and by those who use the library under the terms of its license. + +If you want to make contributions (software, documentation or other material) to +the Pure Project and such contributions could be covered under intellectual +property laws, you must submit a Contributor License Agreement (CLA) prior to +making your contribution: + +1. Review Pures's BSD license. All of Pure's code is issued under this license, + and contributions you make to the library will be subject to this license. + **Note:** that the BSD license is very liberal; it allows for reuse and + adaptation in commercial projects. + +2. [Sign the Pure CLA online][CLA]. You will receive confirmation of your CLA + submission via the email address provided on the CLA form. If you have + questions about the CLA, you can address them to yui-cla@yahoo-inc.com. + + +[CLA]: https://secure.echosign.com/public/hostedForm?formid=A9PFU5T58653A diff --git a/README.md b/README.md index 02c561e..f5ac85f 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,7 @@ Build From Source ----------------- Optionally, you can build Pure from its source on Github. To do this, you'll -need to have NodeJS and npm installed. We use [Grunt][] to build Pure. +need to have Node.js and npm installed. We use [Grunt][] to build Pure. ```shell $ git clone git@github.com:yui/pure.git @@ -79,10 +79,15 @@ $ npm install $ grunt ``` +### Build Files + Now, all Pure CSS files should be built into the `pure/build/` directory. All files that are in this build directory are also available on the CDN. The naming conventions of the files in the `build/` directory follow these rules: +* `[module]-core.css`: The minimal set of styles, ususally structural, that + provide the base on which the rest of the module's styles build. + * `[module]-nr.css`: Rollup of `[module]-core.css` + `[module].css` + `[module]-[feature].css` from the `src/[module]/` dir. This is the non-responsive version of a module. @@ -98,71 +103,39 @@ conventions of the files in the `build/` directory follow these rules: * `pure-nr-min.css`: A Rollup of all modules without @media queries. This is a non-responsive roll-up of everything. -**Note:** To save your fingers from The Developer Konami Code: ⌘⇥ ⌃C ↑ ⏎ use -the `grunt watch` task: - -```shell -$ grunt watch -``` - [Grunt]: http://gruntjs.com/ -Contributions and Code Standards --------------------------------- - -Feel free to file bugs and submit pull requests on Github! When submitting a -pull request, please checkout a new feature branch, and submit your pull request -from it. Please do not submit pull requests from your `master` branch. - -### Testing - -We use [CSSLint][] for basic testing to make sure we're shipping valid CSS which -compiles with standard best practices and rules. To run Pure's test use -[Grunt][]: - -```shell -$ grunt test -``` - -### Docs and Website - -Pure's website is also open source, so please file any issues or pull requests -for the docs or website over at the [`pure-site`][pure-site] repo. - -### CLA - -Please [sign the CLA][] before submitting pull requests. We can't merge your -pull requests unless you have a signed CLA. It's super easy and can be done -online. For more information regarding the CLA, please visit the -[Contribute][] page. - -### Versioning - -Pure adheres to [Semantic Versioning 2.0](http://semver.org/). - - -[CSSLint]: https://github.com/stubbornella/csslint -[pure-site]: https://github.com/yui/pure-site -[sign the CLA]: https://secure.echosign.com/public/hostedForm?formid=A9PFU5T58653A -[Contribute]: http://yuilibrary.com/contribute/cla/ - - Browser Support and Testing --------------------------- Pure is tested and works in: * IE 7+ -* Latest Stable Firefox/Chrome/Safari +* Latest Stable: Firefox, Chrome, Safari * iOS 6.x * Android 4.x -Before submitting pull requests, please ensure that you open the test HTML files -in these environments. If you don't have access to all these environments, list -the ones that you have tested in on the pull request description. That way, we -know what's missing, and can help you out. + +Docs and Website +---------------- + +[Pure's website][Pure] is also open source, so please open any issues or pull +requests for the docs and website over at the [`pure-site`][pure-site] +repository. + + +[pure-site]: https://github.com/yui/pure-site + + +Contributing +------------ + +See the [CONTRIBUTING file][] for information on how to contribute to Pure. + + +[CONTRIBUTING file]: https://github.com/yui/pure/blob/master/CONTRIBUTING.md License @@ -171,4 +144,5 @@ License This software is free to use under the Yahoo! Inc. BSD license. See the [LICENSE file][] for license text and copyright information. + [LICENSE file]: https://github.com/yui/pure/blob/master/LICENSE.md