PYTHONOMANIA
273 subscribers
195 photos
3 videos
1 file
616 links
Откройте для себя мир Python в PYTHONOMANIA!

Идеально подходит как для начинающих, так и для опытных разработчиков. Присоединяйтесь к нам, чтобы достичь совершенства в Python!

Сайт: https://pythonomania.github.io/
Download Telegram
📱Pyloid.

Pyloid — это Python-версия Electron и Tauri, специально созданная для упрощения разработки десктопных приложений.

❗️Этот проект с открытым исходным кодом, построенный на базе QtWebEngine и PySide6, обеспечивает плавную интеграцию с различными функциями Python, позволяя создавать мощные приложения без лишних сложностей.

❓Почему стоит выбрать Pyloid?

С Pyloid вы можете использовать всю мощь Python в своих десктопных приложениях. Его простота и гибкость делают его отличным выбором как для новичков, так и для опытных разработчиков, ищущих Python-ориентированную альтернативу Electron или Tauri. Pyloid особенно оптимизирован для создания приложений с искусственным интеллектом.

🟢Основные возможности:

🔘Веб-интерфейс для приложений: Создание интерфейсов с использованием HTML, CSS и JavaScript.

🔘Поддержка иконок в системном трее: Легкая реализация иконок для добавления различных функций.

🔘Управление несколькими окнами: Простое создание и управление несколькими окнами.

🔘Мост между Python и JavaScript: Плавная интеграция между Python и JS для расширения функционала.

🔘Поддержка единственного экземпляра приложения: Управление приложениями без дублирования.

🔘Широкие возможности для десктопных приложений: Мониторинг, захват экрана, уведомления, горячие клавиши, работа с буфером обмена.

🔘Чистый и понятный код: Простая структура кода для повышения производительности разработчика.

🔘Живое обновление интерфейса: Реальные изменения UI в процессе разработки.

🔘Кроссплатформенная поддержка: Работает на Windows, macOS и Linux.

🔘Интеграция с frontend-библиотеками: Поддержка HTML/CSS/JS и React.

#Pyloid #Python #DesktopApps #Development #OpenSource #Electron #Tauri #AI #Frontend #QtWebEngine #PySide6 #Coding #Programming

📱Ссылка на репозиторий:
https://github.com/pyloid/pyloid
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍5🔥4
📱Deply.

Deply
— это автономный инструмент на Python для контроля архитектурных паттернов и зависимостей в крупных Python проектах. Он анализирует структуру кода и зависимости, чтобы гарантировать соблюдение архитектурных правил. Это способствует созданию более чистого, модульного и поддерживаемого кода.

🔹Основные функции:

🔘Анализ на основе слоёв: Определяйте слои проекта и ограничивайте их зависимости для усиления модульности.

🔘Динамическая конфигурация слоёв: Настраивайте коллекторы для каждого слоя с помощью шаблонов файлов, наследования классов и логических условий.

🔘Правила кросс-слойных зависимостей: Задавайте правила, запрещающие доступ определённых слоёв к другим.

🔘Расширяемость и гибкость: Настраивайте слои и правила для любого Python проекта.

✅Deply — для тех, кто ценит порядок в архитектуре и чистый код!

#Python #Programming #SoftwareArchitecture #CleanCode #Deply #DependencyManagement #CodeQuality

📱Ссылка на репозиторий:
https://github.com/Vashkatsi/deply
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2
📱JMESPath.

JMESPath — это язык запросов, позволяющий декларативно извлекать данные из JSON-документов.

❓Как это работает?
Допустим, у нас есть JSON:

{"foo": {"bar": "baz"}}


Запрос foo.bar вернёт "baz".

🔘Работа со списками:

{"foo": {"bar": ["one", "two"]}}


Запрос foo.bar[0] вернёт "one", а foo.bar[-1] — "two".

🔘Выбор всех элементов (*):

{"foo": {"bar": [{"name": "one"}, {"name": "two"}]}}


