zhub.link is one of the many independent Mastodon servers you can use to participate in the fediverse.

Administered by:

Server stats:

28
active users

#fastapi

2 posts2 participants1 post today
Habr<p>Taigram: как мы решали проблемы данных и пришли к бете</p><p>Продолжаем рассказывать о разработке нашего Open Source проекта Taigram . В этой статье мы поделимся тем, как организовали конфигурацию приложения, решили проблемы с запуском в разных окружениях и как справлялись с потоком уведомлений. Также затронем тему бета-тестирования и расскажем, как вы можете помочь нам сделать Taigram лучше.</p><p><a href="https://habr.com/ru/articles/891290/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/891290/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/open_source" class="mention hashtag" rel="tag">#<span>open_source</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/dynaconf" class="mention hashtag" rel="tag">#<span>dynaconf</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/aiogram" class="mention hashtag" rel="tag">#<span>aiogram</span></a> <a href="https://zhub.link/tags/taiga" class="mention hashtag" rel="tag">#<span>taiga</span></a> <a href="https://zhub.link/tags/taigram" class="mention hashtag" rel="tag">#<span>taigram</span></a> <a href="https://zhub.link/tags/lifespan" class="mention hashtag" rel="tag">#<span>lifespan</span></a> <a href="https://zhub.link/tags/json" class="mention hashtag" rel="tag">#<span>json</span></a></p>
Habr<p>Создание анонимного чата в Telegram: Бот с MiniApp интерфейсом. Часть 1 — Бэкенд на FastAPI, Aiogram, Redis и Centrifugo</p><p>Это первая статья из цикла, посвященного разработке телеграм-бота с MiniApp для случайных чатов. В этой части мы сосредоточимся на создании бэкенда, используя современные технологии: FastAPI для разработки API, Redis для хранения данных в реальном времени и Centrifugo для обеспечения мгновенного взаимодействия между пользователями. Сегодня мы подробно разберем архитектуру проекта, настройку серверов и реализацию логики бота. В следующей статье мы переключимся на фронтенд и займемся разработкой MiniApp с использованием фреймворка Vue.js . Это позволит создать интуитивно понятный интерфейс для пользователей, где они смогут настраивать параметры поиска собеседника и общаться в режиме реального времени (Real time).</p><p><a href="https://habr.com/ru/companies/amvera/articles/890976/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/amvera/a</span><span class="invisible">rticles/890976/</span></a></p><p><a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/telegram_mini_app" class="mention hashtag" rel="tag">#<span>telegram_mini_app</span></a> <a href="https://zhub.link/tags/telegram_webapp" class="mention hashtag" rel="tag">#<span>telegram_webapp</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/centrifugo" class="mention hashtag" rel="tag">#<span>centrifugo</span></a> <a href="https://zhub.link/tags/centrifugo_v6" class="mention hashtag" rel="tag">#<span>centrifugo_v6</span></a> <a href="https://zhub.link/tags/sqlalchemy" class="mention hashtag" rel="tag">#<span>sqlalchemy</span></a> <a href="https://zhub.link/tags/redis" class="mention hashtag" rel="tag">#<span>redis</span></a> <a href="https://zhub.link/tags/redis_python" class="mention hashtag" rel="tag">#<span>redis_python</span></a> <a href="https://zhub.link/tags/%D0%B1%D1%8D%D0%BA%D0%B5%D0%BD%D0%B4" class="mention hashtag" rel="tag">#<span>бэкенд</span></a></p>
Habr<p>Наш архитектурный подход к Python приложениям</p><p>Мы долгие годы писали сервисы исходя из каких-то своих внутренних ощущений правильности их написания. Но синхронизироваться по хорошим практикам в разных командах бывает довольно сложно и часто хорошие практики не выходили за рамки одной команды, а такого хотелось бы избежать. Поэтому мы решили объединить все хорошие по нашему мнению практики в единый справочник. Этот справочник получил название «Архитектурный гайд». Про него и поговорим в данной статье.</p><p><a href="https://habr.com/ru/companies/raiffeisenbank/articles/885792/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/raiffeis</span><span class="invisible">enbank/articles/885792/</span></a></p><p><a href="https://zhub.link/tags/%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0" class="mention hashtag" rel="tag">#<span>архитектура</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9" class="mention hashtag" rel="tag">#<span>архитектура_приложений</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/litestar" class="mention hashtag" rel="tag">#<span>litestar</span></a> <a href="https://zhub.link/tags/%D1%80%D0%B0%D0%B9%D1%84%D1%84%D0%B0%D0%B9%D0%B7%D0%B5%D0%BD%D0%B1%D0%B0%D0%BD%D0%BA" class="mention hashtag" rel="tag">#<span>райффайзенбанк</span></a> <a href="https://zhub.link/tags/%D0%BB%D1%83%D1%87%D1%88%D0%B8%D0%B5_%D0%BF%D1%80%D0%B0%D0%BA%D1%82%D0%B8%D0%BA%D0%B8" class="mention hashtag" rel="tag">#<span>лучшие_практики</span></a> <a href="https://zhub.link/tags/pytest" class="mention hashtag" rel="tag">#<span>pytest</span></a> <a href="https://zhub.link/tags/circuit_breaker" class="mention hashtag" rel="tag">#<span>circuit_breaker</span></a> <a href="https://zhub.link/tags/stamina" class="mention hashtag" rel="tag">#<span>stamina</span></a></p>
Habr<p>Taigram: Архитектура приложения</p><p>Всем привет! Мы продолжаем работу над нашим Open Source проектом Taigram! Прошлая статья &quot;Taigram: Начало работы&quot; , можно сказать, была посвящена организационным моментам:</p><p><a href="https://habr.com/ru/articles/887172/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/887172/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/taiga" class="mention hashtag" rel="tag">#<span>taiga</span></a> <a href="https://zhub.link/tags/aiogram" class="mention hashtag" rel="tag">#<span>aiogram</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/telegram" class="mention hashtag" rel="tag">#<span>telegram</span></a> <a href="https://zhub.link/tags/dynaconf" class="mention hashtag" rel="tag">#<span>dynaconf</span></a> <a href="https://zhub.link/tags/github" class="mention hashtag" rel="tag">#<span>github</span></a> <a href="https://zhub.link/tags/actions" class="mention hashtag" rel="tag">#<span>actions</span></a> <a href="https://zhub.link/tags/yaml" class="mention hashtag" rel="tag">#<span>yaml</span></a> <a href="https://zhub.link/tags/ci_cd" class="mention hashtag" rel="tag">#<span>ci_cd</span></a></p>
Habr<p>Centrifugo v6 + FastAPI + Python: разрабатываем веб-опросник с обновлениями в реальном времени</p><p>В прошлой статье я показал, как создать мини-чат с комнатами на FastAPI и WebSockets. Но что, если есть более мощное и удобное решение для Real-time? В этот раз разберем Centrifugo – технологию, которая берет на себя всю работу с WebSockets и масштабированием! В статье мы разберем теорию, а затем на практике разработаем веб-приложение-опросник, где результаты обновляются в реальном времени без перезагрузки страницы. А в финале – деплой на Amvera Cloud. Готовы прокачать свои навыки? Тогда вперед!</p><p><a href="https://habr.com/ru/companies/amvera/articles/885714/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/amvera/a</span><span class="invisible">rticles/885714/</span></a></p><p><a href="https://zhub.link/tags/centrifugo" class="mention hashtag" rel="tag">#<span>centrifugo</span></a> <a href="https://zhub.link/tags/centrifugo_v6" class="mention hashtag" rel="tag">#<span>centrifugo_v6</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/sqlite" class="mention hashtag" rel="tag">#<span>sqlite</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/sqlalchemy_20" class="mention hashtag" rel="tag">#<span>sqlalchemy_20</span></a> <a href="https://zhub.link/tags/sqlalchemy_sqlite" class="mention hashtag" rel="tag">#<span>sqlalchemy_sqlite</span></a> <a href="https://zhub.link/tags/javascript" class="mention hashtag" rel="tag">#<span>javascript</span></a> <a href="https://zhub.link/tags/%D0%B2%D0%B5%D0%B1%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0" class="mention hashtag" rel="tag">#<span>вебразработа</span></a> <a href="https://zhub.link/tags/websocket" class="mention hashtag" rel="tag">#<span>websocket</span></a></p>
Habr<p>Вебсокеты на FastAPI: Реализация простого чата с комнатами за 20 минут</p><p>Хотите освоить WebSocket и создать собственный чат с комнатами? В этой статье мы разберем: - В чем разница между WebSocket и классическим HTTP - Как реализовать сервер на FastAPI с поддержкой WebSocket - Как создать простой FullStack-чат для мгновенного обмена сообщениями - Как всего за пару минут развернуть готовое приложение на облачном сервисе Статья написана с учетом новичков, но и опытные разработчики найдут здесь полезные инсайты.</p><p><a href="https://habr.com/ru/companies/amvera/articles/884816/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/amvera/a</span><span class="invisible">rticles/884816/</span></a></p><p><a href="https://zhub.link/tags/websockets" class="mention hashtag" rel="tag">#<span>websockets</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/fastapi_%D0%B2%D0%B5%D0%B1%D1%81%D0%BE%D0%BA%D0%B5%D1%82%D1%8B" class="mention hashtag" rel="tag">#<span>fastapi_вебсокеты</span></a> <a href="https://zhub.link/tags/javascript" class="mention hashtag" rel="tag">#<span>javascript</span></a> <a href="https://zhub.link/tags/%D0%B2%D0%B5%D0%B1%D1%81%D0%BE%D0%BA%D0%B5%D1%82%D1%8B" class="mention hashtag" rel="tag">#<span>вебсокеты</span></a> <a href="https://zhub.link/tags/%D0%B2%D0%B5%D0%B1%D1%81%D0%BE%D0%BA%D0%B5%D1%82%D1%8B_javascript" class="mention hashtag" rel="tag">#<span>вебсокеты_javascript</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/%D0%B2%D0%B5%D0%B1%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0" class="mention hashtag" rel="tag">#<span>вебразработа</span></a> <a href="https://zhub.link/tags/%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="tag">#<span>программирование</span></a> <a href="https://zhub.link/tags/%D0%B4%D0%B5%D0%BF%D0%BB%D0%BE%D0%B9" class="mention hashtag" rel="tag">#<span>деплой</span></a></p>
Habr<p>LitestarCatsCV. Тренируемся на кошках. Пробуем litestar и другое новьё. Часть 1</p><p>Иногда хочется попробовать что-то новое, но в рабочих проектах это не всегда возможно. Поэтому предлагаю всем вместе пощупать несколько относительно новых фреймворков и посмотреть, что это такое и с чем их едят. Для начала придумаем проект, который не займёт много времени(надеюсь) и над которым будет интересно посидеть пару вечеров.</p><p><a href="https://habr.com/ru/companies/ntechlab/articles/883578/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/ntechlab</span><span class="invisible">/articles/883578/</span></a></p><p><a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/backend" class="mention hashtag" rel="tag">#<span>backend</span></a> <a href="https://zhub.link/tags/tutorial" class="mention hashtag" rel="tag">#<span>tutorial</span></a> <a href="https://zhub.link/tags/litestar" class="mention hashtag" rel="tag">#<span>litestar</span></a> <a href="https://zhub.link/tags/granian" class="mention hashtag" rel="tag">#<span>granian</span></a> <a href="https://zhub.link/tags/uv" class="mention hashtag" rel="tag">#<span>uv</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/api" class="mention hashtag" rel="tag">#<span>api</span></a></p>
Habr<p>Taigram: Начало работы</p><p>Всем привет! На этой неделе мы объявили о начале работы над Open Source проектом Taigram, название которому, к слову, выбрали вы в опросе . Для удобства отслеживания актуальных изменений по проекту рекомендуем заглядывать в тематическую рубрику у нас на сайте , где мы рассказываем о процессе разработки, объясняем наш выбор технологий, архитектуры и код. Проектом занимаемся мы вдвоём: Иван и Виктор, а также с логотипом нам помог наш бессменный дизайнер Евгений. (Больше никто не захотел к нам присоединиться 😭) Начнём мы, как водится, с самого начала...</p><p><a href="https://habr.com/ru/articles/883058/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/883058/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/Python" class="mention hashtag" rel="tag">#<span>Python</span></a> <a href="https://zhub.link/tags/Taiga" class="mention hashtag" rel="tag">#<span>Taiga</span></a> <a href="https://zhub.link/tags/aiogram" class="mention hashtag" rel="tag">#<span>aiogram</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/telegram" class="mention hashtag" rel="tag">#<span>telegram</span></a></p>
Habr<p>Телеграм-бот для бронирования столов на вебхуках: FastAPI, Aiogram Dialog, FastStream и RabbitMQ в единой экосистеме</p><p>В этой статье мы создадим функционального Telegram-бота для бронирования столиков в ресторане «Binary Bites» с использованием современных Python-инструментов. Бот будет работать через вебхуки, взаимодействовать с брокером сообщений RabbitMQ и поддерживать фоновое выполнение задач с помощью FastStream и APScheduler. Проект объединит FastAPI, SQLAlchemy, Alembic, Uvicorn и другие библиотеки, обеспечивая гибкость и масштабируемость. Готовый бот позволит пользователям бронировать столики, просматривать и отменять брони, а администраторам — управлять заказами.</p><p><a href="https://habr.com/ru/companies/amvera/articles/882878/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/amvera/a</span><span class="invisible">rticles/882878/</span></a></p><p><a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/rabbitmq" class="mention hashtag" rel="tag">#<span>rabbitmq</span></a> <a href="https://zhub.link/tags/%D0%B1%D1%80%D0%BE%D0%BA%D0%B5%D1%80_%D1%81%D0%BE%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%B8%D0%B9" class="mention hashtag" rel="tag">#<span>брокер_сообщений</span></a> <a href="https://zhub.link/tags/aiogrram" class="mention hashtag" rel="tag">#<span>aiogrram</span></a> <a href="https://zhub.link/tags/aiogram_dialog" class="mention hashtag" rel="tag">#<span>aiogram_dialog</span></a> <a href="https://zhub.link/tags/faststream" class="mention hashtag" rel="tag">#<span>faststream</span></a> <a href="https://zhub.link/tags/%D1%82%D0%B5%D0%BB%D0%B5%D0%B3%D1%80%D0%B0%D0%BC_%D0%B1%D0%BE%D1%82" class="mention hashtag" rel="tag">#<span>телеграм_бот</span></a> <a href="https://zhub.link/tags/telegram_bot" class="mention hashtag" rel="tag">#<span>telegram_bot</span></a> <a href="https://zhub.link/tags/telegram_bots" class="mention hashtag" rel="tag">#<span>telegram_bots</span></a> <a href="https://zhub.link/tags/sqlalchemy_20" class="mention hashtag" rel="tag">#<span>sqlalchemy_20</span></a></p>
Habr 25+<p>Микросервисы на пальцах: API‑Gateway, API‑Composition, KrakenD, FastAPI</p><p>Количество современных приложений, построенных на микросервисной архитектуре, очень велико. А сами микросервисы стали уже больше обыденностью, чем какой-то редкостью. В этом материале рассмотрим API-Gateway, BFF и композицию API — три базовых шаблона, которые можно встретить почти в каждой системе с микросервисами. Наша задача — понять, для чего они нужны, какие проблемы решают и создают. Пройдемся по теории и развернем реальный пример на инфраструктуре .</p><p><a href="https://habr.com/ru/companies/selectel/articles/881022/?utm_source=habrahabr&amp;utm_medium=rss&amp;utm_campaign=881022" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/selectel</span><span class="invisible">/articles/881022/?utm_source=habrahabr&amp;utm_medium=rss&amp;utm_campaign=881022</span></a></p><p><a href="https://zhub.link/tags/selectel" class="mention hashtag" rel="tag">#<span>selectel</span></a> <a href="https://zhub.link/tags/API" class="mention hashtag" rel="tag">#<span>API</span></a> <a href="https://zhub.link/tags/%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B" class="mention hashtag" rel="tag">#<span>микросервисы</span></a> <a href="https://zhub.link/tags/FastAPI" class="mention hashtag" rel="tag">#<span>FastAPI</span></a> <a href="https://zhub.link/tags/API_gateway" class="mention hashtag" rel="tag">#<span>API_gateway</span></a> <a href="https://zhub.link/tags/KrakenD" class="mention hashtag" rel="tag">#<span>KrakenD</span></a> <a href="https://zhub.link/tags/Linux" class="mention hashtag" rel="tag">#<span>Linux</span></a> <a href="https://zhub.link/tags/Docker" class="mention hashtag" rel="tag">#<span>Docker</span></a></p>
Habr<p>Микросервисы на пальцах: API‑Gateway, API‑Composition, KrakenD, FastAPI</p><p>Количество современных приложений, построенных на микросервисной архитектуре, очень велико. А сами микросервисы стали уже больше обыденностью, чем какой-то редкостью. В этом материале рассмотрим API-Gateway, BFF и композицию API — три базовых шаблона, которые можно встретить почти в каждой системе с микросервисами. Наша задача — понять, для чего они нужны, какие проблемы решают и создают. Пройдемся по теории и развернем реальный пример</p><p><a href="https://habr.com/ru/companies/selectel/articles/881022/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/selectel</span><span class="invisible">/articles/881022/</span></a></p><p><a href="https://zhub.link/tags/selectel" class="mention hashtag" rel="tag">#<span>selectel</span></a> <a href="https://zhub.link/tags/API" class="mention hashtag" rel="tag">#<span>API</span></a> <a href="https://zhub.link/tags/%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B" class="mention hashtag" rel="tag">#<span>микросервисы</span></a> <a href="https://zhub.link/tags/FastAPI" class="mention hashtag" rel="tag">#<span>FastAPI</span></a> <a href="https://zhub.link/tags/API_gateway" class="mention hashtag" rel="tag">#<span>API_gateway</span></a> <a href="https://zhub.link/tags/KrakenD" class="mention hashtag" rel="tag">#<span>KrakenD</span></a> <a href="https://zhub.link/tags/Linux" class="mention hashtag" rel="tag">#<span>Linux</span></a> <a href="https://zhub.link/tags/Docker" class="mention hashtag" rel="tag">#<span>Docker</span></a></p>
Habr<p>Как правильно делать тестовые задания на Python (flask, fastapi)</p><p>В этой статье я делюсь опытом, накопленным за годы помощи начинающим программистам. Вы узнаете, как грамотно организовать структуру проекта, избежать типичных ошибок (например, Query N+1), подготовить своё решение так, чтобы оно выглядело профессионально. Дам советы, как не только выполнить задание, но и превзойти ожидания работодателя. Эта статья будет полезна не только начинающим разработчикам, но и всем, кто хочет выделиться на фоне конкурентов и повысить свои шансы на успех. Применяйте советы, готовьтесь заранее, и пусть ваше тестовое задание станет тем самым пропуском к работе мечты!</p><p><a href="https://habr.com/ru/articles/877180/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/877180/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%BE%D0%B5_%D0%B7%D0%B0%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="tag">#<span>тестовое_задание</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/junior" class="mention hashtag" rel="tag">#<span>junior</span></a> <a href="https://zhub.link/tags/%D1%81%D0%BE%D0%B1%D0%B5%D1%81%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="tag">#<span>собеседование</span></a> <a href="https://zhub.link/tags/flask" class="mention hashtag" rel="tag">#<span>flask</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/%D0%B2%D0%BE%D0%B9%D1%82%D0%B8_%D0%B2_it" class="mention hashtag" rel="tag">#<span>войти_в_it</span></a> <a href="https://zhub.link/tags/%D0%B2%D0%BE%D0%B9%D1%82%D0%B8_%D0%B2_%D0%B0%D0%B9%D1%82%D0%B8" class="mention hashtag" rel="tag">#<span>войти_в_айти</span></a></p>
Habr<p>[Перевод] Оцениваем скорость операций с путями в FastAPI</p><p>Если вы сейчас разрабатываете новое приложение на Python, высока вероятность, что при этом вы используете FastAPI. В FastAPI заложено множество отличных возможностей, благодаря которым с ним легко начинать работу. Но в FastAPI есть и немало нюансов, на понимание которых требуется время. Мне пришлось особенно попотеть с одним аспектом, а именно — как FastAPI управляет вызовами к маршрутам API через декорированные параметры пути . Давайте подробно об этом поговорим. Что происходит на веб-сервере Одним из важнейших компонентов любого веб-приложения (которое мы создаём) является веб-сервер , программа, слушающая входящие запросы, поступающие из сети. Затем она транслирует эти запросы в методы, которые, в свою очередь, вызываются на бэкенде. Чтобы лучше понимать, что здесь происходит под капотом, давайте сначала реализуем простой веб-сервер. Для этого воспользуемся модулем http.server , который входит в стандартную библиотеку Python . Нам требуется написать программу, которая слушает порт и принимает HTTP-запросы. А именно: принимает запрос, разбирает маршрут пути, а также разбирает любые данные, прикреплённые к HTTP-вызову. См. также “ All I want is to cURL and parse a JSON object ”.</p><p><a href="https://habr.com/ru/companies/piter/articles/876378/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/piter/ar</span><span class="invisible">ticles/876378/</span></a></p><p><a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a></p>
Habr<p>Создание персонального AI-ассистента с использованием RAG: пошаговое руководство</p><p>Не так давно стала задача создать персональный чат-бот ассистент для компании занимающейся интернет разработкой. Система должна была иметь как Backend, отвечающий за работу с локальной нейросетью, так и простой FrontEnd виджет на JavaScript, который можно подключить на любой из страниц компании. Ресурсов описывающих работу RAG-систем полно, однако руководств которые расскажут и поэтапно проведут разработчика через все необходимые шаги я не нашел. Тем самым постараюсь восполнить пробел в данной статье.</p><p><a href="https://habr.com/ru/articles/873336/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/873336/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/rag" class="mention hashtag" rel="tag">#<span>rag</span></a> <a href="https://zhub.link/tags/ai" class="mention hashtag" rel="tag">#<span>ai</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/javascript" class="mention hashtag" rel="tag">#<span>javascript</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a></p>
Habr<p>Пишем морской бой на VueJS и Python</p><p>Напишем всем известную игру на VueJS, Python и вебсокетах. Можно будет поиграть со случайным соперником и попробовать свои силы с другом.</p><p><a href="https://habr.com/ru/articles/874188/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/874188/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/vuejs" class="mention hashtag" rel="tag">#<span>vuejs</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/websocket" class="mention hashtag" rel="tag">#<span>websocket</span></a> <a href="https://zhub.link/tags/canvas" class="mention hashtag" rel="tag">#<span>canvas</span></a> <a href="https://zhub.link/tags/%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0_%D0%B8%D0%B3%D1%80" class="mention hashtag" rel="tag">#<span>разработка_игр</span></a> <a href="https://zhub.link/tags/%D0%BC%D0%BE%D1%80%D1%81%D0%BA%D0%BE%D0%B9_%D0%B1%D0%BE%D0%B9" class="mention hashtag" rel="tag">#<span>морской_бой</span></a> <a href="https://zhub.link/tags/typescript" class="mention hashtag" rel="tag">#<span>typescript</span></a> <a href="https://zhub.link/tags/vuex" class="mention hashtag" rel="tag">#<span>vuex</span></a> <a href="https://zhub.link/tags/javascript" class="mention hashtag" rel="tag">#<span>javascript</span></a></p>
Habr<p>Архитектура для средненагруженных приложений: делюсь опытом и ищу ваши советы</p><p>Привет, коллеги! Меня зовут Санжар, я бэкенд-разработчик с опытом в настройке серверной инфраструктуры и контейнеризации для средних проектов. Сегодня хочу поделиться схемой архитектуры, которую я часто использую в своих проектах. Это не руководство к действию и не утверждение, что так нужно делать. Скорее, это возможность для меня получить обратную связь и узнать, как сделать лучше. Так что прошу вас, пишите свои идеи и советы в комментариях — это очень важно для меня. 🙂</p><p><a href="https://habr.com/ru/articles/874414/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/874414/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/nextjs" class="mention hashtag" rel="tag">#<span>nextjs</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9" class="mention hashtag" rel="tag">#<span>архитектура_приложений</span></a> <a href="https://zhub.link/tags/%D0%B1%D0%B0%D0%BB%D0%B0%D0%BD%D1%81%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0" class="mention hashtag" rel="tag">#<span>балансировка</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/gunicorn" class="mention hashtag" rel="tag">#<span>gunicorn</span></a> <a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/data_base" class="mention hashtag" rel="tag">#<span>data_base</span></a></p>
Habr<p>FastAPI и Vue.js 3: телеграм-бот с MiniApp для записи и автоматических уведомлений. Пишем бэкенд</p><p>Сегодня я рад представить новый масштабный проект, в рамках которого мы подробно рассмотрим технологии и подходы, ранее не освещенные в моих статьях. На этот раз мы создадим телеграм-бота с MiniApp (ранее известным как WebApp) — это будет бот с интегрированным мини-сайтом прямо в Telegram. Для реализации проекта мы используем два основных фреймворка: 1. FastAPI — мощный Python-фреймворк, который мы задействуем для разработки API нашего телеграм-бота. Мы рассмотрим уникальный подход, позволяющий создать полноценный бэкенд, который будет закрывать как API-методы, так и функционал телеграм-бота. 2. Vue.js 3 — JavaScript-фреймворк, выбранный за его удобство разработки и возможности создания сложных визуальных элементов. В этой статье мы сосредоточимся на описании бэкенда, а создание приложения на Vue.js 3 будет вынесено на следующую статью.</p><p><a href="https://habr.com/ru/companies/amvera/articles/873108/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/amvera/a</span><span class="invisible">rticles/873108/</span></a></p><p><a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/sqlalchemy" class="mention hashtag" rel="tag">#<span>sqlalchemy</span></a> <a href="https://zhub.link/tags/sqlalchemy_20" class="mention hashtag" rel="tag">#<span>sqlalchemy_20</span></a> <a href="https://zhub.link/tags/telegram_bot" class="mention hashtag" rel="tag">#<span>telegram_bot</span></a> <a href="https://zhub.link/tags/telegram_bot_api" class="mention hashtag" rel="tag">#<span>telegram_bot_api</span></a> <a href="https://zhub.link/tags/telegram_mini_app" class="mention hashtag" rel="tag">#<span>telegram_mini_app</span></a> <a href="https://zhub.link/tags/telegram_web_app" class="mention hashtag" rel="tag">#<span>telegram_web_app</span></a> <a href="https://zhub.link/tags/telegram_web_app_bot" class="mention hashtag" rel="tag">#<span>telegram_web_app_bot</span></a> <a href="https://zhub.link/tags/apscheduler" class="mention hashtag" rel="tag">#<span>apscheduler</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a></p>
Habr<p>Структура FastAPI приложения</p><p>В данной статья я решил описать свой опыт создания шаблона для проектов, использующих FastAPI, SQLAlchemy, Docker</p><p><a href="https://habr.com/ru/articles/871018/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/871018/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/FastAPI" class="mention hashtag" rel="tag">#<span>FastAPI</span></a> <a href="https://zhub.link/tags/Python" class="mention hashtag" rel="tag">#<span>Python</span></a> <a href="https://zhub.link/tags/Docker" class="mention hashtag" rel="tag">#<span>Docker</span></a> <a href="https://zhub.link/tags/SQLAlchemy" class="mention hashtag" rel="tag">#<span>SQLAlchemy</span></a> <a href="https://zhub.link/tags/Alembic" class="mention hashtag" rel="tag">#<span>Alembic</span></a> <a href="https://zhub.link/tags/%D0%A0%D0%B5%D0%BF%D0%BE%D0%B7%D0%B8%D1%82%D0%BE%D1%80%D0%B8%D0%B9" class="mention hashtag" rel="tag">#<span>Репозиторий</span></a> <a href="https://zhub.link/tags/%D0%A8%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD" class="mention hashtag" rel="tag">#<span>Шаблон</span></a> <a href="https://zhub.link/tags/%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0" class="mention hashtag" rel="tag">#<span>Структура</span></a></p>
Habr<p>FastAPI и Dependency Injection: правда или вымысел?</p><p>В свое время FastAPI прогремел как гром среди ясного неба - тут тебе и минималистичный API аля- Flask (все устали от Django , диктующего свои правила), и OpenAPI документация из коробки, и удобное тестирование, и хайповая асинхронность. Буквально все, что нужно для свободы творчества, и никаких ограничений! Да еще и Depends завезли! В тот момент это был культрурный шок - Dependency Injection в Python ? Разве это не что-то из Java ? Но дьявол кроется в деталях. А вы уверены, что те самые Depends == Dependency Injection ? Уверены, что пишете код на FastAPI правильно? В рамках статьи мы рассмотрим различные подходы к организации зависимостей в рамках FastAPI проекта, оценим их с точки зрения удобства использования и постараемся разобраться, как же все-таки &quot;правильно&quot; готовить DI в FastAPI . Давайте разбираться</p><p><a href="https://habr.com/ru/articles/867040/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="">habr.com/ru/articles/867040/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/dishka" class="mention hashtag" rel="tag">#<span>dishka</span></a> <a href="https://zhub.link/tags/dependency_injection" class="mention hashtag" rel="tag">#<span>dependency_injection</span></a> <a href="https://zhub.link/tags/dependency_inversion" class="mention hashtag" rel="tag">#<span>dependency_inversion</span></a> <a href="https://zhub.link/tags/solid" class="mention hashtag" rel="tag">#<span>solid</span></a> <a href="https://zhub.link/tags/clean_architecture" class="mention hashtag" rel="tag">#<span>clean_architecture</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/web" class="mention hashtag" rel="tag">#<span>web</span></a></p>
Habr<p>FastAPI + Redis + Celery: Создание системы временного хранения файлов с автоудалением и удобным веб-интерфейсом</p><p>В этой статье мы создадим учебный проект, демонстрирующий мощную связку FastAPI, Redis и Celery на примере системы временного хранения файлов. Наше приложение будет обладать функцией автоудаления файлов и удобным веб-интерфейсом, что позволит наглядно продемонстрировать возможности этого современного стека технологий. Мы пошагово разберем процесс разработки, начиная с настройки FastAPI для обработки HTTP-запросов, интеграции Redis для эффективного хранения метаданных файлов, и заканчивая использованием Celery для асинхронного выполнения задач по удалению устаревших файлов. Статья будет полезна разработчикам, желающим углубить свои знания в области современной веб-разработки на Python и получить опыт работы с передовыми инструментами и фреймворками.</p><p><a href="https://habr.com/ru/companies/amvera/articles/866200/" target="_blank" rel="nofollow noopener noreferrer" translate="no"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/amvera/a</span><span class="invisible">rticles/866200/</span></a></p><p><a href="https://zhub.link/tags/fastapi" class="mention hashtag" rel="tag">#<span>fastapi</span></a> <a href="https://zhub.link/tags/celery" class="mention hashtag" rel="tag">#<span>celery</span></a> <a href="https://zhub.link/tags/celery_worker" class="mention hashtag" rel="tag">#<span>celery_worker</span></a> <a href="https://zhub.link/tags/celery_flower" class="mention hashtag" rel="tag">#<span>celery_flower</span></a> <a href="https://zhub.link/tags/redis" class="mention hashtag" rel="tag">#<span>redis</span></a> <a href="https://zhub.link/tags/python" class="mention hashtag" rel="tag">#<span>python</span></a> <a href="https://zhub.link/tags/python_redis" class="mention hashtag" rel="tag">#<span>python_redis</span></a> <a href="https://zhub.link/tags/fullstack_development" class="mention hashtag" rel="tag">#<span>fullstack_development</span></a> <a href="https://zhub.link/tags/javascript" class="mention hashtag" rel="tag">#<span>javascript</span></a> <a href="https://zhub.link/tags/%D0%BD%D0%B5%D1%80%D0%B5%D0%BB%D1%8F%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D1%8B%D0%B5_%D1%81%D1%83%D0%B1%D0%B4" class="mention hashtag" rel="tag">#<span>нереляционные_субд</span></a></p>