mathworks / matlab-proxy

Python® package enables you to open a MATLAB® desktop in a web browser tab.
Other
43 stars 23 forks source link

MATLAB Proxy

GitHub Workflow Status   PyPI badge   codecov   Downloads


matlab-proxy is a Python® package which enables you to launch MATLAB® and access it from a web browser.

Installation of this package creates an executable matlab-proxy-app, which launches MATLAB and provides a URL to access it.

The MATLAB Proxy is under active development. For support or to report issues, see the Feedback section.


Table of Contents

Requirements

Installation

PyPI

This repository can be installed directly from the Python Package Index.

python -m pip install matlab-proxy

Building From Sources

Building from sources requires Node.js® version 16 or higher. Click here to install Node.js

git clone https://github.com/mathworks/matlab-proxy.git

cd matlab-proxy

python -m pip install .

Installing the package creates an executable called matlab-proxy-app, which is placed onto your system PATH by pip, usually in: $HOME/.local/bin/

# Confirm it is on the PATH
which matlab-proxy-app

Usage

Once the matlab-proxy package is installed.

The following options are available in the status panel (some options are only available in a specific context):

Option Description
Start MATLAB Start your MATLAB session. Available if MATLAB is stopped.
Restart MATLAB Restart your MATLAB session. Available if MATLAB is running or starting.
Stop MATLAB Stop your MATLAB session. Use this option if you want to free up RAM and CPU resources. Available if MATLAB is running or starting.
Sign Out Sign out of MATLAB session. Use this to stop MATLAB and sign in with an alternative account. Available if using online licensing.
Unset License Server Address Unset network license manager server address. Use this to stop MATLAB and enter new licensing information. Available if using network license manager.
Feedback Provide feedback. Opens a new tab to create an issue on GitHub.
Help Open a help pop-up for a detailed description of the options.

Examples

Platform Support

Linux

This package is fully supported for the Linux Operating System.

Windows

Windows® Operating System support was introduced in package version v0.4.0. Install the version >=0.4.0 to use the package on Windows.

# To upgrade an existing installation of matlab-proxy package:
$ pip install --upgrade matlab-proxy>=0.4.0

MacOS

MacOS support was introduced in package version v0.5.0. It works best for MATLAB versions newer than R2022b. Note: Figures also open in a separate windows on versions of MATLAB older than R2022b.

Install the version >=0.5.0 to use the package on MacOS.

# To upgrade an existing installation of matlab-proxy package:
$ pip install --upgrade matlab-proxy>=0.5.0

Windows Subsystem for Linux (WSL 2)

To install matlab-proxy in WSL 2, follow the steps mentioned in the Installation Guide for WSL 2.

Using an already activated MATLAB with matlab-proxy

matlab-proxy version v0.7.0 introduces support for using an existing MATLAB license. Use the Existing License option only if you have an activated MATLAB. This allows you to start MATLAB without authenticating every time.

Limitations

This package supports the same subset of MATLAB features and commands as MATLAB® Online, except there is no support for Simulink® Online. Click here for a full list of Specifications and Limitations for MATLAB Online.

Security

We take your security concerns seriously, and will attempt to address all concerns. matlab-proxy uses several other python packages, and depend on them to fix their own vulnerabilities.

All security patches will be released as a new version of the package. Patches are never backported to older versions or releases of the package. Using the latest version will provide the latest available security updates or patches.

Feedback

We encourage you to try this repository with your environment and provide feedback. If you encounter a technical issue or have an enhancement request, create an issue here


Copyright 2020-2024 The MathWorks, Inc.