{"id":24818,"library":"vt100wasm","title":"vt100wasm","description":"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.","status":"active","version":"0.3.0","language":"python","source_language":"en","source_url":"https://github.com/nickcabato/vt100wasm","tags":["terminal","vt100","wasm","escape-sequences"],"install":[{"cmd":"pip install vt100wasm","lang":"bash","label":"Install from PyPI"}],"dependencies":[],"imports":[{"note":"Primary class for terminal emulation.","wrong":"","symbol":"Terminal","correct":"from vt100wasm import Terminal"},{"note":"Exception raised on terminal errors.","wrong":"","symbol":"TerminalError","correct":"from vt100wasm import TerminalError"}],"quickstart":{"code":"from vt100wasm import Terminal\n\n# Create a terminal with 80 columns and 24 rows\nterm = Terminal(width=80, height=24)\n\n# Feed some terminal output\nterm.feed(b'\\x1b[31mHello\\x1b[0m')\n\n# Get the cell content\ncell = term.cell(0, 0)\nprint(cell.char, cell.fg_color, cell.bg_color)","lang":"python","description":"Creates a Terminal, feeds escape sequences, and reads cell data."},"warnings":[{"fix":"Encode strings to bytes before feeding, e.g., term.feed(b'text') or term.feed('text'.encode()).","message":"The Terminal.feed() method expects bytes, not str. Passing a string will raise a TypeError.","severity":"breaking","affected_versions":"all versions"},{"fix":"Pin your dependency to a specific version and test upgrades carefully.","message":"The library is pre-1.0 (v0.3.0), so breaking changes may occur without a major version bump.","severity":"breaking","affected_versions":"<1.0.0"},{"fix":"Use the cursor position from escape sequence feedback or manage it externally.","message":"The Terminal does not automatically manage the cursor; you must manually track cursor position if needed.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Use term.feed(your_string.encode('utf-8')) or directly pass bytes.","cause":"Passing a string to Terminal.feed() instead of bytes.","error":"TypeError: a bytes-like object is required, not 'str'"},{"fix":"Use from vt100wasm import Terminal or import vt100wasm; vt100wasm.Terminal (check version: from 0.3.0 it should be available).","cause":"Incorrect import path: using import vt100wasm and then vt100wasm.Terminal, but Terminal is not exported at the top level in some older versions.","error":"AttributeError: module 'vt100wasm' has no attribute 'Terminal'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}