Запрос foo.bar[*].name вернёт ["one", "two"].

🔘Работа с объектами:

{"foo": {"bar": {"name": "one"}, "baz": {"name": "two"}}}


Запрос foo.*.name вернёт ["one", "two"].

✅JMESPath упрощает обработку JSON в Python, JavaScript и других языках!

#JMESPath #JSON #DataProcessing #Automation #Python #Programming

📱Ссылка на репозиторий:
https://github.com/jmespath/jmespath.py
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥4👍1
📱drawDB.

drawDB — бесплатный и интуитивно понятный редактор схем БД и генератор SQL.

🔹Ключевые особенности:

🔘Простое и удобное создание диаграмм сущностей прямо в браузере.

🔘Экспорт SQL-скриптов за пару кликов.

🔘Гибкая настройка редактора без необходимости регистрации.

#Database #SQL #DBER #drawDB #WebTools #Programming

📱Ссылка на репозиторий:
https://github.com/drawdb-io/drawdb
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍3🔥2
📱Py-Shiny.

Py-Shiny
— мощный фреймворк для создания быстрых и красивых веб-приложений на Python!

✅Py-Shiny позволяет легко и быстро создавать интерактивные визуализации и прототипы приложений. В отличие от других инструментов, ориентированных на дата-сайентистов, Py-Shiny не ограничивает масштаб вашего приложения — он достаточно гибкий и расширяемый, чтобы поддерживать большие и критически важные проекты.

🔹Особенности:

🔘Создавайте интерактивные приложения быстро и просто

🔘Использует реактивное программирование — обновления происходят автоматически.

🔘Масштабируется от небольших прототипов до крупных проектов.

🔘Поддерживает модули для удобной разработки больших приложений.

🔘Позволяет бесплатно хостить приложения на shinyapps.io, Hugging Face и Shinylive.

#Python #PyShiny #WebApps #DataScience #ReactiveProgramming #OpenSource #PythonDev #Shiny #Coding #Programming

📱Ссылка на репозиторий:
https://github.com/posit-dev/py-shiny
Please open Telegram to view this post
VIEW IN TELEGRAM
54👍3
📱The Algorithms — Python.

The Algorithms — Python — это один из крупнейших образовательных проектов по алгоритмам в мире.

Здесь собрано огромное количество алгоритмов, реализованных на Python, и всё это — полностью открыто и создано для того, чтобы каждый мог учиться, разбираться и расти как разработчик.

❓ Хочешь внести вклад

Перед началом просто загляни в Contribution Guidelines — там подробно описано, как правильно оформить PR.

🌐 Нужна помощь или хочешь пообщаться?

У проекта есть дружелюбные комьюнити в Discord и Gitter — отличные места, чтобы задать вопрос, найти единомышленников или просто пообщаться с людьми, которые так же увлечены алгоритмами.

🔻Хочешь быстро найти нужный алгоритм?

У них есть удобный каталог, где всё структурировано и легко найти нужную тему.

✅Проект идеально подходит тем, кто хочет прокачать алгоритмическое мышление:
можно изучать готовые решения, улучшать их или предлагать свои. Реализации максимально простые и понятные — именно такими и должны быть учебные примеры.


#python #algorithms #opensource #education #coding #programming #developers #github

📱Ссылка на репозиторий:
https://github.com/TheAlgorithms/Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2⚡1👍1
📱Skelet.

Skelet — новое Python-решение для удобной, безопасной и централизованной работы с настройками!

Соберите все конфигурации проекта в одном месте. Обеспечьте безопасность типов, потокобезопасность и защиту данных. Skelet автоматически валидирует значения, загружает настройки из файлов и переменных окружения, а также использует простой и приятный pythonic-синтаксис.

🔹Особенности Skelet:

🔘Строгая типизация и автоматическая валидация.
🔘Секретные поля (скрываются в логах и исключениях).
🔘Гибкая загрузка из TOML/JSON/YAML/ENV.
🔘Конфликты между полями и продвинутые проверки.
🔘Ленивые значения по умолчанию.
🔘Потокобезопасность и встроенные мьютексы.
🔘Колбэки при изменении значений.
🔘Конвертеры, кастомные ключи, алиасы.

🔻Пример:
from skelet import Storage, Field, NonNegativeInt

class ManDescription(Storage):
name: str = Field()
age: NonNegativeInt = Field(
validation={'You must be 18 or older to feel important': lambda x: x >= 18}
)


✅Skelet — когда хочется всё красиво, гибко и безопасно.

#python #skelet #config #settings #pythondev #backend #programming #typedpython #pythonic #libraries #opensource #devtools #конфигурации #настройки #валидация #типизация #TOML #YAML #JSON

📱Ссылка на репозиторий:
https://github.com/pomponchik/skelet
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥4👍1
📱Svc-infra.

Svc-infra — это библиотека для FastAPI, которая упаковывает всю типовую backend-инфраструктуру (авторизацию, биллинг, фоновые задачи, вебхуки, кеширование) в готовые к использованию компоненты.

✅Вместо того чтобы каждый раз писать один и тот же код для аутентификации, работы с БД и очередями задач, вы просто импортируете нужные функции и фокусируетесь на бизнес-логике своего FastAPI-приложения.

❓Что внутри:

🔘Авторизация: JWT, сессии, OAuth/OIDC, MFA, API ключи.

🔘 Биллинг: Учет использования, подписки, счета, интеграция Stripe.

🔘БД: PostgreSQL + MongoDB, миграции, inbox/outbox паттерн.

🔘Фоновые задачи: Очереди, планировщик, повторы, DLQ.

🔘Вебхуки: Подписки, HMAC-подпись, автоповторы доставки.

🔘Кеш: Redis/память, декораторы, namespace'ы.

🔘Observability: Prometheus, Grafana дашборды, OTEL.

🔘Хранилище: S3, локальное, in-memory.

🔘Multi-tenancy: Изоляция тенантов.

🔘Rate Limiting: Ограничение по пользователю/эндпоинту.

#Python #FastAPI #Backend #API #WebDev #DevOps #SaaS #Microservices #Infrastructure #OpenSource #Coding #Programming #SoftwareDevelopment #CloudNative #ProductionReady

📱Ссылка на репозиторий:
https://github.com/nfraxlab/svc-infra
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍3🔥1
📱Django Signals.

Django Signals — это мощный механизм, который позволяет разным частям вашего приложения "общаться" друг с другом, автоматически реагируя на различные события (например, сохранение модели или удаление объекта).

Но давайте будем честны: когда проект разрастается, поиск всех отправителей и получателей сигналов превращается в настоящий детектив с дебагом вслепую!

Устали искать концы? Встречайте Django Signals Panel!

Это удобный инструмент, который собирает и выводит все зарегистрированные сигналы Django и их обработчики (receivers) прямо в стандартную панель администратора.

🔹Главные фичи:

🔘Авто-поиск: автоматически находит все сигналы в вашем проекте и установленных приложениях.

🔘Детальная инспекция: показывает имя функции, модуль, путь к файлу, отправителя (sender) и dispatch UID для каждого обработчика.

🔘Просмотр исходного кода: исходники receiver'ов с подсветкой синтаксиса можно читать прямо в админке (включается опционально).

🔘Удобная навигация: быстрый поиск по имени/модулю и фильтрация по приложениям.

🔘Zero migrations: пакет работает исключительно на чтение, ваша база данных не затрагивается вообще!

🔘Полная поддержка встроенной тёмной темы Django.

🚀Быстрый старт:
pip install dj-signals-panel
(Требуется Python 3.9+ и Django 4.2+)

#Django #Python #Backend #WebDev #DjangoAdmin #OpenSource #DevTools #Programming

📱Ссылка на репозиторий:
https://github.com/yassi/dj-signals-panel
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍2🔥22
📱OracleTrace.

