front-end @ Tidepool

Table of contents

Repositories and published packages

Tidepool has several repositories containing client-side JavaScript code in support of two client applications on the Tidepool platform, blip and the Tidepool uploader. The GitHub repositories containing the code for these two applications are:

  • blip
  • chrome-uploader
  • tideline: data visualization code (in the process of being deprecated)
  • viz: data visualization code (an incremental rewrite of tideline that is currently in progress)
  • platform-client: Tidepool platform API utilities (to be deprecated eventually, but replacement efforts not yet started)
  • sundial: a thin wrapper around the Moment.js JavaScript datetime library (to be deprecated eventually and not used as an dependency in viz, but other replacement efforts have not yet been started)

For the four of these repositories that are internal dependencies rather than application code, we publish the repository code to the node package manager (npm), which we also use to manage our external JavaScript dependencies:

The newest of these—@tidepool/viz—uses the @tidepool npm "scope", a new(ish) feature. Any future internal dependencies also published to npm should also use the @tidepool scope.

Common tech stack and usage

Our client applications at Tidepool are single-page applications using React with Redux for state management. For information on our general approach to React and Redux development at Tidepool, please read the following:

Developer guides

For each Tidepool client application and currently active dependent repository, please see the appropriate developer guide for more information about each project's architecture, usage of dependencies, etc.: