Visualize Data Structures in real time — Python TUI + C++ backend
Project description
Features
- 9 data structures with live ASCII visualization
- C++23 backend binaries via subprocess bridge
- Real-time operation log with color-coded responses
- DS info screen summary, Big O, pros/cons, usage
- Search and filter modules from the menu
- Min/Max heap toggle
- Works out of the box via pip
What is it
TraceDSA is a terminal user interface that wraps custom C++23 data structure implementations in an interactive Python TUI. It lets you explore how stacks, queues, trees, and heaps behave with live ASCII art, operation logging, and instant feedback after every command.
Install & Run
pip install tracedsa
tdsa
Data Structures
| Category | Modules |
|---|---|
| Stack | Stack (Array), Stack (LinkedList) |
| Queue | Queue (Array), Queue (LinkedList), Circular Queue |
| Linked List | Singly LinkedList, Doubly LinkedList |
| BST | Binary Search Tree |
| Heap | Min-Heap, Max-Heap |
How it works
TraceDSA uses a Python Textual TUI that spawns standalone C++23 interactive binaries as subprocesses. The TUI communicates with each binary via a simple stdin/stdout protocol (PUSH 10 → OK Stack: [10]). Every button press sends a command, and the response updates the ASCII visualization and operation log in real time. No STL containers are used in the C++ backend every data structure is built from scratch.
Requirements
- Python 3.10+
- Linux (Windows & macOS in progress)
Built With
- Python — Textual framework for the TUI
- C++23 — All data structures implemented from scratch (no STL containers)
Author
License
MIT see LICENSE
Made with ❤️ and stay tuned for updates!
Project details
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 tracedsa-1.0.1.tar.gz.
File metadata
- Download URL: tracedsa-1.0.1.tar.gz
- Upload date:
- Size: 54.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c3edbe690aac23d6533eba81f383a18c95c6bdcc82709db3fec333f8b108da5
|
|
| MD5 |
0e5aaeabb9ab95e053ccc60d86a787c6
|
|
| BLAKE2b-256 |
a20f655019713b867c0f1d97885d8a0c83278aefd01e30914625049e8c1732e9
|
File details
Details for the file tracedsa-1.0.1-py3-none-any.whl.
File metadata
- Download URL: tracedsa-1.0.1-py3-none-any.whl
- Upload date:
- Size: 530.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f592bb06c2639817a27674af22264350aed23987fa487c8c8caa3073435934ed
|
|
| MD5 |
41b7a07a5e0422e2904e4a1c8077fc90
|
|
| BLAKE2b-256 |
a4426bb4666fe32ed613079b8d36bef4ba016711deec567d529bb28c384ebfdb
|