finds.dev← search

// the find

smartxworks/sunmao-ui

★ 1,453 · TypeScript · Apache-2.0 · updated Jun 2025

A Framework for Developing Low-code Tool

Sunmao is a meta-framework for building low-code platforms, not a low-code tool itself. You use it to wrap your existing React component library and get a drag-and-drop editor plus reactive runtime for free. It targets teams who want to build something like Retool or Appsmith in-house rather than adopt one.

JSON schema drives the type system end-to-end — component props, event handlers, and editor widgets all derive from the same schema definition, which means the editor stays in sync with the runtime without manual wiring. The 'traits' abstraction is genuinely useful: behavior like conditional rendering, custom styles, and event handling are applied as decorators rather than baked into each component, so your component code stays clean. Ships with two real-world component library wrappers (Arco Design and Chakra UI) that demonstrate the pattern rather than just describing it. Reactive expression evaluation means component properties can reference other components' state using template expressions, which is the core UX win for a low-code tool.

The monorepo build story is painful — the README explicitly warns you must manually rebuild packages after changes because there's no watch-based incremental build wiring between packages. The project has gone quiet: last meaningful community activity is sparse relative to 1.4k stars, and the GitHub Actions CI is minimal. The framework gives you a runtime and editor but leaves the hard parts (authentication, backend API secrets management, multi-tenancy, version history for saved apps) entirely to you — teams often underestimate how much scaffolding sits between 'I have a low-code editor' and 'I have a product'. Documentation quality drops sharply beyond the happy path; the English docs feel like translations that lag the Chinese originals.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →