To add, there's a new CAD kernal that is in slow development called truck [1]. Is is written in Rust and you script/make models in Rust. It doesn't have any geometric constraints though.
There was a very short attempt at starting to make a GUI for truck [2] but development has seemed to have halted. There was discussion and hype about this here a couple months ago [3].