NannoKit.terminal
Official terminal extension for SuperNanno — Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
NannoKit.terminal provides clean, high-level APIs for common user interactions, inspired by modern desktop application patterns.
Designed to integrate seamlessly into SuperNanno and work standalone in any Textual app.
✨ Features
- Automatic resolution of the running Textual
App(no manual passing required in most cases) - Full keyboard and mouse support
- Consistent behavior: Escape to cancel
- Internal composition between components
- Full test coverage with Textual Pilot
- Installable as a standalone package or as part of the SuperNanno ecosystem
- Modern and clean API design
📦 Installation
pip install nannokit-terminal
To also install with SuperNanno (when available):
pip install "nannokit-terminal[supernanno]"
🚀 Quick Start
from nannokit.terminal import example_class_1, example_class_2
from pathlib import Path
# Example usage
example_class_1.show(
# parameters here
callback=lambda result: print("Result:", result),
)
# Another example
example_class_2.show(
title="Example Title",
callback=lambda value: print("Value:", value),
)
Integration with SuperNanno
In your main App class, attach the manager once (recommended):
from textual.app import App
from nannokit.terminal.core import manager_class
class SuperNannoApp(App):
def on_mount(self) -> None:
manager_class.attach(self)
# ... rest of your app
After this setup, you can call any terminal component from anywhere in your application.
📖 API
Main Components
main_class_1.show(...)— Lorem ipsum dolor sit amet, consectetur adipiscing elit.main_class_2.show(...)— Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.main_class_3.show(...)— Ut enim ad minim veniam, quis nostrud exercitation.
All components accept common parameters such as title, initial_value, callback, and show_hidden.
section_name
section_example
Package Structure
nannokit/terminal/
├── core/ # Shared manager, base classes and utilities
├── module_1/ # module_1_description
├── module_2/ # module_2_description
├── module_3/ # module_3_description
└── styles/ # TCSS stylesheets
Development
# Install in editable mode with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
Changelog
See CHANGELOG.md for recent changes (architecture refactor, bug fixes, new features, end-to-end tests, etc.).
License
BSD 3-Clause License — see the LICENSE file for details.
Part of the SuperNanno ecosystem.
Built to make Textual application development even more powerful and enjoyable.
Author: Heitor Bardemaker A. Bisneto (@BisnetoDev)
Release files for nannokit-terminal 0.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nannokit_terminal-0.0.0.tar.gz | 4.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nannokit_terminal-0.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.6 kB
Release files / nannokit_terminal-0.0.0.tar.gz
| Download URL | nannokit_terminal-0.0.0.tar.gz |
|---|---|
| Size | 4.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c71d15e05020af7b433ce321901d75cda355a56960fc68c8ab70038f26099ed4
|
|
BLAKE2b-256 checksum How to use checksums |
180a629f84a298b19baeda764df8adfe7a832c175ff79a7efc1e32bb41482dab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.0
|
Release files / nannokit_terminal-0.0.0-py3-none-any.whl
| Download URL | nannokit_terminal-0.0.0-py3-none-any.whl |
|---|---|
| Size | 4.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e939144f654cf296acdfa9d2f7c6c7ec49634459b30873249d36148ae5461c0e
|
|
BLAKE2b-256 checksum How to use checksums |
1f4014fffd03160c3d0425db7ad7d88624bd16379dd6da06b23ab9b076338b11
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.0
|