a textless Python IDE, that operates at the AST level
Project description
Untext
Untext is a textless Python interactive development environment built in Python.
Unlike other IDEs, untext does not include a text editor, and goes straight to the AST layer for syntax-aware editing capabilities.
Untext uses a webview to render the UI from Python, with css to bridge the gap between AST nodes and readable code on the screen, and Web Components for interactivity.
Status
At the time of writing, untext can only render existing Python code. The keybindings "r" and "s" are defined to run/reload the current file and spawn a python shell in the same module.
To be more specific, untext has:
- a Python AST -> HTML renderer, with a bidirectional AST <-> DOM mapping
- css-based syntax rendering
- cython compilation
- cross-platform, portable build process (Windows and Linux)
- live REPL injection inside your Python modules
- live module reload while your code is running
- pip packaging
- svelte/tailwind-based web components for the frontend
- containerized build on linux
The next steps are:
- containerized build on windows
- writing web components for the UI
- code edition commands
- keybindings
- python integrations
- project management GUI
- using Untext to write software
How to run
Untext can be downloaded in the github releases for Windows and Linux (tested on Debian 13).
Add the untext directory to your path so that you can run untext main.py from anywhere in your system.
This is the recommended installation process, with no dependency management and with Cython-compiled code.
You can also install untext with pip, but you will need the pywebview python package installed:
apt install python3-webview
pip install untext
You can then run untext with python from anywhere in your system:
python3 -m untext ./script.py
For other configurations and for troubleshooting the installation with pip, see the advanced installation methods documentation.
How to build
If you want to edit and build untext yourself, see the development documentation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file untext-0.0.9.tar.gz.
File metadata
- Download URL: untext-0.0.9.tar.gz
- Upload date:
- Size: 45.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
634f6a66ffbc4dd9327d7d3f7aa34e59ce7a8c768d21249fb015eaa5d5fee27f
|
|
| MD5 |
a07ab06b5d8dad6e407e8e4b92049c75
|
|
| BLAKE2b-256 |
7fa3310fe71e6351ad900c05e0dd2b9b3ffae2e6c68c1e55be05e5ea6735ced8
|
File details
Details for the file untext-0.0.9-py3-none-any.whl.
File metadata
- Download URL: untext-0.0.9-py3-none-any.whl
- Upload date:
- Size: 51.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b18e1304add6df3c39139a69756f701a3ef9a9d708ba2ff63e4075a4ed0007ad
|
|
| MD5 |
b2a6c03e66529d8bfdb83c9dd65d0888
|
|
| BLAKE2b-256 |
11532027662821c029a40c692fb099e8b4f14e551f1ceaddd57016c7cf24a69a
|