SCG Lab
A modern, offline-first multi-language notebook IDE — Jupyter Lab feel, single pip install.
by Squid Consultancy Group · @analyticswithharry
What is it?
SCG Lab is a browser-based notebook environment that runs entirely on your machine. It bundles a React/Monaco frontend with a FastAPI + Jupyter-kernel backend into one installable Python package.
- Languages: Python, JavaScript (Node), C, C++
- Jupyter-style UI: tabbed File / Edit / View / Insert / Cell / Run / Kernel / Tabs / Settings / Demo / Help menus, command palette, dark/light theme
- Mandatory line numbers in every code cell
- Built-in demos for every supported language (one click to load)
- Environment manager: create/activate per-project Python envs from the CLI
Install (works on any machine)
pip install scg-lab
Run
scg-lab # opens http://127.0.0.1:8765
scg-lab --port 9000
That's it — no Node, no extra build steps. The frontend ships pre-built inside the wheel.
Brief Usage
pip install scg-labthen runscg-lab.- Pick a language tile from the Launcher (or click Demo in the menu bar to load a ready-made notebook).
- Type code in a cell — line numbers are always on.
- Shift+Enter to run, Ctrl+Enter to run in place.
- Use the Run menu for Run All / Run Above / Run Below / Restart & Run All.
Environment Management
# List environments
scg-lab env list
# Create a Python environment
scg-lab env create myenv --lang python
# Install packages into an environment
scg-lab env install myenv numpy pandas matplotlib
# Activate an environment
scg-lab env activate myenv
Supported Languages
| Language | Requirements |
|---|---|
| Python | Built-in (uses ipykernel) |
| JavaScript | Node.js |
| C | GCC |
| C++ | G++ |
Developer Build
cd frontend
npm install
npm run build # outputs to ../scg_lab/static/
pip install -e ".[dev]"
scg-lab
License
MIT © Squid Consultancy Group
Metadata
Release files for scg-lab 5.5.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| scg_lab-5.5.7.tar.gz | 169.5 kB | Without provenance | Details for scg_lab-5.5.7.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| scg_lab-5.5.7-py3-none-any.whl | Python 3 | none | any | Details for scg_lab-5.5.7-py3-none-any.whl |
Total release size: 344.4 kB
Release files / scg_lab-5.5.7.tar.gz
| Download URL | scg_lab-5.5.7.tar.gz |
|---|---|
| Size | 169.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8cc2d6b243521a2f1ee4beea953b00c24d4567952793c3f95c994b0378463554
|
|
BLAKE2b-256 checksum How to use checksums |
5d7e34030102054a87f6f30a0ffce2b56e902ecfcc8e9fa3b0a0fa15445f9a9a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Release files / scg_lab-5.5.7-py3-none-any.whl
| Download URL | scg_lab-5.5.7-py3-none-any.whl |
|---|---|
| Size | 174.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6670fc2dd38155d7b76696fd9fdad5fbea463284a456ccd856ae1c871777cf33
|
|
BLAKE2b-256 checksum How to use checksums |
762692a5196e8767ce58ebdb77d0d5ca940fb1b3edd133069ee8a358571ea616
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Security for scg-lab 5.5.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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.