Passagemath
General purpose mathematical software system, compatible fork of https://github.com/sagemath/sage supporting modularized installation with pip. Main repository, containing Sage library (src/), modularized pip-installable packages (pkgs/), Sage distribution (build/). Source repo for most packages in https://pypi.org/org/passagemath/
Install / Use
/learn @passagemath/PassagemathREADME
passagemath: General purpose mathematical software system in Python, a pip-installable modularized fork of SageMath
passagemath is open source mathematical software in Python, released under the GNU General Public Licence GPLv2+.
It is a fork of SageMath, which has been developed 2005-2026 under the motto "Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, and MATLAB".
The passagemath fork uses the motto "Creating a Free Passage Between the Scientific Python Ecosystem and Mathematical Software Communities." It was created in October 2024 with the following goals:
- providing instant, modularized installation with pip from binary wheels,
- this major project was started in May 2020 in the Sage codebase and completed in passagemath 10.5.29 (May 2025),
- establishing first-class membership in the scientific Python ecosystem,
- giving clear attribution of upstream projects,
- providing independently usable Python interfaces to upstream libraries,
- offering platform portability and integration testing services to upstream projects,
- inviting collaborations with upstream projects,
- building a professional, respectful, inclusive community,
- empowering Sage users to participate in the scientific Python ecosystem by publishing packages,
- developing a port to WebAssembly (Pyodide, emscripten-forge) for serverless deployment with Javascript,
- passagemath 10.8.1 (February 2026) published the first packages in the prefix.dev emscripten-forge-4x channel,
- developing a native Windows port,
- passagemath 10.6.1 (July 2025) published the first pip-installable wheel packages for native Windows on x86_64,
- passagemath packages became available in the MSYS2 software distribution in November 2025.
Moreover, the passagemath project:
- provides a stable, frequently updated version of the Sage distribution,
- periodically merges the compatible changes from the SageMath project
- passagemath 10.8.1 merged SageMath 10.9.beta3 (January 2026)
- integrates additional mathematical software,
- notably Macaulay2, a full set of GAP packages, and the Combinatorial Matrix Recognition library,
- curates a library of Sage user packages.
Full documentation is available online.
passagemath community
Join the Scientific Python Discord server and visit the #passagemath channel.
Join the BlueSky platform and follow @passagemath.org to receive announcements. On Mastodon / in the Fediverse, follow @passagemath.org@bsky.brid.gy.
Join passagemath.discourse.group for help and discussions.
As of 2026-02-07, the passagemath GitHub organization had 145 members.
People all around the globe have contributed to the development of SageMath since 2005, and hence of passagemath.
See CONTRIBUTING.md for how you can contribute: to passagemath itself or the surrounding mathematical software landscape.
Running passagemath in the cloud (Google Colab)
Just create a Google Colab notebook and type:
%pip install --prefer-binary passagemath-standard
Then import the top level:
from sage.all import *
Note that the Colab notebook uses a Python kernel, so no Sage-specific preparsing is in effect. When following code examples in the documentation, be sure to switch to the "Python" tab.
Running passagemath in the cloud (molab.marimo.io)
Just create a Marimo notebook on molab.
Use the "Manage Packages" icon on the left to install "passagemath-standard".
Marimo may prompt you a few times that the notebook may need to be restarted; just confirm it.
Marimo specifics
This information applies to local installs of marimo (using pip install marimo or sage -i marimo) as well as the cloud.
In the marimo notebook, no Sage-specific preparsing is in effect. When following code examples in the documentation, be sure to switch to the "Python" tab.
By design of the reactive notebook, from sage.all import * will not work.
Import the global bindings that you need manually, for example:
from sage.all import ZZ
V = ZZ**8; V
The marimo rich output backend will initialize automatically after any sage.all imports in an interactive session.
This enables LaTex and 2D/3D plot graphics.
There is a test notebook available in the passagemath-marimo-notebooks repository that displays the compatible rich output functionality.
Local installation of passagemath: Supported platforms
passagemath attempts to support and provides binary wheels suitable for all major Linux distributions and recent versions of macOS. Binary wheels for native Windows (x86_64) are gradually being made available since the passagemath-10.6.x series. A part of the functionality is also available on Windows using MSYS2. Use of the full functionality on Windows currently requires the use of Windows Subsystem for Linux (WSL) or virtualization.
| Version | CPython | Toolchains | Operating Systems | Architectures | Notes | |------------------------------------------------------------------------------|-----------|-------------------|-----------------------------|---------------|----------------------------| | 10.4.x | 3.9–3.12 | GCC 8.4–14, clang | Linux, macOS, Windows (WSL) | x86_64, ARM | EOL 2024-12 | | 10.5.x | 3.9–3.13 | GCC 9–14, clang | Linux, macOS, Windows (WSL) | x86_64, ARM | EOL 2025-10 | | 10.6.x | 3.10–3.14 | GCC 9–15, clang | Linux, macOS, Windows (WSL) | x86_64, ARM | old stable <br>EOL 2026-10 | | | | mingw32 + MSVC | Windows | x86_64, ARM | partial functionality | | | | mingw32 | Windows (MSYS2) | x86_64, ARM | partial functionality | | 10.8.x <br>(main) | 3.11–3.14 | GCC 9–16, clang | Linux, macOS, Windows (WSL) | x86_64, ARM | stable | | | | mingw32 + MSVC | Windows | x86_64, ARM | partial functionality | | | | mingw32 | Windows (MSYS2) | x86_64, ARM | partial functionality | | | | Emscripten | any | Wasm32 | partial functionality |
Detailed information on supported platforms for a specific version of passagemath can be found in the release notes.
Full installation of passagemath from binary wheels on PyPI
Complete sets of binary wheels are provided on PyPI for the supported Python versions for Linux and macOS, both for the x86_64 and ARM architectures. The Linux wheels are also suitable for use within Windows Subsystem for Linux (WSL).
Unless you need to install passagemath into a specific existing environment, we recommend
to create and activate a fresh virtual environment over a supported Python
for example ~/passagemath-venv/. (The dollar sign ($) indicates the shell prompt;
do not type it.)
$ python3 --version
Python 3.12.7
$ python3 -m venv ~/passagemath-venv
$ source ~/passagemath-venv/bin/activate
(Activating the virtual environment only takes effect for the current terminal session; repeat the last command whenever you open a new terminal session in which you wish to use passagemath.)
Related Skills
openhue
337.7kControl Philips Hue lights and scenes via the OpenHue CLI.
sag
337.7kElevenLabs text-to-speech with mac-style say UX.
weather
337.7kGet current weather and forecasts via wttr.in or Open-Meteo
tweakcc
1.4kCustomize Claude Code's system prompts, create custom toolsets, input pattern highlighters, themes/thinking verbs/spinners, customize input box & user message styling, support AGENTS.md, unlock private/unreleased features, and much more. Supports both native/npm installs on all platforms.
