{"id":19129910,"url":"https://github.com/mathworks/matlab-proxy","last_synced_at":"2025-04-04T15:09:27.704Z","repository":{"id":44475893,"uuid":"433340490","full_name":"mathworks/matlab-proxy","owner":"mathworks","description":"Python® package enables you to open a MATLAB® desktop in a web browser tab.","archived":false,"fork":false,"pushed_at":"2024-12-20T01:27:22.000Z","size":5116,"stargazers_count":52,"open_issues_count":1,"forks_count":23,"subscribers_count":14,"default_branch":"main","last_synced_at":"2025-02-03T17:49:54.957Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mathworks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-11-30T07:50:35.000Z","updated_at":"2025-02-03T09:23:53.000Z","dependencies_parsed_at":"2023-02-10T01:16:22.990Z","dependency_job_id":"2e9e1ab2-b4fa-4cc9-8110-b6d520e23ffc","html_url":"https://github.com/mathworks/matlab-proxy","commit_stats":{"total_commits":124,"total_committers":10,"mean_commits":12.4,"dds":0.6935483870967742,"last_synced_commit":"aa7b0022d93a4a5ff596c3f033ac6a90e75717fc"},"previous_names":[],"tags_count":55,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathworks%2Fmatlab-proxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathworks%2Fmatlab-proxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathworks%2Fmatlab-proxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathworks%2Fmatlab-proxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mathworks","download_url":"https://codeload.github.com/mathworks/matlab-proxy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247198461,"owners_count":20900080,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T06:09:00.237Z","updated_at":"2025-04-04T15:09:27.674Z","avatar_url":"https://github.com/mathworks.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MATLAB Proxy\n[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/mathworks/matlab-proxy/run-tests.yml?branch=main\u0026logo=github)](https://github.com/mathworks/matlab-proxy/actions) \u0026nbsp; [![PyPI badge](https://img.shields.io/pypi/v/matlab-proxy.svg?logo=pypi)](https://pypi.python.org/pypi/matlab-proxy) \u0026nbsp;  [![codecov](https://codecov.io/gh/mathworks/matlab-proxy/branch/main/graph/badge.svg?token=ZW3SESKCSS)](https://codecov.io/gh/mathworks/matlab-proxy) \u0026nbsp; [![Downloads](https://static.pepy.tech/personalized-badge/matlab-proxy?period=month\u0026units=international_system\u0026left_color=grey\u0026right_color=blue\u0026left_text=PyPI%20downloads/month)](https://pepy.tech/project/matlab-proxy)\n\n----\n\n`matlab-proxy` is a Python® package which enables you to launch MATLAB® and access it from a web browser.\n\nInstallation of this package creates an executable `matlab-proxy-app`, which launches MATLAB and provides a URL to access it. \n \nThe MATLAB Proxy is under active development. For support or to report issues, see the [Feedback](#feedback) section.\n\n----\n\n**Table of Contents**\n- [Requirements](#requirements)\n- [Installation](#installation)\n  - [PyPI](#pypi)\n  - [Building From Sources](#building-from-sources)\n- [Usage](#usage)\n- [Examples](#examples)\n- [Limitations](#limitations)\n- [Security](#security)\n- [Feedback](#feedback)\n\n## Requirements\n* MATLAB® R2020b or later is installed and on the system PATH.\n  ```bash\n  # Confirm MATLAB is on the PATH\n  which matlab\n  ```  \n* The dependencies required to run MATLAB.\n  Refer to the Dockerfiles in the [matlab-deps](https://github.com/mathworks-ref-arch/container-images/tree/master/matlab-deps) repository for the desired version of MATLAB.\n  \n* X Virtual Frame Buffer (Xvfb) : (only for Linux® based systems)\n\n  Install it on your linux machine using:\n  ```bash\n  # On a Debian/Ubuntu based system:\n  $ sudo apt install xvfb\n  ```\n  ```bash\n  # On a RHEL based system:\n  $ yum search Xvfb\n  xorg-x11-server-Xvfb.x86_64 : A X Windows System virtual framebuffer X server.\n\n  $ sudo yum install xorg-x11-server-Xvfb\n  ```\n  \n  *Note: The installation of Xvfb is **optional** (w.e.f. v0.11.0 of matlab-proxy). However, we highly recommend installing it.*\n* Python versions: **3.8** | **3.9**  | **3.10** | **3.11**\n* [Browser Requirements](https://www.mathworks.com/support/requirements/browser-requirements.html)\n* Supported Operating Systems:\n    * Linux®\n    * Windows® Operating System ( starting v0.4.0 of matlab-proxy )\n    * MacOS (starting v0.5.0 of matlab-proxy )    \nSee [Platform Support](#platform-support) for more information \n\n## Installation\n\n### PyPI\nThis repository can be installed directly from the Python Package Index.\n```bash\npython -m pip install matlab-proxy\n```\n\n### Building From Sources\nBuilding from sources requires Node.js® version 18 or higher. [Click here to install Node.js](https://nodejs.org/en/)\n\n```bash\ngit clone https://github.com/mathworks/matlab-proxy.git\n\ncd matlab-proxy\n\npython -m pip install .\n```\n\nInstalling the package creates an executable called `matlab-proxy-app`, which is placed onto your system PATH by `pip`, usually in: `$HOME/.local/bin/`\n```bash\n# Confirm it is on the PATH\nwhich matlab-proxy-app\n```\n\n## Usage\n\nOnce the `matlab-proxy` package is installed.\n\n* Open a Linux terminal and launch the application with\n  ```bash\n  env MWI_BASE_URL=\"/matlab\" matlab-proxy-app\n  ```\n  `MWI_BASE_URL` is an environment variable which controls the link on which MATLAB can be accessed.\n  For a detailed listing of all environment variables. See [Advanced-Usage.md](./Advanced-Usage.md)\n\n  Running the above command will print text out on your terminal, which will contain the URL to access MATLAB. For example:\n  ```\n  Access MATLAB at \n  http://localhost:44549/matlab/index.html\n  ```\n\n* Open the the link above in a web browser. If prompted to do so, enter credentials for a MathWorks account associated with a MATLAB license. If you are using a network license manager, then change to the _Network License Manager_ tab and enter the license server address instead. To determine the appropriate method for your license type, consult [MATLAB Licensing Info](./MATLAB-Licensing-Info.md).\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"400\" src=\"https://github.com/mathworks/matlab-proxy/raw/main/img/licensing_GUI.png\"\u003e\n\u003c/p\u003e\n\n* Wait for the MATLAB session to start. *This can take several minutes*.\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"800\" src=\"https://github.com/mathworks/matlab-proxy/raw/main/img/MATLAB_Desktop.png\"\u003e\n\u003c/p\u003e\n\n* To manage the MATLAB session, click the tools icon shown below.\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"100\" src=\"https://github.com/mathworks/matlab-proxy/raw/main/img/tools_icon.png\"\u003e\n\u003c/p\u003e\n\n* Clicking the tools icon opens a status panel with buttons like the ones below:\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"800\" src=\"https://github.com/mathworks/matlab-proxy/raw/main/img/status_panel.png\"\u003e\n\u003c/p\u003e\n\nThe following options are available in the status panel (some options are only available in a specific context):\n\n| Option |  Description |\n| ---- | ---- |\n| Start MATLAB | Start your MATLAB session. Available if MATLAB is stopped.|\n| Restart MATLAB | Restart your MATLAB session. Available if MATLAB is running or starting.|\n| 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.|\n| Sign Out | Sign out of MATLAB session. Use this to stop MATLAB and sign in with an alternative account. Available if using online licensing.|\n| 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.|\n| Feedback | Provide feedback. Opens a new tab to create an issue on GitHub.|\n| Help | Open a help pop-up for a detailed description of the options.|\n\n## Examples\n* For installing/usage in a Docker container, see this [Dockerfile](./examples/Dockerfile) and its [README](./examples/README.md).\n* For upgrading **matlab-proxy** in an existing Docker image, see this [Dockerfile.upgrade.matlab-proxy](./examples/Dockerfile.upgrade.matlab-proxy) and its [README](./examples/README.md#upgrading-matlab-proxy-package-in-a-docker-image).*\n* For usage in a Jupyter environment, see [jupyter-matlab-proxy](https://github.com/mathworks/jupyter-matlab-proxy).\n\n## Platform Support\n\n### Linux\nThis package is fully supported for the Linux Operating System.\n\n### Windows\n\nWindows® Operating System support was introduced in package version `v0.4.0`.\nInstall the version \u003e=0.4.0 to use the package on Windows.\n```bash\n# To upgrade an existing installation of matlab-proxy package:\n$ pip install --upgrade matlab-proxy\u003e=0.4.0\n```\n\n### MacOS\n\nMacOS support was introduced in package version `v0.5.0`. \nIt works best for MATLAB versions newer than R2022b.\nNote: Figures *also* open in a separate windows on versions of MATLAB older than R2022b.\n\nInstall the version \u003e=0.5.0 to use the package on MacOS.\n\n```bash\n# To upgrade an existing installation of matlab-proxy package:\n$ pip install --upgrade matlab-proxy\u003e=0.5.0\n```\n\n### Windows Subsystem for Linux (WSL 2)\n\nTo install `matlab-proxy` in WSL 2, follow the steps mentioned in the [Installation Guide for WSL 2](./install_guides/wsl2/README.md).\n\n## Using an already activated MATLAB with matlab-proxy\n`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.\n\n## Limitations\nThis package supports the same subset of MATLAB features and commands as MATLAB® Online, except there is no support for Simulink® Online.\n[Click here for a full list of Specifications and Limitations for MATLAB Online](https://www.mathworks.com/products/matlab-online/limitations.html). \n\n## Security\nWe take your security concerns seriously, and will attempt to address all concerns.\n`matlab-proxy` uses several other python packages, and depend on them to fix their own vulnerabilities.\n\nAll security patches will be released as a new version of the package.\nPatches are never backported to older versions or releases of the package.\nUsing the latest version will provide the latest available security updates or patches.\n\n## Feedback\n\nWe encourage you to try this repository with your environment and provide feedback. \nIf you encounter a technical issue or have an enhancement request, create an issue [here](https://github.com/mathworks/matlab-proxy/issues)\n\n---\n\nCopyright 2020-2025 The MathWorks, Inc.\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmathworks%2Fmatlab-proxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmathworks%2Fmatlab-proxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmathworks%2Fmatlab-proxy/lists"}