Back to Programs

Science and medicine

IOOS

Our eyes on the ocean, coasts, and Great Lakes

NetCDFZarrjavapythonr

Participation history

5 GSoC years

2026

7 projects

Official year page

Filling the gaps within the IOOS quality control schema for ocean glider data.

I propose a development period of 5 stages to gauge community needs, assess the toolbox, and potentially augment it with additional tests or...

Integrating Empirical Dynamic Modeling (EDM) into the Fisheries Integrated Modeling System (FIMS)

This project proposes the integration of Empirical Dynamic Modeling (EDM) into the Fisheries Integrated Modeling System (FIMS), an open-source...

Scalable OCSMesh: Parallelization and Spatial Partitioning

This project aims to transform OCSMesh into a truly HPC-native tool by migrating its parallel architecture to mpi4py for distributed computing....

Enhancing CrocoLakeTools with IOOS Data Sync from ERDDAP

CrocoLakeTools currently downloads ocean datasets from static sources, either a fixed URL or a fixed file list. This works for stable snapshots like...

Enhancing noaa_coops: Bringing Software Engineering Best Practices to Ocean Data Access

The noaa_coops package provides oceanographic data access but has critical gaps: large date ranges fail without pagination, no retry logic for rate...

Add sex structure to FIMS statistical-catch-at-age model

This project extends the Fisheries Integrated Modeling System (FIMS) to support user-defined sex structure in population models. Currently, FIMS...

Enhance NOS skill assessment package’s user and developer experience

The NOS OFS Skill Assessment package is a Python-based framework used to evaluate operational forecast systems (OFS) through observation retrieval,...

2025

8 projects

Official year page

MQTT Protocol Support for ERDDAP

MQTT is a lightweight messaging protocol which is used by IoT based devices as a way to transfer data at very high speeds. Adding its support to...

Build web UI versions for IOOS tools (ioos-qc and compliance checker)

This project aims to develop a user-friendly, browser-based interface for oceanographic data quality control tools. The goal is to create an...

Extending Crocolake’s available datasets

CrocoLakeTools is a Python package designed to convert oceanographic datasets from various formats (like netCDF and CSV) into CrocoLake’s unified...

Update ERDDAP™ page rendering to use a template framework

Proposal Summary This project aims to modernize ERDDAP™ page rendering by migrating it to a templating framework. The current rendering process...

Improving Usability and Features of the Phytoclass R Package and GUI for Phytoplankton Estimation

This GSoC project focuses on enhancing the usability and functionality of the phytoclass R package and its Shiny-based GUI, which are used to...

pyOBIS for stakeholders

This project addresses the issue of translating complex marine biodiversity data into actionable knowledge for ecosystem management in Florida. It...

Migrating SurveyJoin to a Relational Database for Scalability and Improved Performance

The Northeast Pacific Ocean hosts a diverse array of marine species, yet the absence of a standardized, international database for transboundary...

OCSMesh Parallelization

OCSMesh is a Python package designed for generating unstructured meshes tailored to ocean modeling. However, its current workflow, particularly the...

2024

6 projects

Official year page

Enhancements for Erddap administrators

Erddap is a data server used by many organizations as a way to download scientific data in various formats. However, adding these datasets to Erddap...

Data Visualization with Gliderpy

The project focuses on improving the Gliderpy package by incorporating a pandas-flavor plotting interface. This interface will allow for the creation...

QA/QC for glider data

My proposal aims to improve the quality assurance and quality control (QA/QC) practices for underwater glider data within the ioos_qc library....

Enhancing Searvey: Real-Time Observational Data Unification, Analysis, and Retrieval

Extend the capabilities of the Searvey Python package to retrieve on-demand oceanographic data from additional sources (Canadian Hydrographic...

Kerchunk enhancements for fast NODD GRIB aggregations

Kerchunk is a python library which helps in streamline access to the climate modelling data stored in grib and other formats, by creating...

STOFS Subsetting Tool

Developing a subsetting tool to access ocean forecast data is critical and addresses an immediate need for maximizing the utilization of STOFS model...

2022

4 projects

Official year page

Efficient access to IOOS data in the cloud: interfacing WRF forecast grib2 data to zarray

The Kerchunk package provides a means to access legacy geospatial datasets, such as GRIB2, in a cloud performant manor by creating a reference file...

Echoshader: Interactive visualization of ocean sonar data

Echoshader, an open source project, aims to enhance the ability to interactively visualize large amounts of cloud-based data to accelerate the data...

Refactoring of erddapy into separate core and object layers

The erddapy package provides a Python interface to the ERDDAP data server API. Currently, most of erddapy's functionality is concentrated into a...

Making ocean biodiversity data easily accessible with python (pyobis revamp)

The goal of the project is to modify the pyobis python package to support the new OBIS API v3. This project also aims to improve tests coverage,...

2021

3 projects

Official year page

Translate ERDDAP User Interface Into Different Languages

ERDDAP is a data server widely used in many organizations over the world to upload and gather data sets on the ocean environment, but currently it...

erdappy-griddap: Accessing gridded oceanographic data in near real time

This proposal will add griddap functionality to the erddapy package and simplify the API. Support for griddap will enable near real time access to...

Machine Learning for Sea Floor Sampling and IOOS Demo Data Center migration to Jupyterbook

Sea Floor Sampling is a tedious job and requires a lot of manual work. This project intends to automate the process of labelling the videos using...