# 🛠️ Toolsan Desktop
> Build GUI apps in seconds — zero boilerplate, pure Python!
[](https://pypi.org/project/toolsan-desktop/)
[](https://pypi.org/project/toolsan-desktop/)
[](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.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| toolsan_desktop-0.0.4.tar.gz | 4.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| toolsan_desktop-0.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.8 kB
Release files / toolsan_desktop-0.0.4.tar.gz
| Download URL | toolsan_desktop-0.0.4.tar.gz |
|---|---|
| Size | 4.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
978079f4e0b592b7e46f27aaf7c5856e7c6ed3a511ad7b4b6147c8facc093844
|
|
BLAKE2b-256 checksum How to use checksums |
1793ac9f3a552cfddae59cb348241b0ff65328fb8a0dd038220038909fd390e0
|
| 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.4-py3-none-any.whl
| Download URL | toolsan_desktop-0.0.4-py3-none-any.whl |
|---|---|
| Size | 4.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0d9d4d99690c015c8aa41f0ce2ff4ad0c004d7ad866af60110b24b0ebd599065
|
|
BLAKE2b-256 checksum How to use checksums |
99bc40e6dc303bfafe018d9998d49e64cd10fb819e3bec789766ce39440662f8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.13
|