Skip to main content
# 🛠️ Toolsan Desktop

> Build GUI apps in seconds — zero boilerplate, pure Python!

[![PyPI - Version](https://img.shields.io/pypi/v/toolsan-desktop)](https://pypi.org/project/toolsan-desktop/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/toolsan-desktop)](https://pypi.org/project/toolsan-desktop/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

---

## ⚡ One-liner

```python
import toolsan_desktop as td
td.window("Epic App").mainloop()

BOOM. You've got a window.


📦 Install

pip install toolsan-desktop

That's it. Dependencies auto-install. You're welcome.


🚀 Features

🪟 window() — Create a window

win = td.window(
    title="My App",        # Custom title
    fullscreen=False,      # Go fullscreen? 
    geometry="800x600",    # Width x Height
    bg="#1a1a2e"          # Hex or color name
)

🔘 button() — Add a button

def Hello():
    print("Hello!")

td.button(
    win,                   # Window
    text="PUSH",     # Button text
    sizex=200,             # Width
    sizey=60,              # Height
    bg="#e94560",          # Background
    indentx=300,           # X position
    indenty=400,           # Y position
    com=Hello        # Callback
)

🖼️ image() — Show images

td.image(
    win,                   # Window
    path="meme.jpg",       # Image path
    x=100, y=100,          # Position
    width=300, height=200  # Resize (optional)
)

✍️ dprint() — Typewriter effect

td.dprint(
    win,                          # Window
    text="Wake up, Neo...",       # Text
    delay=0.05,                   # Speed (seconds/char)
    color="#00ff41",              # Hack the planet
    font=("Courier", 20),         # Font & size
    x=50, y=50                    # Position
)

🔊 speak() — Make it talk

td.speak(
    text="I can speak!",    # What to say
    lang='en',              # 'en', 'ru', 'fr', etc.
    slow=False              # Slow mode? why not
)

🎵 play() — Play audio

td.play("boss_fight.mp3")  # MP3, WAV, OGG — it's all good

🎮 Full Example

import toolsan_desktop as td

# Window
win = td.window("Cyber Assistant", bg="#0a0a0a", geometry="700x500")

# Animated title
td.dprint(win, ">>> SYSTEM READY", delay=0.08, font=("Courier", 28), color="#00ff41", x=180, y=80)

# Button that talks
def greet():
    td.speak("Hello, commander!")
    td.dprint(win, "> Voice module activated", delay=0.02, font=("Courier", 14), color="#00ff41", x=200, y=200)

td.button(win, text="🤖 GREET", sizex=200, sizey=60, bg="#00ff41", indentx=250, indenty=350, com=greet)

# RUN
win.mainloop()

🤯 Why Toolsan Desktop?

· ✅ No boilerplate — 1 line = working window · ✅ Auto-installs deps — pygame, pillow, gtts · ✅ Tkinter power — but 10x simpler · ✅ TTS out of the box — your app talks · ✅ Typewriter text — like in games · ✅ Images & audio — zero hassle · ✅ MIT license — use it anywhere


🧩 Dependencies

Library What it does pygame Audio playback pillow Image handling gtts Text-to-speech tkinter GUI (built-in)

All installed automatically. No manual setup.


📈 Roadmap

· entry() — input fields · checkbox() — toggles · menu() — dropdowns · progress() — loading bars · Drag & drop support

PRs welcome! Let's make this the easiest GUI library ever.


📝 License

MIT — do whatever you want. Just don't blame us if your app becomes sentient.


⭐ Show Love

If this saved you 10 minutes of boilerplate hell — drop a ⭐ on GitHub!

⬆ Back to top


---

Metadata

Release files for toolsan-desktop 0.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for toolsan-desktop 0.0.5
File Size Uploaded
toolsan_desktop-0.0.5.tar.gz 4.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for toolsan-desktop 0.0.5
File Interpreter ABI Platform
toolsan_desktop-0.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 9.1 kB

Release files / toolsan_desktop-0.0.5.tar.gz

Download URL toolsan_desktop-0.0.5.tar.gz
Size 4.2 kB
Tags Source
SHA-256 checksum
How to use checksums
cad48c9cd21abb334122c00e3bf1c948ddfebd49f09665b7d89ad2ee20e3e547
BLAKE2b-256 checksum
How to use checksums
519d178319fa6b9a937126601cc6dcd23f988f5c93079db9684c3fe715260e7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release files / toolsan_desktop-0.0.5-py3-none-any.whl

Download URL toolsan_desktop-0.0.5-py3-none-any.whl
Size 4.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
69aca4aa121365f57172a767605f491c117738fa1cc55d08d38593f60ba0251e
BLAKE2b-256 checksum
How to use checksums
76df8e037b25463d4260b8e343a7a471597417741cd408a8aafe0558a22624a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.13

Release history Release notifications | RSS feed

This release

0.0.5 This release

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page