//! kei-forge — local web wizard for scaffolding new atoms per the locked //! SUBSTRATE-SCHEMA.md contract. //! //! Architecture (Constructor Pattern, one responsibility per file): //! - [`server`] — axum router + HTML form handler //! - [`form`] — request deserialization + validation //! - [`generate`] — invoke scripts/new-atom.sh, parse output //! //! Public entry point is [`server::app`], which returns the fully-wired //! `axum::Router` ready to be served by any bind target (production = //! 127.0.0.1:8747; tests = random ephemeral port). pub mod form; pub mod generate; pub mod server;