Ну да. Я вообще хочу описывать сущность и потом юзать на фронте и беке так как будто это все в одном процесе.
можно еще написать либу которая принимает мапу и генерит миграцию для базы и endpoint для graphql например.
Только тогда либа будет очень доменно ориентрованная или будет очень много кода под капотом.
Также минусом такого решения является то что оно очень сильно привязывает проект к опледеленным версиям библиотек, которые используется фреимворком. То-есть захотел пул для базы обновить, вышел конфликт, захотел поменять graphql на rest, снова не состыковки.
Ну и в конечном итоге конвееры очень не по UNIX way. Так что на вкус и цвет.