Glossary
Warning
This glossary is for developers of nextstrain.org. We also have a general Nextstrain glossary for users.
Terms used in the nextstrain.org codebase, issues, documentation, and beyond. Arranged not alphabetically but conceptually since the terms are searchable and directly linkable.
- Source
An implementation concept encompassing both the place from which JSONs are fetched for a dataset and their authorization rules. Except for our sources for core, staging, community, and
/fetch
, sources currently have a 1:1 correspondence with groups. However, a group source and Group itself are not conceptually synonymous. Defined by code insrc/sources/
.- core
The primary general-interest datasets maintained by the Nextstrain team, shown first on the Nextstrain homepage. JSONs are fetched from the
nextstrain-data
S3 bucket.- staging
Testing area for core. JSONs are fetched from the
nextstrain-staging
S3 bucket.- community
Datasets and builds maintained by community members on GitHub, 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.
- user
An individual login account associated with one or more group. Managed in an AWS Cognito User Pool called
nextstrain.org
. Not to be confused with AWS IAM users.- Group
also Nextstrain Group
A named set of users with access to see and update a set of datasets and narratives. Each group has a related source, which typically authorizes access based on the group. Managed in an AWS Cognito User Pool called
nextstrain.org
. Not to be confused with AWS IAM groups.- route
A URL path (e.g.
/zika
), possibly parameterized (e.g./groups/:groupName/*
), at which nextstrain.org 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 Next.js app (sometimes referred to as the “static site”) performs client-side routing, which means it displays content based on the browser’s
location
.- request handler
also Express handler, route handler, or just handler.
Either an endpoint or middleware.
- endpoint
Function that sends the response to a request. Specific to an HTTP method and a resource or type of resource.
- middleware
Function that either responds to a request or does some preparation and then hands processing to the next request handler in the stack.