The Nextstrain website


The canonical place for the definition of terms used in Nextstrain code, issues, documentation, and beyond. Arranged not alphabetically but conceptually since the terms are searchable and directly linkable.


A command-line application used for phylogenetic analysis.


A web application used for phylogenetic visualization and analysis.


A build is a collection of data and code that produces datasets for visualization on Our core builds—for example Zika—are organized as git repositories hosted on GitHub which contain a Snakemake workflow using Augur, configuration, and data. Builds produce JSONs which can be visualized by Auspice and may be deployed to Nextstrain.


An implementation concept encompassing both the place from which JSONs are fetched for a build and the authorization rules for their visibility. Except for our sources for core, staging, and community builds, sources have a 1:1 correspondence with groups. Defined by code in auspice/server/sources.js.


A collection of JSONs for a single conceptual thing; the shared file prefix of a set of JSONs. For example flu/seasonal/h3n2/ha/2y identifies a dataset which corresponds to the files:

  • flu_seasonal_h3n2_ha_2y_meta.json
  • flu_seasonal_h3n2_ha_2y_tree.json
  • flu_seasonal_h3n2_ha_2y_tip-frequencies.json

Some builds produce a single, synonymous dataset, like Zika. Others, like seasonal flu, produce many datasets.


A Markdown file containing special annotations for display in Auspice. Deployed to sources alongside datasets.


Special .json files produced and consumed by Augur and visualized by Auspice; the files making up a dataset.


The primary general-interest builds maintained by the Nextstrain team, shown first on the Nextstrain homepage. JSONs are fetched from the nextstrain-data S3 bucket.


Testing area for the core builds. JSONs are fetched from the nextstrain-staging S3 bucket.


Builds maintained by community members, with no coordination from the Nextstrain team required. JSONs are fetched from community-managed GitHub repositories. Some community builds are highlighted on the Nextstrain homepage.


An individual login account associated with one or more groups. Managed in an AWS Cognito User Pool called Not to be confused with AWS IAM users.


A named set of users with access to see and update a set of builds. Each group has a related source, which typically authorizes access based on the group. Managed in an AWS Cognito User Pool called Not to be confused with AWS IAM groups.


A URL path (e.g. /zika), possibly parameterized (e.g. /groups/:groupName/*), at which provides content. Routes map paths to resources (i.e. HTML pages, images, datasets, narratives, etc).

The process of finding a matching route, if any exists, is called routing.

The Express server performs server-side routing, which means it responds to HTTP requests for a matching path. Express route declarations include the stack of request handlers to use.

The Gatsby app performs client-side routing, which means it displays content based on the browser’s location.

Request handler

Either an endpoint or middleware. Sometimes called an Express handler, route handler, or just handler.


Function that sends the response to a request. Specific to an HTTP method and a resource or type of resource.


Function that either responds to a request or does some preparation and then hands processing to the next handler in the stack.