A cross-platform framework for building truly native mobile apps with Java or Kotlin, supporting iOS, Android, Desktop, and Web.
Codename One is a cross-platform framework that allows developers to build native mobile applications for iOS, Android, Desktop, and Web using Java or Kotlin. It solves the problem of maintaining separate codebases for each platform by enabling 'write once, run anywhere' development, compiling source code into native binaries for true performance and access to device features.
Java and Kotlin developers looking to create mobile applications that run natively across multiple platforms without learning platform-specific languages like Swift or Kotlin for Android. It is also suitable for enterprises needing to deploy consistent apps across iOS, Android, and desktop environments.
Developers choose Codename One for its ability to deliver truly native apps from a single codebase, offering full access to native OS capabilities and performance. Its unique selling point is the combination of a fast simulator, live development tools, and compilation to standard native projects (e.g., Xcode), ensuring future compatibility and a seamless development experience.
Cross-platform framework for building truly native mobile apps with Java or Kotlin. Write Once Run Anywhere support for iOS, Android, Desktop & Web.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Compiles Java/Kotlin bytecode to native executables using platform-specific tools like Xcode, ensuring apps perform identically to hand-written native code.
Features an instant-start simulator with live code reload, CSS live updates, and an interactive Groovy console for fast iteration and debugging.
Includes a drag-and-drop GUI builder, theme editor, and component inspector, streamlining UI development and testing.
Allows 100% code reuse across iOS, Android, UWP, and Web targets from a single Java or Kotlin codebase, reducing maintenance overhead.
Building from source requires JDK 8 due to backward compatibility constraints, limiting the use of modern Java features and tools.
The ongoing transition from Ant to Maven can create setup inconsistencies and documentation gaps for new users.
The cn1libs library collection is smaller compared to frameworks like Flutter or React Native, often necessitating custom native code integrations.