Metadata-Version: 2.4
Name: CharmPkk
Version: 0.4.0
Summary: Красивые, плавные и настраиваемые интерфейсы для Python: консоль (TUI) и оконные приложения (GUI) с акрилом, стеклом, частицами и эффектами.
Author-email: Your Name <you@example.com>
License: MIT
Project-URL: Homepage, https://github.com/yourname/charmpkk
Project-URL: Source, https://github.com/yourname/charmpkk
Project-URL: Issues, https://github.com/yourname/charmpkk/issues
Project-URL: Changelog, https://github.com/yourname/charmpkk/blob/main/CHANGELOG.md
Keywords: ui,console,terminal,tui,tkinter,gui,acrylic,mica,glass,particles,animation,charmpkk
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Environment :: Console
Classifier: Environment :: X11 Applications
Classifier: Topic :: Software Development :: User Interfaces
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Dynamic: license-file

CharmPkk — библиотека для создания красивых, плавных и кастомизируемых интерфейсов на чистом Python. Работает в двух режимах: в терминале (TUI — где кастомизации максимум) и в окне (GUI на базе tkinter, без внешних зависимостей). Всё построено вокруг идей «мягкого стекла», живых частиц и плавных анимаций.

Возможности
Консоль (TUI)

Цвета и стили: ANSI/truecolor, 256-цветов, hex-цвета, градиенты, радуга, Style-контекст, готовые Palette-темы (dark, light, nord, dracula, gruvbox, tokyo_night, catppuccin, monokai).

Текст и рамки: выравнивание, обрезка, обёртка; 8 стилей рамок (single, double, round, heavy, dashed, dotted, ascii, shadow, none), панели, баннеры, big_text для больших ASCII-заголовков.

Виджеты: ProgressBar, FancyProgressBar (block/line/dots/star/arrow/square/shade/braille/heart), AnimatedProgressBar (плавно «догоняет» значение), MultiProgress, TaskList (как в CI), Spinner (9 пресетов кадров), Table (zebra, per-column alignment), списки, key_value, badge, statusline, tree.

Графики: sparkline, bar_chart, gauge, histogram, heatmap.

Интерактив: select, multiselect, tabs (стрелки + hotkeys), Form/Field с валидацией, Wizard/Step — пошаговые мастера.

Уведомления и диалоги: info/success/warning/error, Log, ask, ask_password, ask_number, ask_choice, confirm.

Markdown: render_markdown / print_md — заголовки, списки, цитаты, код, ссылки, inline-стили.

Анимации: 17 easing-функций, tween, Transition, Live (перерисовка блока на месте), эффекты fade_in, wave, shimmer, glitch, marquee, neon, typewriter с курсором.

Частицы (реальное время в терминале): Rain, Snow, Stars, Dust, Matrix, Bubbles, Fireflies + play()/play_preset() на N секунд на весь экран.

Терминал: скрытие/показ курсора, позиционирование, save/restore, alt_screen, смена заголовка окна, bell, flash, OSC 8 гиперссылки, OSC 52 clipboard, определение truecolor/256.

Окно (GUI, tkinter)

Темы: 10 встроенных (dark, light, nord, gruvbox, dracula, tokyo_night, catppuccin, solarized_dark/light, monokai) + ThemeManager + свои Theme.

Виджеты: StyledButton (7 вариантов × 3 размера), IconButton, StyledEntry (фокус-бордер, prefix/suffix, placeholder, password), TextArea, Toggle, Checkbox, RadioGroup, Slider, Combobox, SegmentedControl, Card, Badge, Divider, Tabs, Tooltip, Toast, Spinner, ProgressBar, TableView (сортировка, зебра, скролл, выбор строки).

Диалоги: MessageDialog, ConfirmDialog, InputDialog + модальный Frost (морозный слой поверх окна).

Композиция приложения: App с шапкой, действиями, сайдбаром, статус-баром, хелперами toast/message/confirm/input; Router/Screen — SPA-подобная навигация по одному окну; CommandPalette (Ctrl+K); ToastManager (очередь тостов в углу); Shortcuts (реестр горячих клавиш + окно-справка).

Frameless-окно: FramelessWindow + CustomTitleBar — перетаскивание, минимизация, максимизация, кнопка закрытия, ресайз по краям.

Стекло и акрил: apply_acrylic_win11 (Mica/Acrylic/Tabbed через DWMWA_SYSTEMBACKDROP_TYPE), apply_acrylic_win10 (SetWindowCompositionAttribute), make_glass_app(app) — универсальный one-call; GlassCard (градиент + светящаяся рамка + hover-glow), GlassPanel (слои-подложки), Frost (модальное затемнение).

Анимации: Animator (tween/pulse/sequence/color), animate, sequence, fade_in, fade_out, slide_in, fade_in_after, fade_out_destroy.

Эффекты: ripple (клик-волна на Canvas), Shimmer (скользящий блик), pulse, GradientFrame (вертикальный/горизонтальный градиент), NeonBorder, GlowText («дышащий» текст).

Частицы: ParticleCanvas с режимами rain, snow, stars, dust, bubbles, fireflies, matrix, custom (свой emitter), spawn_burst(x, y) (вспышки-салюты), attach_background(parent, ...) для фона под UI.

Философия
Никаких тяжёлых зависимостей — только tkinter из стандартной библиотеки. Библиотека строится по слоям: colors/text/boxes → widgets/layout/charts → effects/anim/particles → screens/router/palette. Каждый слой можно использовать отдельно или собирать из них готовые приложения: установщик, конфигуратор, дашборд, CLI-утилита — что угодно.
