GitHub - nytimes/library: A collaborative documentation site, powered by Google Docs.

github.com
5 min read
standard
A collaborative documentation site, powered by Google Docs. - GitHub - nytimes/library: A collaborative documentation site, powered by Google Docs.
Library

A collaborative newsroom documentation site, powered by Google Docs.

Table of Contents

Demo Site & User Guide

Documentation about how to get started with Library is hosted as a working (read only) demo on Heroku. Consult the site for more detailed instructions than this readme about how to get the most out of Library: https://nyt-library-demo.herokuapp.com.

Contacting us

Love Library? Let us know by joining our Google Group and dropping us a line. You'll also stay up to date with the latest Library features via our release notes, which get sent to this list.

Community

Here are some of the organizations using Library so far.

Marketplace

The New York Times

Northwestern University Knight Lab

Star Tribune

WBEZ

The Los Angeles Times Data and Graphics Department

Contributing

See CONTRIBUTING.md for information on how to contribute code and/or documentation on GitHub or on the demo site.

Questions

If you have questions about how to get your copy of Library up and running, join our Google Group, and let us know what you're running into. We also keep an eye on the #proj-library channel in the News Nerdery Slack. We'll do our best to answer your questions.

Development Workflow

Clone and cd into the repo: git clone git@github.com:nytimes/library.git && cd library From the Google API console, create or select a project, then create a service account with the Cloud Datastore User role. It should have API access to Drive and Cloud Datastore. Store these credentials in server/.auth.json . To use oAuth, you will also need to create oAuth credentials.

To use the Cloud Datastore API for reading history, you will need to add in your GCP_PROJECT_ID . Install dependencies: npm install --no-optional Create a .env file at the project root. An example .env might look like

# node environment (development or production) NODE_ENV=development # Google oAuth credentials GOOGLE_CLIENT_ID=123456-abcdefg.apps.googleusercontent.com GOOGLE_CLIENT_SECRET=abcxyz12345…
Read full article