Перейти к содержанию

Список библиотек

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

Список

JSON

  • orjson - самая быстрая библиотека для (де)сериализации json, написанная на Rust. Умеет нативно сериализовать объекты из dataclass, datetime, numpy и UUID. Имеет множество опций для тонкой настройки парсера, содержит вещи которых нет в парсере стандартной библиотеки. Имеет более полное соответствие UTF-8 и JSON формату.

ORM

  • Ormar - небольшая асинхронная ORM на Pydantic + SqlAlchemy.
  • Piccolo - асинхронная ORM с батарейками. Есть админка, аутентификация, миграции и еще куча всего. Из под коробки умеет работать с FastAPI, BlackSheep и т.д.

ODM (MongoDB)

  • Beanie - асинхронная ODM, базирована на Motor + Pydantic.

Платежные системы

  • glQiwiAPI - асинхронная обертка для API QIWI и YooMoney.

Веб фреимворки

  • FastAPI - лучший REST фреимворк тысячилетия, основанный на Starlette и Pydantic. Умеет делать автоматически OpenAPI схему, валидировать ответы и ещё кучу всего.
  • Django - второй лучший фреимворк тысячилетия. Внутри админка, ORM, авторизация и куча написанных сообществом батареек.
  • Starlite - гибкий асинхронный фреимворк испытавший влияние NestJS.
  • emmett - довольно интересный фреимворк, обзор лучше прочитать тут

Django-батарейки

  • django-import-export - импорт и экспорт сукщностей в различных форматах. Фильтрация, работа с админкой, превьюшки.
  • django-simple-history - реализация истории изменения данных в моделях.

Очереди задач

  • arq - асинхронная очередь задач на redis.

Telegram

  • aiogram - асинхронный фреимворк для Telegram ботов.

Остальное

  • adict - небольшая библиотека, которая позволяет обращаться со словарем так, как будто мы взаимодействуем с экземпляром класса. Библиотека предоставляет доступ к ключам словаря как доступ к атрибутам объекта.
  • anytree - простая и расширяемая структура представляющая дерево. Умеет в экспорт в различные форматы, обход, поиск.
  • aiomisc - огромное количество различных утилит для asyncio.
  • Faker - генератор фейковых данных, крутая штука для тестирования.
  • impler - Implementation pattern прям как в Rust.
  • exchangelib - библиотека для работы с Microsoft Exchange Web Services.
  • dataset - обертка над SQLAlchemy, которая обеспечивает абстракцию, которая позволяет работать с реляционной БД как с MongoDB. Умеет менять схему налету.
  • tablib - библиотека для создания табличных датасетов.
  • sqlalchemy-filters - Фильтры для sqlalchemy моделей без боли.
  • godot-python - поддержка Python в Godot.
  • Granian - http сервер на Rust для Python приложений.
  • Flet - фреимворк который позволяет строить интерактивные десктопные/мобильные/веб приложения, в итоге получаем SPA/PWA. Построено это всё на Flutter (https://flutter.dev/).
  • safetywrap - Option и Result из Rust.
  • option - Тоже Option и Result из Rust.
  • zeep - SOAP клиент.
  • pandas - библиотека для работы, анализа и манипуляции данными.
  • numpy - библиотека для работы с научными вычислениями и разной математикой.
  • more-itertools - itertools для тех, кому не хватает обычного itertools. Примеры применения можно найти здесь
  • PyMuPDF - работа с PDF.