finds.dev← search

// the find

momotech/MLN

★ 1,641 · C · MIT · updated Jul 2024

高性能、小巧、易上手的移动跨平台开发框架. A framework for building Mobile cross-platform apps with Lua

MLN is a Lua-based cross-platform framework for Android/iOS built by Momo (the Chinese dating app company) for their own app, open-sourced for anyone who wants native-feeling cross-platform UI without committing to Flutter's Dart or React Native's JS bridge overhead. It's aimed at client developers who already know native Android/iOS idioms and want to reuse that mental model rather than learn a new UI paradigm.

The bridge architecture maps directly onto native concepts (LuaBridge/LuaClass annotations, a codegen tool called mlncgen that generates boilerplate from annotated native methods) rather than inventing a parallel abstraction layer, which is exactly what you want if your team is already native-first. It claims a 1.2MB footprint and ~5% performance gap versus native, which is plausible given it's a thin Lua VM binding rather than a full JS engine + bridge like React Native. Hot reload is built in at the framework level (not bolted on via a third-party tool), with its own protobuf-based wire protocol for pushing code changes to a running app.

The entire README and wiki are in Chinese with no English translation, which is a hard wall for most of the world's mobile developers even if the code itself is readable. Support channels are a QQ group, not GitHub Discussions or Slack, confirming this is tooling built for and by a Chinese dev community rather than something with an international contributor base. Last push was mid-2024, so it's been over a year without updates — for a UI framework that needs to track Android/iOS OS changes, that's a real risk. It's also a single-company framework (Momo), meaning its roadmap follows their internal needs, not the needs of external adopters, and there's no indication of semver or a changelog to gauge what 'maintained' even means here.

View on GitHub →

// 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 →