Write Once, Run Anywhere

Make Your Java Code Native Everywhere!

An open-source mobile first toolkit for building high quality, cross-platform native apps for Android, iOS, Desktop and Web.

Trusted by 40k+ developers

Codename One cross-platform illustration

Write Once Run Anywhere

One Codebase, Multiple Apps

Rapid cross-platform app development using Java or Kotlin with 100% code reuse. Apps are compiled down to native code for maximum performance and a smooth user experience.

Learn about the Architecture

Pixel Perfect Design

Build beautiful UI with Codename One's rich set of widgets. Native look and feel out of the box, but fully themeable using CSS.

Why Codename One?

Native Performance

Compiles Java or Kotlin into native code for iOS, Android, desktop and JavaScript.

Extensible

Easily extendable with a rich ecosystem of native and generic add-on libraries developed by Codename One and the community.

Hot Reload

Changes in your Java or Kotlin code are applied immediately to your already-running app in the simulator.

CSS Live Update

When you make changes to your app CSS stylesheet, changes are reflected instantly in the simulator.

Established and Mature

~180M apps installed across platforms and ~40k developers. Version 1.0 was released in 2012.

Free and Open Source

The core of Codename One is free and open source (GPL + CE), so it is free to use with commercial projects.

Explore the Features

How it works

Codename One is a toolkit that allows you to easily build beautiful cross-platform apps targeting iOS, Android, and the web using Java or Kotlin.

What Codename One is...

A cross-platform runtime library tailored to mobile app development.

Tools that convert JVM bytecode into platform-native executables via the cloud build service.

A rich ecosystem of community and official add-on libraries.

Light-weight cross-platform UI components designed for mobile apps.

Drag-and-drop UI builder for rapid visual layout authoring.

Build app-store ready binaries without maintaining local native toolchains.

Run and debug the app instantly from your IDE.

Codename One architecture diagram

What Codename One is NOT...

Codename One apps compile to native targets, not just wrapped web content.

Unlike some other toolkits that merely provide bindings to native components and APIs, Codename One's UI component library is light-weight and truly cross-platform. This provides 100% code reuse across platforms, not only for business logic, but for the UI also.

Yes. You can mix native widgets and lightweight widgets seamlessly.

Yes. Access both system APIs and third-party native frameworks.

Made with Codename One

Loved by Developers, Trusted by Enterprises

Codename One enterprise customers

Blog

Learn all about building native mobile apps using Java

CN1 Academy