I won't get too deep into our architecture, but needless to say letting users dynamically edit/add/remove fields in their databases is not easy. We use Postgres + Prisma as our ORM, and I'm fairly happy with its DX re: handling this level of complexity