TkForge GUI для Python с Figma без единой строчки кода

27 Aug, 2025

Репозиторий давно не обновлялся

Последнее обновление было 10 месяцев назад.

469
🔱 28
👥 5

Знакома ситуация, когда нужно быстро собрать интерфейс для скрипта, а возиться с Tkinter вручную не хочется? А что если я скажу, что можно просто нарисовать макет в Figma и получить готовый Python-код одним кликом?

Что за чудо?

TkForge — это мост между дизайном и кодом. Проект берет ваши макеты из Figma и превращает их в рабочие GUI на Tkinter. Вам не нужно вручную прописывать координаты кнопок или настраивать виджеты — просто рисуете в любимом графическом редакторе.

Логотип TkForge

Интересно, что проект родился как альтернатива Tkinter Designer от ParthJadhav. Автору (Axorax) настолько понравилась идея, что он решил сделать свою версию «с нуля, но лучше».

Как это работает?

  1. Рисуете интерфейс в Figma (обязательно используйте Frame для группировки)
  2. Копируете ссылку на файл и API-токен
  3. Запускаете TkForge и получаете Python-код

Вот как выглядит процесс в действии:

Реклама

Превью работы TkForge

Зачем это нужно?

  • Дизайнерам — можно верстать интерфейсы без знаний Python
  • Разработчикам — экономия часов рутинной работы
  • Преподавателям — наглядный способ показать связь дизайна и кода

5 причин попробовать прямо сейчас

1. Полная интеграция с Figma

Поддерживаются:

  • Несколько фреймов в одном проекте
  • Автоматическая подстановка placeholder-текста
  • Подсветка текста (черный/белый в зависимости от фона)

2. Умное именование элементов

Достаточно назвать объект в Figma определенным образом, чтобы получить нужный виджет:

button → Button
textbox → Entry
textarea → Text
image → Canvas Image

Капитализация не важна — Button, BUTTON и butTon сработают одинаково.

3. Особые фишки для продвинутых

  • Изображения: задайте имя файла прямо в Figma (image my_logomy_logo.png)
  • Плейсхолдеры: добавьте текст через пробел (textbox Введите имя)
  • Графика: поддерживаются обводки для фигур (как в Figma)

4. Гибкость для сложных элементов

Для Scale-виджета можно сразу указать параметры:

scale 10 50 VERTICAL

Преобразуется в:

scale = Scale(from_=10, to_=50, orient="VERTICAL")

5. Работает из командной строки

Для автоматизации можно использовать CLI-версию:

tkforge --id "figma_id" --token "api_token" --output ./app

Где применять?

  • Быстрые прототипы для тестирования идей
  • Инструменты для внутреннего использования в команде
  • Образовательные проекты по визуальному программированию
  • Перенос legacy-интерфейсов в код

Что под капотом?

Проект написан на Python и использует:

  • Figma API для получения данных о макете
  • Tkinter для генерации конечного интерфейса
  • Систему «умного» именования элементов

Вывод: стоит ли пробовать?

Да, если:

  • Работаете с Tkinter и устали верстать вручную
  • Хотите ускорить создание прототипов
  • Любите Figma и хотите использовать его для программирования

Проект активно развивается (441 звезда на GitHub), имеет подробную документацию и поддерживается автором. Для сложных продакшен-проектов могут понадобиться доработки, но для бытовых задач — идеальное решение.

Как бонус — есть Discord-сообщество, где можно показать свои работы и получить советы.


Примечание: Для работы потребуется Figma API-токен. Бесплатный тарифного плана Figma достаточно для личного использования.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.