OracleTrace — это легковесный Python-профайлер, созданный специально для поиска просадок производительности (регрессий), быстрого сравнения трейсов и наглядной визуализации графа вызовов.

Традиционные профилировщики часто бывают перегружены деталями и плохо подходят для простого ответа на вопрос: «А не стал ли мой скрипт работать медленнее после последних правок?». OracleTrace решает именно эту задачу.

🔹Главные фичи:

🔘Поиск регрессий: сравнивайте два JSON-файла с трейсами и моментально находите функции, которые стали работать медленнее, быстрее, или вовсе были удалены/добавлены.

🔘Идеально для CI/CD: инструмент умеет ронять пайплайн, если код замедлился больше заданного порога (флаг --fail-on-regression).

🔘Наглядный граф вызовов: строит визуальное дерево выполнения (кто, кого и сколько раз вызывал).

🔘Умная фильтрация: отсекает внутренние вызовы самого Python, оставляя фокус только на коде вашего проекта. Поддерживает игнор по регуляркам.

🔘Экспорт: результаты можно легко выгрузить в JSON (для автоматизации) или CSV (для отчетов).

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

Под капотом используется встроенная функция sys.setprofile() для перехвата вызовов (call) и возвратов (return). Инструмент замеряет время выполнения каждой функции и фиксирует связи между ними, не требуя тяжелой инструментации кода.

🚀Быстрый старт:
pip install oracletrace
(Требуется Python 3.10+)

💡 Пример использования:
Сначала сохраняем базовый трейс:
oracletrace my_app.py --json baseline.json

Затем сравниваем с новой версией (например, в CI):
oracletrace my_app.py --json current.json --compare baseline.json --fail-on-regression --threshold 25

#Python #Profiling #Backend #DevTools #CI #OpenSource #Performance #Programming

🔹Ссылка на репозиторий:
https://github.com/KaykCaputo/oracletrace
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍3⚡2🔥21
📱PrettyTable.

PrettyTable — это классическая и невероятно удобная библиотека для Python, которая позволяет красиво выводить табличные данные прямо в терминале (в виде ASCII-таблиц) и не только!

Если вам нужно быстро визуализировать логи, статистику или просто структурировать вывод в консоли, этот инструмент сэкономит кучу времени.

🔹Главные фичи:

🔘Гибкий импорт: Собирайте таблицы построчно, по столбцам, или загружайте данные напрямую из .csv файлов и SQL-баз данных (через курсор).

🔘Мульти-экспорт: Не ограничивайтесь консолью! PrettyTable умеет конвертировать ваши таблицы в HTML, JSON, CSV, LaTeX, MediaWiki и Markdown в один вызов метода.

🔘Детальная стилизация: Полный контроль над внешним видом. Меняйте выравнивание (влево, вправо, по центру), убирайте рамки, настраивайте символы разделителей или используйте готовые стили (например, для переноса в MS Word).

🔘Умная работа с данными: Встроенная сортировка по нужной колонке, фильтрация строк (по кастомной логике) и даже пагинация для огромных таблиц, чтобы они легко читались на экране.

🔘Поддержка цвета: Используйте класс ColorTable для добавления ANSI-цветов и создания стильных терминальных интерфейсов.

🚀Быстрый старт:

pip install prettytable

from prettytable import PrettyTable

table = PrettyTable(["Город", "Население"])
table.add_row(["Аделаида", 1158259])
table.add_row(["Брисбен", 1857594])

print(table)


#Python #PrettyTable #Terminal #CLI #DataScience #Backend #DevTools #OpenSource #Programming

📱Ссылка на репозиторий:
https://github.com/prettytable/prettytable
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍3🔥21
📱SPy.

SPy — это статически компилируемый вариант Python!

Мечтали писать код так же легко, как на Python, но чтобы он работал так же быстро, как скомпилированный язык? Проект SPy пытается решить именно эту амбициозную задачу.

🔹Главные фичи:

🔘Два режима работы: Вы можете писать и тестировать код быстро через привычный интерпретатор, а затем скомпилировать его в нативный исполняемый файл (executable) для максимальной скорости.

