Skip to main content

mip package manager

⚠️ Warning: This project is at a very early stage of development and is subject to breaking changes.

A pip-style package manager for MATLAB packages.

Installation and Setup

Step 1: Install the package using pip.

pip install mip-package-manager

Or install from source:

# First, clone the repository
git clone https://github.com/mip-org/mip-package-manager.git
cd mip-package-manager

# Then, install the package
pip install -e .

Step 2: Set up the MATLAB integration.

mip setup

This command will create the necessary directories and files in ~/.mip/matlab for MATLAB integration.

Then add ~/.mip/matlab to your MATLAB path permanently. You can do this in MATLAB:

addpath('~/.mip/matlab')
savepath

Alternatively, you can add this to your MATLAB startup.m file (typically located at ~/Documents/MATLAB/startup.m):

addpath('~/.mip/matlab')

Note: After upgrading to a new version of mip, run mip setup to ensure you have the latest MATLAB integration.

Usage

For detailed documentation on all commands and features, see the Usage Guide.

Install a package

Either from the command line or from within MATLAB, run:

mip install package_name

For example, to install the chebfun package:

mip install chebfun

This downloads and installs a package to ~/.mip/packages/package_name.

Table of installable packages

Using packages in MATLAB

After setting up the MATLAB path and installing packages, you can load them in MATLAB:

% Load a package (adds it to the path for the current session)
mip load package_name

% Now you can use the package functions

For example:

mip load chebfun
% Now use chebfun functions

List installed packages

mip list

Shows all currently installed packages.

Uninstall a package

mip uninstall package_name

Removes an installed package after confirmation. Also removes any packages that depend on it.

Internal Package Structure

  • Packages are stored in ~/.mip/packages/
  • Each package is extracted from a zip (.mhl) file into its own directory
  • Each package has a mip.json file containing metadata, a load_package.m that gets called when the package is loaded, and an unload_package.m that gets called when the package is unloaded.
  • The +mip MATLAB namespace is installed in ~/.mip/matlab/+mip/

Example

# Install a package
mip install chebfun

# List installed packages
mip list

# Use in MATLAB
matlab
>> mip load chebfun
>> % Now use the toolbox functions

# Uninstall
mip uninstall chebfun

How to add new packages

For now mip supports a limited set of packages. To add a new package, you can submit a pull request to https://github.com/mip-org/mip-core.

Requirements

  • Python 3.6+
  • MATLAB

Authors

Jeremy Magland and Dan Fortunato - Center for Computational Mathematics, Flatiron Institute

License

Apache License 2.0

Metadata

Release files for mip-package-manager 0.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mip-package-manager 0.3.2
File Size Uploaded
mip_package_manager-0.3.2.tar.gz 22.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mip-package-manager 0.3.2
File Interpreter ABI Platform
mip_package_manager-0.3.2-py3-none-any.whl Python 3 none any Details

Total release size: 50.0 kB

Release files / mip_package_manager-0.3.2.tar.gz

Download URL mip_package_manager-0.3.2.tar.gz
Size 22.1 kB
Tags Source
SHA-256 checksum
How to use checksums
ebeeb0d8f11e3a842688481cc591c82548afeb3094578265536088e87345ab30
BLAKE2b-256 checksum
How to use checksums
9a76374ddd7ed05511f945244735fa5cd09472e87974fc870da1098766707243
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Dec 20, 2025.

Transparency log

Release files / mip_package_manager-0.3.2-py3-none-any.whl

Download URL mip_package_manager-0.3.2-py3-none-any.whl
Size 27.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
206cce4c9714668020a2a38ddd307c452cee9423fb4c800fbf7c8e4bc2628480
BLAKE2b-256 checksum
How to use checksums
ef9cb2c47d7bb3490107f6dcae4b6d282b296ae08a0edf2994da3a0e0aaf99cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Dec 20, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.2 This release

2 release files

0.3.1

2 release files

0.2.0

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page