Registry / web-framework / vt100wasm

vt100wasm

JSON →
library0.3.0pypypi✓ verified 84d ago

Python bindings for vt100 terminal state processing via WebAssembly. Provides terminal emulation with vt100 escape sequence parsing, capable of handling complex terminal interactions. Version 0.3.0 (latest) as of May 2026. Release cadence is irregular; pre-v1.0 so breaking changes are possible.

pip install vt100wasm
INSTALL
IMPORT
SIG · VT100WASM
V
vt100wasm
web-frameworkpythonv0.3.0
Install
2.0s avg
Import
—
Disk
43MB
Pass rate
8/ 10
Env Coverage8 / 10
glibc
3.9–3.13
musl
3.9–3.13
Install & Compatibility
Where this runs
tested against v0.3.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
glibc
py 3.10
✓ —
✓ 2.2s
py 3.11
✓ —
✓ 2.1s
py 3.12
✓ —
✓ 1.8s
py 3.13
✓ —
✓ 1.9s
py 3.9
✕ build_error
✕ build_error
43MB installed
● package 43MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Engine
✓ from vt100wasm import Engine
✗ from vt100wasm import Terminal
Screen
✓ from vt100wasm import Screen
Store
✓ from vt100wasm import Store

Creates a Terminal, feeds escape sequences, and reads cell data.

from vt100wasm import Terminal # Create a terminal with 80 columns and 24 rows term = Terminal(width=80, height=24) # Feed some terminal output term.feed(b'\x1b[31mHello\x1b[0m') # Get the cell content cell = term.cell(0, 0) print(cell.char, cell.fg_color, cell.bg_color)
Debug
Known issues
breakingThe Terminal.feed() method expects bytes, not str. Passing a string will raise a TypeError.
fix
Encode strings to bytes before feeding, e.g., term.feed(b'text') or term.feed('text'.encode()).
affects: all versions
breakingThe library is pre-1.0 (v0.3.0), so breaking changes may occur without a major version bump.
fix
Pin your dependency to a specific version and test upgrades carefully.
affects: <1.0.0
gotchaThe Terminal does not automatically manage the cursor; you must manually track cursor position if needed.
fix
Use the cursor position from escape sequence feedback or manage it externally.
affects: all
Upgrade
Version history
0.3.0latest on PyPI · released Mar 16, 2026
Audit
Dependencies

No dependency data recorded yet.

Agent activity
23 hits · last 30 days
node
18
OpenAI (training)
2
Anthropic
1
Resources
vt100wasm — pip install vt100wasm · libregistry