🔘Прозрачный конвейер: SPy не просто "вслепую" транслирует код в C. Компиляция проходит в несколько этапов (Py AST -> SPy AST -> Redshift -> C -> Бинарник). Вы можете остановить процесс на любом шаге специальными флагами в консоли, чтобы посмотреть, во что превращается ваш код!

🔘 Магия WebAssembly (WASM): В основе языка лежит рантайм-библиотека libspy (написанная на C). Самое крутое: когда вы запускаете код в интерпретаторе, эта библиотека подгружается прямо туда в виде WASM-модуля через wasmtime. А при релизной сборке она статически линкуется к вашему бинарнику.

🔘Работает в браузере: Благодаря архитектуре на базе WASM/emscripten, SPy может работать поверх Pyodide прямо в браузере без установки!

❓Как попробовать?

❗️Пока проект находится в активной разработке, локальная установка требует немного ручной работы: вам понадобится Python 3.12, сборка библиотеки libspy через команду make и установка самого пакета в режиме для разработчиков (pip install -e .[dev]).

💡Но если вы не хотите возиться с терминалом, на официальном сайте есть браузерная песочница (Playground), где можно пощупать язык прямо сейчас.

#Python #WebAssembly #WASM #Compiler #Backend #DevTools #OpenSource #Programming

📱Ссылка на репозиторий:
https://github.com/spylang/spy
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥32
📱AI Engineering from Scratch.

AI Engineering from Scratch — ультимативный опенсорс-курс по ИИ-инженерии!

От линейной алгебры до создания роев автономных агентов. Забудьте про скучные видеолекции и пассивное потребление. Это AI-native курс, где вы изучаете ИИ с помощью ИИ, создавая реальные проекты на Python, TypeScript, Rust и Julia.

🔹В чем главная фишка?

Классические курсы заканчиваются сертификатом и фразой: "Поздравляем, вы это выучили". Здесь каждый из 272+ уроков завершается созданием готового переиспользуемого артефакта:

🔘Prompts: продвинутые шаблоны для ИИ-ассистентов.
🔘Skills: навыки для ИИ-кодеров (Claude Code, Cursor).
🔘Agents: автономные воркеры, готовые к деплою.
🔘MCP Servers: серверы для Model Context Protocol.

❓Что внутри (20 фаз, ~306 часов):

🔘Фундамент: Математика для ML, классическое машинное обучение и Deep Learning.

🔘Модели: Computer Vision, NLP, звук, Трансформеры и создание LLM с нуля.

🔘Инженерия: Промпт-инжиниринг, RAG, Multimodal AI, интеграция инструментов (API, MCP).

🔘Агенты: Agent Engineering, Автономные системы безопасности и Мультиагентные рои (Swarms).

🐱Философия "Build It / Use It"

Вы не используете готовые фреймворки с первого дня. Сначала вы пишете архитектуру с нуля на чистом коде (понимая всю внутреннюю логику), и только потом переходите к "продакшен" инструментам вроде PyTorch или sklearn.

❓Как начать:

Курс адаптируется под вас. Новички могут начать с базовой математики (Phase 1), а сеньоры — сразу прыгнуть в разработку агентов (Phase 14). Если используете ИИ-кодеры, можно запустить команду /find-your-level, чтобы ИИ сам подобрал вам персональный путь.

#AI #MachineLearning #DeepLearning #LLM #AIAgents #Python #DataScience #OpenSource #Education #Programming

📱Ссылка на репозиторий:
https://github.com/rohitg00/ai-engineering-from-scratch
Please open Telegram to view this post
VIEW IN TELEGRAM
1⚡2🔥21
📱Typerform.

Typerform — это генератор типобезопасных CLI-интерфейсов, работающий на базе Pydantic и Prompt-Toolkit.

Он превращает ваши Pydantic-модели в профессиональные, интерактивные пошаговые CLI-визарды. Забудьте про написание скучных циклов ввода input() и ручную валидацию — теперь за пользовательский опыт отвечают ваши схемы данных!

