| Sub organizations | IDEAS LIST | Contributor guides |
NumFOCUS will be applying again as an umbrella mentoring organization for Google Summer of Code 2026. NumFOCUS supports and promotes world-class, innovative, open source scientific software.
NumFOCUS is committed to promoting and sustaining a professional and ethical community. Our Code of Conduct is our effort to uphold these values and it provides a guideline and some of the tools and resources necessary to achieve this.
Google Summer of Code is an annual open source internship program sponsored by Google. This repository contains information specific to NumFOCUS' participation in GSoC. For general information about the competition, including this year's application timeline and key phases involved, please see the GSoC website
This Git repository stores information about NumFOCUS' application for Google Summer of Code in the current and previous years.
Table of Contents
NumFOCUS is participating as a umbrella organization. This means that you will need to identify a specific project to apply to under the NumFOCUS umbrella. (Projects are listed below.)
Read this document to learn how to apply for the GSoC program with NumFOCUS. Please also check out our ideas list.
For project-specific questions, contact the project directly. Every project has a Code of Conduct and a contributing guide, please read these before opening an issue about getting started with GSoC. GSoC is hands-on: rather than sending introductory emails, begin by triaging or solving issues to get to know the team.
For general questions, open an issue in our issue tracker or email gsoc@numfocus.org. You can also subscribe to the mailing list at https://groups.google.com/a/numfocus.org/forum/#!forum/gsoc.
At the organization level, contributors must clearly cite any AI tools used. AI use is generally acceptable but determined by each sub-organization/project; verify the project's AI acceptance and guidelines before using AI. Please read Google's Guidance for GSoC Contributors using AI tooling in GSoC 2026.
If you want to participate as a sub organization of NumFOCUS please read this guide.
In alphabetic order.
|
|
AiiDA is a python framework for managing computational science workflows, with roots in computational materials science. It helps researchers manage large numbers of simulations (10k, 100k, 1M, ...) and complex workflows involving multiple executables. At the same time, it records the provenance of the entire simulation pipeline with the aim to make it fully reproducible. |
|
ArviZ is a project dedicated to promoting and building tools for exploratory analysis of Bayesian models. It currently has a Python and a Julia interface. ArviZ aims to integrate seamlessly with established probabilistic programming languages like PyStan, PyMC, Turing, Soss, emcee, or Pyro. Where the probabilistic programming languages aim to make it easy to build and solve Bayesian models, the ArviZ libraries aim to make it easy to process and analyze the results from those Bayesian models. Website | Ideas List | Contact (GH Discussions) | Source Code |
|
CVXPY is an open source Python-embedded modeling language for convex optimization problems. It lets you express your problem in a natural way that follows the math, rather than in the restrictive standard form required by solvers. |
|
The Data Retriever ecosystem improves reproducible research through data product management. The platform takes advantage of freely available data sources in a variety of formats, standardizes them, and makes them available to scientists in a form that is ready to analyze. Data sources range from tabular data, spatial data packages and APIs. Several data packages use the ecosystems, and many projects support or rely on the ecosystem. |
|
Gammapy is a community-developed, open-source Python package for gamma-ray astronomy built on Numpy, Scipy and Astropy. It is the core library for the CTAO Science Tools but can also be used to analyse data from existing imaging atmospheric Cherenkov telescopes (IACTs), such as H.E.S.S., MAGIC and VERITAS. It also provides some support for Fermi-LAT and HAWC data analysis.. |
|
GRASS is a powerful computational engine for raster, vector, and geospatial processing. It supports terrain and ecosystem modeling, hydrology, data management, and imagery processing. With a built-in temporal framework and Python API, it enables advanced time series analysis and rapid geospatial programming, optimized for large-scale analysis on various hardware configurations. GRASS provides a curated repository of contributed tools that continue to be maintained and enhanced as research and technology evolves. Website | Ideas List | Contact | Source Code |
|
Gridap is a new generation, open-source, finite element (FE) library implemented in the Julia programming language. Gridap aims at adopting a more modern programming style than existing FE applications written in C/C++ or Fortran. |
|
HoloViz is an open-source Python ecosystem for creating interactive visualizations and data applications with minimal code and no required JavaScript. It connects tools like Panel, HoloViews, hvPlot, Datashader, and Bokeh so data scientists can move smoothly from exploration in a notebook to full web dashboards using the same declarative workflow. HoloViz emphasizes scalability for large datasets, rich interactivity such as linked plots and widgets, and easy deployment to standalone apps or cloud services—all while keeping the focus on simple, Python-first development. Website | Ideas List | Contact | Source Code |
|
JuMP is a modeling language and collection of supporting packages for mathematical optimization in Julia. JuMP makes it easy to formulate and solve a range of problem classes, including linear programs, integer programs, conic programs, semidefinite programs, and constrained nonlinear programs. Website | Ideas List | Contact | Source Code |
|
|
Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python. Matplotlib makes easy things easy and hard things possible. Website | Ideas List | Gitter | Source Code |
|
pvlib python is a community developed toolbox that provides a set of functions and classes for simulating the performance of photovoltaic energy systems and accomplishing related tasks. The core mission of pvlib python is to provide open, reliable, interoperable, and benchmark implementations of PV system models. |
|
PyMC is a python module for Bayesian statistical modeling and model fitting which focuses on advanced Markov chain Monte Carlo and variational fitting algorithms. Its flexibility and extensibility make it applicable to a large suite of problems. |
|
PySAL is a python library for geographical data science. It consists of 18 subpackages that cover a wide range of spatial analytical methods from exploratory spatial data analysis, spatial interaction modeling, spatial optimization, spatial econometrics, segregation, and spatial interpolation, among others. Website | Discord | Ideas Page | Source Code |
|
PyTorch-Ignite is a high-level library to help with training neural networks in PyTorch Website | Discord | GitHub Discussions | Ideas Page | Source Code |
|
QuTiP is a software for simulating quantum systems. QuTiP aims to provide tools for user-friendly and efficient numerical simulations of open quantum systems. It can be used to simulate a wide range of physical phenomenon in areas such as quantum optics, trapped ions, superconducting circuits and quantum nanomechanical resonators. In addition, it contains a number of other modules to simplify the numerical simulation and study of many topics in quantum physics such as quantum optimal control, quantum information, and computing. Website | Contact | Ideas Page | Source Code |
|
sbi (simulation-based inference) is a Python package for performing Bayesian inference on complex, simulator-defined models, where the likelihood function is intractable. It leverages the simulator directly, using modern probabilistic machine learning methods like normalizing flows and neural posterior estimation. sbi is built on PyTorch and is designed for both research and application. Website | Discord | Ideas Page | Source Code |
|
Scikit-bio is an open-source Python library for bioinformatics, providing versatile data structures, algorithms and educational resources. It features a comprehensive suite of tools for biological "omics" data analysis, including the processing and analysis of high-dimensional, sparse and knowledge graph-organized data. |
|
|
SciML is an open source software organization created to unify the packages for scientific machine learning. This includes the development of modular scientific simulation support software, such as differential equation solvers, along with the methodologies for inverse problems and automated model discovery. By providing a diverse set of tools with a common interface, we provide a modular, easily-extendable, and highly performant ecosystem for handling a wide variety of scientific simulations. Website | Contact | Ideas Page | Source Code |
|
Software for Bayesian Data Analysis. Stan combines a probabilistic programming language, written in OCaml, with a collection of inference algorithms, written in C++, and interfaces for Python, Julia, and R. Stan's probabilistic programming language is suitable for a wide range of applications, from simple linear regression to multi-level models and time-series analysis. The Stan ecosystem of tools for validation and visualization facilitates decision-making and communication. Website | Contact | Ideas Page | Source Code |
|
|
The toqito package is an open source library for studying various objects in quantum information, namely, states, channels, and measurements. toqito focuses on providing numerical tools to study problems pertaining to entanglement theory, nonlocal games, and other aspects of quantum information that are often associated with computer science. Website | Discord | Ideas Page | Source Code |















