ERDDAP / erddap

ERDDAP is a scientific data server that gives users a simple, consistent way to download subsets of gridded and tabular scientific datasets in common file formats and make graphs and maps. ERDDAP is a Free and Open Source (Apache and Apache-like) Java Servlet from NOAA NMFS SWFSC Environmental Research Division (ERD).
Creative Commons Zero v1.0 Universal
84 stars 59 forks source link
data environmental erddap noaa scientific server

ERDDAP™: Easier Access to Scientific Data

Welcome to the ERDDAP™ GitHub repository

ERDDAP™ is a scientific data server that gives users a simple, consistent way to download subsets of gridded and tabular scientific datasets in common file formats and make graphs and maps. ERDDAP™ is a Free and Open Source (Apache and Apache-like) Java Servlet developed by the NOAA NMFS SWFSC Environmental Research Division (ERD).

A live ERDDAP™ installation can be seen at: https://coastwatch.pfeg.noaa.gov/erddap/index.html.

ERDDAP SST data example graph page

Example screenshot of ERDDAP™'s web user interface 'Make-a-Graph' page

Developing with ERDDAP™

ERDDAP™ is a Java Servlet-based application and can be run in any compatible Java Servlet Container/Application Server, such as Apache Tomcat.

Local development and testing of ERDDAP™ code can be done without a production-scale installation. Two approaches are recommended:

For operational ERDDAP™ deployment, Apache Tomcat is recommended. See Deploying ERDDAP™ Operationally for instructions.

Running JUnit tests

Simply run mvn test in a terminal to run the JUnit tests.

Note that by default tests that do an image comparison are enabled. To disable those tests add ImageComparison to the excludedGroups section of the surefire configuration. It is recommended you run the image tests before making changes to ERDDAP™ so you can generate a baseline set of images that will be later used for comparison.

Metrics

Metrics are collected using Prometheus. You can see the metrics on a local server at /erddap/metrics.

Building a war

mvn package will create a war file.

If you'd like to skip the tests while building use mvn package -DskipTests. You can use the skipTests flags with other maven commands.

Running the code formatter

To format code locally you can run:

(Windows) mvn git-code-format:format-code -D"gcf.globPattern=**/*"

(Other) mvn git-code-format:format-code -Dgcf.globPattern=**/*

Code should be automatically formatted during a git pre-commit step to simplify reviews. It can still be useful sometimes to format code before making a git commit.

Contributing Code to ERDDAP™

Below are relevant links for getting involved with the ERDDAP™ community and contributing to ERDDAP:

Deploying ERDDAP™ Operationally

Instructions for installing ERDDAP™ in Apache Tomcat are available at: https://erddap.github.io/setup.html.