🔹Главные фичи:

🔘Zero Boilerplate: Нужна всего одна строчка кода, чтобы сгенерировать полноценный многошаговый мастер настройки.

🔘Типобезопасность: Инструмент автоматически подхватывает все ограничения из Pydantic (например, min_length, ge, EmailStr).

🔘Шаг назад (Backtracking): Ошиблись при вводе? Просто напишите :b или :back, чтобы вернуться к предыдущему полю и отредактировать его.

🔘Условная логика: Динамически скрывайте или показывайте поля в зависимости от ответов пользователя (через параметр when).

🔘Безопасность из коробки: Автоматическое скрытие ввода (звездочками) для полей SecretStr (идеально для паролей и API-ключей).

🔘Умное автодополнение: Нечеткий поиск (fuzzy search) и подсказки в реальном времени для типов Enum и Literal.

🔘Списки и коллекции: Встроенная поддержка List[T] — визард сам запустит цикл для добавления нескольких элементов.

🔘Гидратация: Умеет предзаполнять форму данными из переменных окружения или файлов конфигурации.

🚀Быстрый старт:

pip install pytypeform

from typing import Literal
from pydantic import BaseModel, Field
from typeform import form

class SetupConfig(BaseModel):
project_name: str = Field(description="Project Name", min_length=3)
environment: Literal["dev", "staging", "prod"] = Field(default="dev")

# Генерация визарда одной строкой!
config = form(SetupConfig, title="Project Setup")
print(config.model_dump())


#Python #Pydantic #CLI #Backend #DevTools #Programming #OpenSource

📱Ссылка на репозиторий:
https://github.com/STHITAPRAJNAS/typeform
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥4⚡1👍1
📱Tryke.

Tryke - это современный фреймворк для тестирования в Python, который делает написание тестов более структурированным и интуитивно понятным.

Если в Python вам всегда не хватало красивого BDD-стиля (как в Jest или RSpec) с их вложенными блоками describe, то Tryke создан именно для вас!

🔹Главные фишки:

🔘Иерархия тестов: Логически группируйте сценарии с помощью контекстных менеджеров with t.describe("имя_группы"):.

🔘Умные фикстуры: Удобное внедрение зависимостей через аннотации типов (Annotated[..., t.Depends(...)]). Поддерживается кеширование на уровне модуля или отдельного блока describe (per="scope").

🔘Читаемые проверки (Assertions): Синтаксис t.expect(actual, "описание").to_equal(expected) делает отчеты об ошибках в консоли максимально понятными.

🔘Асинхронность из коробки: Нативная поддержка тестов через async def.

🔘Продвинутый CLI-раннер: Встроенный режим постоянной работы (tryke test --watch) для запуска тестов на лету при сохранении кода, а также запуск только для измененных файлов (--changed).

💡Переходите с pytest?

Авторы подготовили не только классическую шпаргалку по миграции, но и специальный готовый LLM-промпт. Вы можете просто скормить его своему ИИ-ассистенту (Cursor, Copilot и т.д.), и он поэтапно, с проверками перепишет ваши тесты с pytest на Tryke.

🚀Как запустить:

Если у вас есть uv, достаточно выполнить:
uvx tryke test

Пример синтаксиса:
import tryke as t

with t.describe("users"):
@t.test("stores a new user")
async def test_set(users: ...):
users["bob"] = "bob@example.com"
t.expect(users["bob"], "stores email").to_equal("bob@example.com")


#Python #Testing #Tryke #QA #DevTools #Backend #Pytest #OpenSource #Programming

📱Ссылка на репозиторий:
https://github.com/thejchap/tryke
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥33👍1
📱Katharos.

Katharos — это
библиотека для Python, которая помогает писать чистый и безопасный код без боли, используя лучшие фишки функционального программирования.

Если вас тоже бесят бесконечные проверки if something is None и многоэтажные try/except, то этот инструмент вам точно понравится!

