Skip to main content

gini-toolkit — gBuilder

The GINI desktop app: a visual builder and live runtime for computer networking and cloud computing experiments, with an AI layer that can build, inspect and explain topologies.

Drag routers, switches, machines, VPCs and Kubernetes elements onto a canvas, press Run, and they come up as real containers you can open a shell into.

Install

pipx install gini-toolkit     # `pip install gini-toolkit` works too
gbuilder

PySide6 and QtWebEngine come with it. There is no setup command to run — gBuilder checks what the machine needs the first time it launches and offers to install the container runtime and pull the images. Demo mode works before any of that exists, so the app is useful the moment it opens.

Requires Python 3.10+ and, for live Run, a container runtime (Docker, Colima, or Podman). Podman (rootless) is recommended for campus environments — see docs/PODMAN_SETUP.md for detailed setup instructions.

What you get

  • Canvas and palette — networking elements (routers, switches, OVS, machines, taps) alongside cloud ones (VPCs, subnets, load balancers, Kubernetes pods, serverless functions).
  • Live Run — each element is a real container. Double-click a machine for a shell, a router for the Router Lab, a service for its web dashboard.
  • SDN and NFV — a real OpenFlow data plane with a POX controller, and a flow-table view of what the switch is actually doing.
  • xv6 — boot and modify a real RISC-V teaching kernel from inside a topology.
  • Ask GINI — an assistant grounded in the topology on your canvas. Better with a local Ollama model; the deterministic modes work without one.
  • Proof of work — record a lab session as a tamper-evident chain and hand in a receipt, for courses using the GINI Teaching Center.

From source

git clone https://github.com/citelab/gini && cd gini
./scripts/dev.sh install       # editable installs of gini-core, gini-toolkit, gini-teaching-center
gbuilder

Use the script rather than pip install -e ./frontend-ng on its own: gini is a namespace package split across gini-core (the domain model and proof format) and this distribution, and installing one alone leaves half the tree unimportable — with an error that names a missing module rather than a missing install.

QT_QPA_PLATFORM=offscreen python -m gini --selftest    # headless smoke test
./scripts/dev.sh test                                  # the suite

Layout

src/gini/
  __main__.py     the `gbuilder` entrypoint
  ui/             canvas, palette, inspector, labs, theme system
  services/       persistence, runtime, Teaching Center client, outbox
  runtime/        container orchestration
  agent/          programmatic API + MCP server, so external agents can drive GINI
  setup/          first-run bootstrap (runtime detection, image pulls)

The domain model lives in the separate gini-core distribution, under gini.domain.

Part of the GINI project — https://github.com/citelab/gini

Metadata

Release files for gini-toolkit 6.18.0

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

Source distribution (sdist)

Source distribution for gini-toolkit 6.18.0
File Size Uploaded
gini_toolkit-6.18.0.tar.gz 5.6 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for gini-toolkit 6.18.0
File Interpreter ABI Platform
gini_toolkit-6.18.0-py3-none-any.whl Python 3 none any Details

Total release size: 10.5 MB

Release files / gini_toolkit-6.18.0.tar.gz

Download URL gini_toolkit-6.18.0.tar.gz
Size 5.6 MB
Tags Source
SHA-256 checksum
How to use checksums
6edad0613337cb1ddb879f06cbd28b9e32f3c705fef3b52d15078a1274ded29f
BLAKE2b-256 checksum
How to use checksums
62b87dc0c399d24677061b66698897c117fd3c98c173cc42ff381421642409ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 11, 2026.

Transparency log

Release files / gini_toolkit-6.18.0-py3-none-any.whl

Download URL gini_toolkit-6.18.0-py3-none-any.whl
Size 4.9 MB
Tags Python 3
SHA-256 checksum
How to use checksums
da20449659b451b544d73b57f09024ee39fb7bd62e85b7f9eab079fe8b334514
BLAKE2b-256 checksum
How to use checksums
27e5d6f77221d7066d309a421c7262ff3d54cc7e5754171ec799f7a269d56dd8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Oct 11, 2026.

Transparency log

Release history Release notifications | RSS feed

6.18.3

2 release files

6.18.2

2 release files

6.18.1

2 release files

This release

6.18.0 This release

2 release files

6.17.0

2 release files

6.15.5

2 release files

6.15.4

2 release files

6.15.3

2 release files

6.15.2

2 release files

6.15.0

2 release files

6.14.0

2 release files

6.13.1

2 release files

6.13.0

2 release files

6.12.0

2 release files

6.11.3

2 release files

6.11.2

2 release files

6.11.1

2 release files

6.9.1

2 release files

6.9.0

2 release files

6.8.1

2 release files

6.8.0

2 release files

6.7.0

2 release files

6.6.1

2 release files

6.6.0

2 release files

6.5.2

2 release files

6.5.1

2 release files

6.5.0

2 release files

6.4.0

2 release files

6.3.2

2 release files

6.3.1

2 release files

6.3.0

2 release files

6.2.1

2 release files

6.2.0

2 release files

6.1.4

2 release files

6.1.3

2 release files

6.1.2

2 release files

6.1.1

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