Skip to main content

An interactive notebook environment for local and GPU computing

Project description

more-compute

PyPI version Python 3.10+ License: MIT

An interactive Python notebook environment, similar to Marimo and Google Colab, that runs locally.

https://github.com/user-attachments/assets/8c7ec716-dade-4de2-ad37-71d328129c97

Installation

Prerequisites:

  • Node.js v20 (see .nvmrc)
  • Python 3.12 (see .python-version)

Using uv (Recommended)

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
uv tool install more-compute

# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
uv tool install more-compute

Using pip

pip install more-compute

# Add to PATH if needed:
# macOS/Linux: echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
# Windows: See troubleshooting below

Usage

more-compute notebook.py     # Open existing notebook
more-compute new             # Create new notebook
more-compute --debug         # Show logs

Opens automatically at http://localhost:2718

Converting Between Formats

MoreCompute uses .py notebooks with # %% cell markers, but you can convert to/from .ipynb:

From .ipynb to .py:

# Auto-detect output name (notebook.ipynb -> notebook.py)
more-compute convert notebook.ipynb

# Or specify output
more-compute convert notebook.ipynb -o my_notebook.py

# Then open in MoreCompute
more-compute my_notebook.py

The converter automatically extracts dependencies from !pip install commands and adds UV inline script metadata.

From .py to .ipynb:

# Auto-detect output name (notebook.py -> notebook.ipynb)
more-compute convert notebook.py

# Or specify output
more-compute convert notebook.py -o colab_notebook.ipynb

This makes your notebooks compatible with Google Colab, Jupyter, and other tools that require .ipynb format.

Troubleshooting

will add things here as things progress...

Development

Option 1: Devcontainer

Works on Mac, Windows, and Linux with identical environments.

Prerequisites: Docker Desktop and VS Code/Cursor with the Dev Containers extension.

  1. Clone the repo and open in VS Code/Cursor
  2. Press Cmd/Ctrl + Shift + P → "Dev Containers: Reopen in Container"
  3. Wait for the container to build (first time takes a few minutes)
  4. Run more-compute new in the terminal

Option 2: Docker (No IDE Required)

# Build the image
docker build -t morecompute .

# Run with your notebooks mounted
docker run -p 3141:3141 -p 2718:2718 -v $(pwd):/notebooks morecompute

Option 3: Native Setup

Prerequisites:

  • Python 3.12 (install via pyenv: pyenv install 3.12)
  • Node.js 20 (install via nvm: nvm install 20)
# Clone and enter directory
git clone https://github.com/DannyMang/MORECOMPUTE.git
cd MORECOMPUTE

# Use pinned versions
pyenv local 3.12  # or: pyenv install 3.12 && pyenv local 3.12
nvm use           # reads .nvmrc automatically

# Create virtual environment and install
uv venv && source .venv/bin/activate  # Windows: .venv\Scripts\activate
uv pip install -e .

# Install frontend dependencies
cd frontend && npm ci && cd ..  # npm ci uses package-lock.json for exact versions

# Run
more-compute notebook.py

Environment Variables

Variable Default Description
MORECOMPUTE_PORT 3141 Backend API port
MORECOMPUTE_FRONTEND_PORT 2718 Frontend UI port

License

MIT - see LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

more_compute-0.5.0.tar.gz (515.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

more_compute-0.5.0-py3-none-any.whl (549.2 kB view details)

Uploaded Python 3

File details

Details for the file more_compute-0.5.0.tar.gz.

File metadata

  • Download URL: more_compute-0.5.0.tar.gz
  • Upload date:
  • Size: 515.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for more_compute-0.5.0.tar.gz
Algorithm Hash digest
SHA256 82165853cf7984189dd73d6e940a771af8ff923267cb1550b46fa0d94ea9803e
MD5 6924beb9303c2cc7b54f659b6d94d29c
BLAKE2b-256 821906f8d675731cb711bdca2b72356e2880dcd26e0dae27a89356ed6460043f

See more details on using hashes here.

File details

Details for the file more_compute-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: more_compute-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 549.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for more_compute-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b1da6903ea6e131bfc106ca93a5937b693d3809f047018a77b4b099332dbe309
MD5 b3fe24ea149696cd9963b3582cfbdbb7
BLAKE2b-256 46c5ad8b742ec004c5ff23e2f598bc5c0896287abd1a1a09e51bb0e18d080c8f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page