🔹В чем главная польза:

🔘Избавляемся от None: Специальный тип Maybe позволяет строить безопасные цепочки действий. Если на каком-то этапе данных не оказалось, код не упадет с ошибкой, а просто аккуратно прервется.

🔘Ошибки под контролем: С типом Result ошибки обрабатываются как обычные переменные. Вы можете передавать их по цепочке, не оборачивая каждый чих в блоки try/except.

🔘Плоский код: Благодаря декоратору @do вы пишете код ровно и линейно (как обычно), а все рутинные проверки на пустоту или ошибки библиотека делает за вас под капотом.

🔻Почувствуйте разницу:

Было (лапша из проверок):
user = find_user(user_id)
if user is None:
return None

account = find_account(user)
if account is None:
return None

return account.discount


Стало (красиво и лаконично):

from katharos.types import Maybe
from katharos.syntax_sugar import do

@do(Maybe)
def lookup_discount(user_id):
# Если функция ничего не найдет, выполнение само остановится
user = yield find_user(user_id)
account = yield find_account(user)
return account.discount


🔧Установка:
pip install katharos

#Python #CleanCode #DevTools #Programming #OpenSource #Разработка

📱Ссылка на репозиторий:
https://github.com/kamalfarahani/katharos
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥3👍2
📱Python UUID Utils.

Python UUID Utils —
это сверхбыстрая замена стандартного модуля uuid в Python, написанная на Rust. Инструмент разработан как полноценная альтернатива (drop-in replacement): вы можете кратно ускорить генерацию уникальных идентификаторов в вашем приложении без кардинального переписывания кодовой базы.

🔹Доступные версии UUID:

🔘uuid1 / uuid6 — на основе временной метки и монотонного счетчика.

🔘uuid3 / uuid5 — на основе хэшей MD5 и SHA-1 от переданных данных.

🔘uuid4 — классический UUID на базе случайных данных.

🔘uuid7 — современный стандарт на основе Unix-времени, идеально подходящий для первичных ключей в базах данных благодаря сортировке по времени создания.

🔘uuid8 — кастомные UUID на основе пользовательских данных.

🚀Потрясающая производительность (Бенчмарки):

Согласно официальным тестам на Python 3.14, ускорение получается просто космическим:

🔘uuid4(): Стандартная библиотека — 1189 нс | uuid_utils — всего 61 нс (быстрее почти в 20 раз!).

🔘uuid7(): Стандартная библиотека — 1336 нс | uuid_utils — 84 нс (быстрее в 15 раз!).

🔘Парсинг идентификатора из строк (hex) или байтов работает быстрее в 4–5 раз.

🔧Совместимость с Django и другими фреймворками:

Некоторые крупные фреймворки строго требуют, чтобы объекты UUID были именно инстансами стандартного класса uuid.UUID из встроенной библиотеки Python, а не сторонними сабклассами. Разработчики это учли! Для таких случаев есть специальный модуль совместимости:

import uuid_utils.compat as uuid

# Возвращает родной объект stdlib uuid.UUID,
# но генерирует его в 4-5 раз быстрее стандартного модуля!
my_id = uuid.uuid4()


📦Установка:

pip install uuid-utils
# или через conda
conda install -c conda-forge uuid-utils


#Python #Rust #Performance #UUID #Backend #Django #DevTools #Programming #OpenSource #Оптимизация

📱Ссылка на репозиторий:
https://github.com/aminalaee/uuid-utils
Please open Telegram to view this post
VIEW IN TELEGRAM
3⚡2👍22
📱Matchify.

Matchify
- это CLI-утилита, которая автоматически преобразует длинные цепочки if/elif/else в современные конструкции match/case (сопоставление с образцом, появившееся в Python 3.10+), сохраняя логику работы и исходное форматирование кода.

Инструмент построен на базе LibCST, благодаря чему не ломает существующие отступы, комментарии и стиль оформления кодовой базы.

🔹Что умеет трансформировать:

