#openapi_generator — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #openapi_generator, aggregated by home.social.
-
Как мы превратили API-контракт в отдельный артефакт и сократили генерацию клиента с 15 минут до нескольких секунд
Привет! Я Дмитрий, старший Angular-разработчик в команде Klecks — платформы для разметки данных AI-Центра Т-Банка. Последние годы мы жили с NSwag: один api.ts на 13 000 строк, Docker-сборка бэкенда и ожидание по 15—17 минут каждый раз, когда менялся контракт. В рамках одной из задач мы решили перейти к модели, где OpenAPI-файлы лежат в репозитории, а клиент генерируется через ng-openapi-gen. Расскажу, какие проблемы мы пытались решить, что пробовали на стороне ASP.NET Core и какой workflow получился в итоге.
https://habr.com/ru/companies/tbank/articles/1069174/
#openapi_generator #openapi #code_generation #api_contract #nswag #typescript #angular #aspnet_core
-
Document Driven Development: превращаем хаос разработки в порядок с помощью TypeSpec и не только
Всем привет! Меня зовут Егор Гурин и я разработчик в компании MTC Web Services. Работаю в стриме, который занимается разработкой контактного центра МТС. Практически любые обращения клиентов в компанию, будь то неработающий интернет или вопрос по заказу в интернет-магазине, проходят через нас. Продукт большой, у нас несколько команд и множество интерфейсов интеграции как между самими командами, так и с внешними вендорами, поэтому не согласованные вовремя контракты могут привести не просто к потере времени, но и задержать выход фичи в прод. В этом материале я поделюсь инструментами, которые помогли наладить процессы в нашей команде в рамках методологии Document Driven Development, — возможно, вам она знакома под такими терминами как design-first или API-first. Покажу, как в удобной форме описывать контракты с помощью TypeSpec, использовать мокирующие сервера не дожидаясь реализации серверной, а еще — расскажу про инструмент кодогенерации на Go и автотесты с помощью Schemathesis. Читать дальше
https://habr.com/ru/companies/ru_mts/articles/1061706/
#design_first #document_driven_development #typespec #oapicodegen #schemathesis #api_first #openapi #openapi_generator
-
Контракт из кода, клиент из контракта: избавляемся от тройного дублирования в API
Обычно процесс разработки API выглядит так: мы пишем контроллер. Затем каким-то образом его документируем. После чего фронтер, опираясь на такую документацию, пишет клиент. Мы делаем одну и ту же работу трижды. В прошлой статье я рассказывал, как избавиться от первого дублирования. С помощью бандла sunrise-studio/symfony-openapi можно генерировать OpenAPI-документ из кода, минуя процесс документирования. Но это решает проблему только наполовину. Если OpenAPI-документ вытекает из кода, то клиент должен вытекать из OpenAPI-документа. Иначе написание клиента – и есть то самое дублирование. В этой статье я расскажу как замкнуть цепочку: Controller → OpenAPI → Client → Feature Где каждый последующий шаг вытекает из предыдущего, а не дублирует его.
https://habr.com/ru/articles/1055764/
#openapi #openapi_generator #swagger #php #symfony #react #typescript #javascript #axios #orval
-
Инженерия создания микросервиса spring-web-flux
Создать Spring-сервис просто: существует масса статей и отличная документация. Однако среди всего этого многообразия материалов зачастую сложно разобраться, какой именно набор технологий лучше выбрать и каким образом эти технологии должным образом интегрировать друг с другом. После перехода на новые версии библиотек многое начинает функционировать иначе, появляются совершенно другие подходы. В данной статье я хочу продемонстрировать один из возможных способов разработки микросервиса в 2026 году, а также рассмотреть несколько инструментов автоматической генерации кода: OpenApiGenerator, JooqCodegen, GigaChat, Liquibase — и объяснить, как они работают вместе в рамках единого проекта. Точкой отсчета для построения микросервиса сделаем описание REST API. Допустим, в нашем фантастическом мире аналитик заранее подготовил спецификацию API с помощью формата OpenAPI, хотя подобное встречается и в реальной практике.
https://habr.com/ru/articles/982774/
#spring_framework #reactor #webflux #openapi_generator #jooqcodegen #liquibase #microservices
-
OpenAPI во фронтенде или магия автоматизации
Мы все чаще сталкиваемся с парадоксом: с одной стороны, растут требования к скорости вывода продукта на рынок, с другой — увеличивается сложность приложений. При этом, разработчики тратят большое количество времени на рутинные задачи, такие как интеграция с API и написание boilerplate-кода. Именно здесь на помощь приходит автоматизация рутинных задач во фронтенде на основе OpenAPI-спецификаций и она может очень сильно упростить нам, фронтендерам, жизнь!
https://habr.com/ru/companies/axenix/articles/926766/
#axenix #frontend #мокирование #openapi_generator #openapi_specification #typescript #вебразработка #openapi #искусственный_интеллект
-
Организация API-first подхода, используя OpenAPI generator и Gitlab CI
Однажды я внедрил в своей команде подход разработки через API-first. Все было классно, мы описывали API спецификации в файле, запускали генерацию, публиковали артефакты в репозиторий, но... это было не удобно.
https://habr.com/ru/articles/884412/
#openapi #openapi_generator #java #spring_framework #spring_boot #api
-
Генерация кода валидации из спецификации OpenAPI: как мы синхронизировали валидаторы данных между бэкендом и фронтендом
Представьте ситуацию: ваша команда закончила интеграцию с API, все протестировала и подготовила релиз. А тут внезапно серверная команда меняет формат ответа. Фронтенд падает, QA злится, пользователи недовольны. Приходится вручную переписывать валидации, искать баги и терять дни, чтобы всё починить. Как автоматически синхронизировать работу между бэкэндом и фронтендом? А между дизайном и фронтендом? Использовать генератор кода валидации! Написание своего решения поможет понять бизнес-логику проекта и создать валидаторы, которые максимально отвечают вашим требованиям. А реализация проще, чем кажется на первый взгляд – покажу это в статье на примере создания кастомного генератора на нашем проекте. В первую очередь статья будет полезна фронтенд-разработчикам и командам, работающим над сложными веб-приложениями, особенно тем, кто активно взаимодействует с API, описанными через OpenAPI.
https://habr.com/ru/companies/outlines_tech/articles/860566/
#openapi_generator #генератор_кода #json_schema_validator #code_splitting #ast #openapi_specification #api
-
От документации к готовому API: Генерация кода из Swagger для FastAPI
В статье вы узнаете, как с помощью OpenAPI Generator преобразовать OpenAPI-документацию в рабочие роуты и Pydantic модели для FastAPI. Один раз настроив конфигурацию, вы сможете за секунды создавать готовый код, что значительно ускоряет разработку и упрощает поддержание API. Итак, давайте разбираться!
-
CW: Discussion of Open API Spec
Need to preview an Open API Spec file locally?
Try this script
https://gitlab.com/-/snippets/3702706
N.B.: You do need a local container engine on your workstation.
-
CW: Discussion of Open API Spec
Need to preview an Open API Spec file locally?
Try this script
https://gitlab.com/-/snippets/3702706
N.B.: You do need a local container engine on your workstation.
-
Генерация PDF-документации из OpenAPI-спецификации в SpringBoot-приложении
При интеграции с нашим приложением, написанном на "классическом" SpringBoot-стэке встал вопрос о предоставлении описания АПИ партнеру. Фактически из коробки SpringBoot позволяет развернуть на стороне приложения тонкий Swagger-клиент и сгенерировать на лету спецификацию в формате Swagger (OpenAPI), которая представляет собой JSON особой структуры (хотя если читатель не знает, что это, наверное нет никакого смысла вообще читать эту статью). Проблема осложнялась тем, что наш партнер разрабатывал на 1С, и во всех современных спецификациях для него были слишком сложно освоиться, поэтому встала задача предоставить документацию в человекориентированном виде - DOC, PDF и прочее. В ходе изысканий в google, была найдена статья - https://www.baeldung.com/swagger-generate-pdf , и советы на stackoverflow, которые фактически повторяли эту статью. Фактически было найдено 2 варианта решения: 1) Использовать онлайн-конвертер https://www.swdoc.org/ 2) Настроить цепочку из 3 maven-плагинов: