Skip to content

Gatsby check list

Flarnie Marchan edited this page Sep 26, 2017 · 175 revisions

The Gatsby site can be run locally by checking out the gatsby branch and running the following commands:

$ cd www
$ yarn install
$ yarn run dev
$ open http://localhost:8000

Version 1.0

This tracks the remaining work to be done:

Owner Size Description
Brian S IE11 renders this redbox https://cl.ly/0l410E1N0I1N
Flarnie S Add 'acknowledgements' page and fix link in footer (https://facebook.github.io/react/acknowledgements.html)

Pre-deploy checklist (before initial launch)

Owner Size Description
M Basic browser compatibility test
S Spot-check all current URLs are working in new site as well (including redirects)
Flarnie S Accessibility audit. (Flarnie will reach out to someone internally about this.)
Brian S Update Netlify to build from the master branch

Post-deploy checklist (once Jekyll is gone)

Owner Size Description
M Setup reactjs.org domain; Sophie has control of this. We'll need to setup DNS to forward to Netlify and then change the gh-pages branch to redirect to reactjs.org once DNS has propagated.
S Delete all of the old Jekyll-specific code
S Make sure 404 redirects work
M Restructure directories to be easier to browse in GitHub (coordinate with Erik Natagawa)
L Remove hard-coded HTML/CSS/JS from index.md, installation.md (eg tabs)
M Clean up demo examples in index.md
M Cleanup sidebar nav entry code
M Add Flow type annotations

Version 1.1

  • Localization
    • Coordinate with docs translators (via Erik Natagawa)
    • Agree on localization folder structure (eg markdown, YAML files, etc) Look to Jest for an example of how they handled the sidebar.
    • Add localization toggle to header
    • Integrate with Crowdin (crowdin.com/project/react) to download localized content
    • Generate localized URLs using said content
  • Search
    • Basic Algolia integration
    • Support offline; replace Algolia with pre-built Lunr (or js-search) index and custom Gatsby plug-in
    • Filter search based on current locale
  • Sidebar
    • Tutorial: Active link should update as you scroll (to stay in sync with anchor) on Desktop layout
    • Clean up layoutHasSidebar conditional in layout/template
  • Misc
    • Flow type all components instead of using 'PropTypes'.
    • Add back support for a 'non-JSX' view of interactive code samples.
    • Natural capitalization on the prev/next links. e.g. "Introducing JSX" rather than "Introducing Jsx"
    • Consider adding gatsby-plugin-nprogress based on Kyle's suggestion
    • Support different versions of React docs (maybe via a header dropdown). We could potentially use Netlify snapshots for this.
    • Consider adding Netlify and reactjs.org domains into TypeKit whitelist and re-add TypeKit
    • Tabbing on interactive code examples on home page is not correct - could be fixed.
    • Footer links that are not internal leave the user scrolled to a random place after clicking.

Notes from localization discussion with Eric Nakagawa

Plan on using the following APIs:

Notes to self:

  • Netlify (or Circle CI) could download the data from Crowdin
  • Brian reached out to Kyle about this and will sync up
  • Eric is happy to work with Netlify and Crowdin to try and speed up syncing process
    • It would be nice if this is fast enough that we can still generate site-previews for PRs
  • What is fallback for non-localized content? Crowdin serves English as fallback. Will just work.
  • How can site consume list of active locales? Is there a Crowdin API?
  • We will probably launch the Gatsby site initially without localization and then add it.
  • How does this impact urls (eg /docs/<file>, /docs/<lang>/<file>)?
  • Eric will take a pass at creating a proposal for folder structure for content.
Clone this wiki locally