🔘Базовые сравнения: Простые проверки равенства (x == 1, x == 2) и идентичности (x is None).

🔘Проверки типов и атрибутов: Превращает конструкции вида isinstance(p, Point) and p.x == 5 в элегантный case Point(x=5):.

🔘Последовательности и срезы: Заменяет громоздкие проверки длины и индексов (len(x) == 2 and x[0] == 0) на распаковку case 0, _:.

🔘Вложенные структуры: Распознает сложные комбинации списков, вложенных объектов и кортежей.

🔘Безопасность по умолчанию: В стандартном режиме (--safe) утилита переписывает код только тогда, когда семантика гарантированно сохраняется. Для спорных случаев есть флаги явных допущений (--assume pure-subjects, --assume identity-equality и др.).

🔘Параллелизм и CI: Поддерживает многопоточную обработку для больших репозиториев, проверку без изменения файлов (--check) и готовые хуки для pre-commit.

🔻Пример до и после:

До:

if isinstance(node, Point) and node.x == 5:
print("x is 5")
elif isinstance(node, Point):
print("other point")


После обработки Matchify:


match node:
case Point(x=5):
print("x is 5")
case Point():
print("other point")


🚀Быстрый запуск:

Запуск на проекте без предварительной установки:

uvx matchify path/to/project/


Или установка в качестве постоянной CLI-утилиты:

uv tool install matchify
# Проверить проект без записи изменений
matchify path/to/project/ --check


❗️Обратите внимание: проект создавался при содействии ИИ-инструментов, поэтому перед коммитом сгенерированных изменений обязательно прогоняйте тесты своего проекта)\.

#Python #Matchify #PatternMatching #Refactoring #DevTools #LibCST #CleanCode #OpenSource #Programming

📱Ссылка на репозиторий:
https://github.com/15r10nk/matchify
Please open Telegram to view this post
VIEW IN TELEGRAM
4⚡1🔥1
🎓Claude Academy - это официальный интерактивный обучающий трек от компании Anthropic, посвященный эффективному освоению и практическому применению консольного ИИ-агента Claude Code.

Большинство инженеров привыкли к ИИ в виде чатов или расширений для автодополнения в IDE. Claude Code переносит агента прямо в терминал: он умеет самостоятельно исследовать архитектуру проекта, читать и редактировать файлы, выполнять тесты, диагностировать логи сборки и работать с Git.

Обучающая программа Claude Academy помогает перейти от поверхностного использования к продвинутым паттернам агентной разработки.

📚Чему учит курс:

🔘Архитектура и базовый воркфлоу: Принципы работы терминального агента, индексация репозиториев любого размера и эффективная постановка задач на естественном языке.

🔘Модель разрешений и безопасность: Управление политиками выполнения команд (bash, модификация файлов, работа с Git), настройка уровней автономности и безопасная изоляция окружения.

🔘Управление контекстом и долговременная память: Тонкости работы с файлами инструкций CLAUDE.md, оптимизация расхода токенов, алгоритмическое сжатие сессий (/compact) и сброс контекста без потери ключевых архитектурных договоренностей.

🔘Расширение возможностей через MCP: Подключение внешних баз данных, поисковых систем, документаций и API через открытый протокол Model Context Protocol прямо в рабочий цикл агента.

🔘Реальные инженерные кейсы: Практика рефакторинга монолитов, расследование сложных плавающих багов, автоматизация написания тестов и подготовка PR.

💻Быстрый старт с инструментом:

# Глобальная установка Claude Code
npm install -g @anthropic-ai/claude-code

# Запуск в корне вашего репозитория
cd my-project
claude


⬇️Пройти интерактивные модули и практические руководства можно бесплатно на портале Anthropic Academy.

#ClaudeCode #Anthropic #Claude #ClaudeAcademy #AIAgents #CLI #DevTools #Programming #LLM #SoftwareEngineering #MCP
Please open Telegram to view this post
VIEW IN TELEGRAM
3⚡2