react/docs
Richard Littauer 00e89454ec Nominalized 'shallow copy'
I mis-parsed 'shallow copies' as adjective noun, instead of as a compound verb. I've adjusted the text to make it easier to parse on the first read, which should also help ESL learners to be able to parse it easier.
2015-03-11 16:22:24 -07:00
..
_css Update Bourbon files (4.0.2) 2014-08-13 11:20:00 -07:00
_data [docs] Update acknowledgements 2015-03-10 13:57:44 -07:00
_includes [docs] Use subitem in new nav generation 2014-09-29 13:48:25 -07:00
_js [docs] show line numbers in online jsx compiler 2015-03-01 11:53:06 -08:00
_layouts Update relevant URLS to HTTPS 2015-03-10 18:11:29 +09:00
_plugins Point to Flux site for Flux docs 2014-09-25 12:34:22 -07:00
_posts It\ns -> Its 2015-03-11 15:28:24 -07:00
blog 2 docs fixes. 2014-06-24 15:12:19 -07:00
css [docs] show line numbers in online jsx compiler 2015-03-01 11:53:06 -08:00
docs Nominalized 'shallow copy' 2015-03-11 16:22:24 -07:00
downloads v0.13 starter kit 2015-03-10 15:08:26 -07:00
img Update round-up 25 2015-03-04 12:32:37 -08:00
js Normalize line endings 2014-01-17 16:28:32 -08:00
tips Document justification for dangerouslySetInnerHTML, fixes #2256 2015-01-21 12:47:36 -08:00
404.md Simple custom 404 page. 2014-06-24 14:11:37 -07:00
Gemfile Use jekyll-redirect-from instead of our other redirect method 2014-08-13 12:38:09 -07:00
Gemfile.lock Bumps safe_yaml to 1.0.4 (was 1.0.3) to fix bug 2015-02-12 17:40:57 -06:00
README.md Update README.md insert comma 2015-01-12 11:29:17 -08:00
Rakefile Use --harmomy in docs examples for cleaner code 2014-10-28 11:06:30 -07:00
_config.yml Bump version so we can get back to work 2015-03-10 15:06:35 -07:00
acknowledgements.md Acknowledge ProjectMoon for allowing us to use the flux name on npm 2014-09-21 21:10:39 -07:00
downloads.md Update docs to align with 0.12 better 2014-10-22 14:01:54 -07:00
extractCode.js lint from root 2015-02-20 04:06:15 +03:00
favicon.ico Initial public release 2013-05-29 12:54:02 -07:00
feed.xml [docs] RSS: Pass title through xml_escape 2013-06-03 11:36:04 -07:00
html-jsx.md Move htmltojsx.js to React-Magic project. 2014-09-06 22:51:52 -07:00
index.md Update homepage for new JSX/JS editor 2014-01-17 16:46:50 -08:00
jsx-compiler.md Fix docs typo 2014-01-29 11:19:45 -08:00
support.md Don't use <center> for twitter embeds 2014-02-05 15:51:06 -08:00

README.md

React Documentation & Website

We use Jekyll to build the site using (mostly) Markdown, and we host it by pushing HTML to GitHub Pages.

Installation

If you are working on the site, you will want to install and run a local copy of it.

Dependencies

In order to use Jekyll, you will need to have Ruby installed.

Mac OS X comes pre-installed with Ruby, but you may need to update RubyGems (via gem update --system). Otherwise, RVM and rbenv are popular ways to install Ruby. Once you have RubyGems and installed Bundler (via gem install bundler), use it to install the dependencies:

$ cd react/docs
$ bundle install # Might need sudo.
$ npm install # Might need sudo.

Instructions

The site requires React, so first make sure you've built the project (via grunt).

Use Jekyll to serve the website locally (by default, at http://localhost:4000):

$ cd react/docs
$ bundle exec rake
$ bundle exec jekyll serve -w
$ open http://localhost:4000/react/

We use SASS (with Bourbon) for our CSS, and we use JSX to transform some of our JS. If you only want to modify the HTML or Markdown, you do not have to do anything because we package pre-compiled copies of the CSS and JS. If you want to modify the CSS or JS, use Rake to compile them:

$ cd react/docs
$ bundle exec rake watch # Automatically compiles as needed.
# bundle exec rake         Manually compile CSS and JS.
# bundle exec rake js      Manually compile JS, only.

Afterthoughts

Updating facebook.github.io/react

The easiest way to do this is to have a separate clone of this repository, checked out to the gh-pages branch. We have a build step that expects this to be in a directory named react-gh-pages at the same depth as react. Then it's just a matter of running grunt docs, which will compile the site and copy it out to this repository. From there, you can check it in.

Note: This should only be done for new releases. You should create a tag corresponding to the release tag in the main repository.

We also have a rake task that does the same thing (without creating commits). It expects the directory structure mentioned above.

$ bundle exec rake release

Removing the Jekyll / Ruby Dependency

In an ideal world, we would not be adding a Ruby dependency on part of our project. We would like to move towards a point where we are using React to render the website.