Михаил Омельченко | AI&IT
5.28K subscribers
976 photos
192 videos
4 files
713 links
ИИ в работе, разработка, веб. Агенты, автоматизация, инструменты. Веду я, Михаил Омельченко, внешний технический директор по ИИ и ментор.

Менторство, реклама и сотрудничество: djwoms.ru
Telegram - @DJWOMS
YouTube - https://www.youtube.com/c/DjangoSchool
Download Telegram
Добавил пример, "Как реализовать permissions в FastAPI и передать параметры в Depends".

https://djwoms.pro/fastapi/depends/permissions/

#fastapi
👍19🔥1
SQLAlchemy Filterset

Библиотека предоставляет удобный способ фильтрации записей базы данных.

Создав класс FilterSet, вы можете декларативно определить фильтры, которые хотите применять к своим запросам SQLAlchemy.

Эта библиотека особенно полезна в веб-приложениях, поскольку позволяет пользователям легко искать, фильтровать, сортировать и разбивать данные на страницы.

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

📍Декларативное определение фильтров.
📍Хранение всех фильтров в одном месте, что упрощает их использование и изменение по мере необходимости.
📍Создавайте сложные условия фильтрации, комбинируя несколько простых фильтров.
📍Уменьшение дублирования кода, повторное использование одних и тех же фильтров в нескольких местах кода.
📍Синхронная и асинхронная поддержка современного SQLAlchemy.

Документация - https://sqlalchemy-filterset.github.io/sqlalchemy-filterset

#sqlalchemy #fastapi
👍18
FastAPI Websocket Pub/Sub

Быстрый и надежный канал Pub/Sub через websocket.
Самый простой способ создать Pub/Sub.

https://github.com/permitio/fastapi_websocket_pubsub

#fastapi
👍9
Трансляция видео на сервер и в браузер

Разберем что такое webrtc. С помощью aiortc и fastapi реализуем трансляцию видео на сервер и в браузер с использованием webrtc. Рассмотрим webrtc в javascript.

YouTube - https://youtu.be/jU7Y9qWHzFQ

Дзен - https://dzen.ru/video/watch/63ed5a27339850375704a54e

Boosty - https://boosty.to/djangoschool/posts/38aebed4-037e-4cea-85c1-fe9e7671c3c3

#fastapi #webrtc #aiortc
🔥12
Распознавание объектов в потоковом видео | opencv fastapi webrtc

С помощью opencv реализуем распознавание объектов в потоковом видео webrtc и fastapi. Изменение видео с помощью opencv.

YouTube - https://youtu.be/qhZbt9T0r9A

Дзен - https://dzen.ru/video/watch/63eddec95a57ed4dd236b5bb

Boosty - https://boosty.to/djangoschool/posts/cd8c5389-82a3-43c1-a78e-d81894518a03

#fastapi #webrtc #aiortc #opencv
👍9🔥2
sqlalchemy-file — это расширение SQLAlchemy для поддержки файлов в модели SQLAlchemy и загрузки их в различные хранилища, такие как Local Storage, Amazon S3, Rackspace CloudFiles, Google Storage и другие, с использованием Apache Libcloud .

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

📍Multiple Storage: используйте API Object Storage, предоставляемый Apache Libcloud, для хранения файлов. Таким образом, вы можете хранить свои файлы в Local Storage, Amazon S3, Google Cloud Storage, MinIO и легко переключаться между ними. Полный список поддерживаемых поставщиков см. на странице поддерживаемых провайдеров.
📍Validator: Предоставьте интерфейс для проверки каждого файла перед его сохранением.
📍Size Validator: встроенный валидатор для проверки размера файла.
📍Content-Type Validator: встроенный валидатор mimetype.
📍Image Validator: встроенный валидатор для изображений mimetype, width, height и ratio
📍Processor: интерфейс для простого сохранения нескольких преобразований исходных файлов.
📍Thumbnail Generator: встроенный процессор для автоматического создания миниатюр.
📍Multiple Files: вы можете прикрепить несколько файлов непосредственно к модели.
📍Session: всякий раз, когда объект удаляется или выполняется откат, файлы, загруженные во время работы или прикрепленные к удаленным объектам, автоматически удаляются.
📍Смена провайдера: меняйте провайдера хранилища в любое время, старые данные будут продолжать работать.
📍Поддержка SQLModel: протестировано с помощью SQLModel.

https://github.com/jowilf/sqlalchemy-file
https://jowilf.github.io/sqlalchemy-file

#sqlalchemy #fastapi #sqlmodel
🔥12
FastAPI websockets и Redis pub\sub | Архитектура сервиса channels | Проект GSpot

Обсуждаем архитектуру сервиса channels. Данный сервис отвечает за отправку уведомлений, email и чат.

Как правильно реализовать websockets в fastapi. Для чего нужен Redis pub\sub. Причем тут RabbitMQ со своими провайдерами и консьюмерами.

Спасибо всем кто помогает в создании данного проекта.


👉 Смотреть на YouTube

👉 Смотреть на Дзен

👉 Смотреть на Boosty

