Пожалуйста. Если что, можете мне написать на почту, я помогу разобраться. Если будут вопросы, баги, или предложения допилить фичу, то проще напрямую. Я заинтересован в таких вещах, пока проект не обкатан.
Спасибо :) Запала хватит настолько, насколько это будет востребовано.
Насчет Get Started — я думал об этом. В планах создание Pipe-валидатора для NestJS (он работает как надстройка над Express) и простой HowTo на 3-4 минуты чтения. Честно говоря, мне было очень тяжело писать эту статью потому что я не понимал ЦА, и просто выложил все до кучи.
А вот с Yup / Joi сравнение вряд ли будет корректным, т.к. это разные инструменты, которые используются в разных подходах. Если нужно поднять бэкенд средней сложности по-быстрому, и не блокировать команду, то OpenAPI вам сто лет и не сдался. И другое дело, если у вас намечается Enterprise, УЖЕ есть спецификация (или очевидна ее необходимость) и любая задача проходит через проектирование.
Если завтра выйдет новая версия TS, то вам 1. придется как-то проверять. придется как-то проверять, что ваш генератор генерирует все еще корректный код
Даже если такие маловероятные кейсы сыграют, не будет большой проблемой дождаться обновления (TS не обновляется принудительно ночью, и всегда можно откатиться). А решение не будет настолько сложным, чтобы окупить оверхед на создание AST-конвертора.
В конце концов, если реально это станет необходимым — тогда и появится повод задуматься о конвертации через AST.
Момент первый: вам результат нужен, или «спорт»? Кодогенератор поддерживает сложные и закрученные конструкции. Зачем нужно переусложнять и придумывать промежуточные этапы, от которых никакой пользы, если на выходе будет строка?
Момент второй: конвертор генерирует не в строку, а в промежуточные конструкции, которые ближе к OpenAPI, чем к TypeScript. Генерация в TypeScript сделана по принципу адаптера — то есть расширение. При желании можно добавить адаптер для любого другого языка, с любой структурой. И, собственно, там может не быть никаких AST. И да, я утверждаю, что генерация в строку самая простая и самая эффективная.
Информация
В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Насчет Get Started — я думал об этом. В планах создание Pipe-валидатора для NestJS (он работает как надстройка над Express) и простой HowTo на 3-4 минуты чтения. Честно говоря, мне было очень тяжело писать эту статью потому что я не понимал ЦА, и просто выложил все до кучи.
А вот с Yup / Joi сравнение вряд ли будет корректным, т.к. это разные инструменты, которые используются в разных подходах. Если нужно поднять бэкенд средней сложности по-быстрому, и не блокировать команду, то OpenAPI вам сто лет и не сдался. И другое дело, если у вас намечается Enterprise, УЖЕ есть спецификация (или очевидна ее необходимость) и любая задача проходит через проектирование.
Даже если такие маловероятные кейсы сыграют, не будет большой проблемой дождаться обновления (TS не обновляется принудительно ночью, и всегда можно откатиться). А решение не будет настолько сложным, чтобы окупить оверхед на создание AST-конвертора.
В конце концов, если реально это станет необходимым — тогда и появится повод задуматься о конвертации через AST.
Момент второй: конвертор генерирует не в строку, а в промежуточные конструкции, которые ближе к OpenAPI, чем к TypeScript. Генерация в TypeScript сделана по принципу адаптера — то есть расширение. При желании можно добавить адаптер для любого другого языка, с любой структурой. И, собственно, там может не быть никаких AST. И да, я утверждаю, что генерация в строку самая простая и самая эффективная.