I've used Mermaid, partly because it integrates well in both GitHub and Notion. It's fine, quite featureful really, but the lack of any ability to control layout properly makes complex schemas quite a mess when rendered. Not sure how others of these declarative, text-based engines deal with that.