#ecommerce #gspot #redis #fastapi #rabbitmq
👍11
Media is too big
VIEW IN TELEGRAM
FastAPI websockets и Redis pub\sub | Архитектура сервиса channels | Проект GSpot | Telegram

Обсуждаем архитектуру сервиса channels. Данный сервис отвечает за отправку уведомлений, email и чат.

Как правильно реализовать websockets в fastapi. Для чего нужен Redis pub\sub. Причем тут RabbitMQ со своими провайдерами и консьюмерами.

Спасибо всем кто помогает в создании данного проекта.

#ecommerce #gspot #redis #fastapi #rabbitmq
👍15
FastAdmin — это простоя в использовании панель администратора для FastAPI, Django, Flask.

Разработчик вдохновлялся Django Admin.

GitHub


🔥Провожу индивидуальные занятия по python и веб разработке (django, fastapi, flask, javascript).
Обучаю с нуля, а так же провожу консультации для мидлов и синьоров.

Пишите - https://t.me/DJWOMS

#django #fastapi #flask #admin
👍18🔥9
Starlette-Admin — это быстрый, красивый и расширяемый фреймворк административного интерфейса для приложений Starlette/FastApi.

Демонстрация

Функции:

📍CRUD любых данных
📍Автоматическая проверка форм
📍Поиск и фильтрация
📍Подсветка поиска
📍Экспорт данных в CSV/EXCEL/PDF
📍Аутентификация
📍Авторизация
📍Управление файлами
📍Поддерживаемые ORM
👉 SQLAlchemy
👉 SQLModel
👉 MongoEngine
👉 ODMantic
📍И другое

GitHub


🔥Провожу индивидуальные занятия по python и веб разработке (django, drf, fastapi, flask, javascript и т.д.).
Обучаю с нуля, а так же провожу консультации для мидлов и синьоров.

Пишите - https://t.me/DJWOMS

#fastapi #starlette #admin
👍12
Классы и декораторы для использования FastAPI с маршрутизацией на основе классов.

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

fastapi_class предоставляет class-based view декоратор @View, помогающий решить эту проблему.

Исходный код


🔥Провожу индивидуальные занятия по python и веб разработке (django, fastapi, flask, javascript и т.д.).
Обучаю с нуля, а так же провожу консультации для мидлов и синьоров.

Пишите - https://t.me/DJWOMS

#fastapi #fastapi_class
👍7
python-dependency-injector - инструмент для управления и внедрения зависимостей (DI) в приложениях Python.
Предоставляет мощный и гибкий механизм для объявления и внедрения зависимостей, позволяя упростить создание и управление объектами, которые требуют внешних ресурсов или других зависимостей.

Основные особенности python-dependency-injector:

📍Контейнер: библиотека предоставляет механизм контейнера зависимостей, который позволяет объявлять, регистрировать зависимости и предоставлять их при запросе.

📍Инъекция: python-dependency-injector обеспечивает механизм внедрения зависимостей, который автоматически передает все необходимые зависимости в объекты при их создании.

📍Жизненный цикл: поддерживает управление жизненным циклом зависимостей, позволяя контролировать создание, инициализацию и уничтожение объектов.

📍Разделение на уровни: python-dependency-injector позволяет разделять зависимости на уровни, чтобы обеспечить четкое разделение ответственностей и улучшить модульность приложения.

📍Типы зависимостей: библиотека поддерживает различные типы зависимостей, включая классы, инстансы классов, фабричные функции.

📍Поддержка фреймворков: python-dependency-injector может интегрироваться с фреймворками, такими как Flask, Django, FastAPI и другие, для обеспечения прозрачной инъекции зависимостей в коде приложения.

📍Асинхронность: поддерживает асинхронное внедрение зависимостей (Asynchronous injections).

📍Типизация: предоставляет типы, дружественные mypy.

📍Производительность. Быстрота. Написано на Cython.

📍Зрелость. Можно использовать в продакшене. Хорошо протестирован, документирован и поддерживается.

Исходный код

🔥Провожу индивидуальные занятия по python и веб разработке (django, fastapi, flask, javascript и т.д.).
Обучаю с нуля, а так же провожу консультации для мидлов и синьоров.

Пишите - https://t.me/DJWOMS

#pythondependencyinjector #di #flask #django #fastapi
🔥10👍1
Есть даже такое.

FastDepends — система внедрения зависимостей, извлеченная из FastAPI и очищенная от всей логики HTTP. Поддерживаются как асинхронный, так и синхронный режимы.

https://github.com/Lancetnik/FastDepends

#fastapi #djangoschool #di
👍10❤1
На стримах рассказывал чем мне не нравиться FastAPI. Один из пунктов это реализация "DI".

Хорошо что я не один так считаю 😂
Кто-то новые фреймворки пишет и учитывает ошибки FastAPI, кто-то библиотеки.

Статья на Хабр

Тишка как всегда активно ведет общение, в этот раз в комментариях о свей либе. Откуда у него столько времени 🤷🏼 😂

#djangoschool #статьи #fastapi
👍642