Fork us on GitHub

About - What is Codename One? How Does it work?

Learn more and getting started resources

What is Codename One?

Codename One allows Java developers to write their mobile apps using Java. It generates native OS binaries that you can upload to Apple/Google/Microsoft etc.
Codename One was founded by ex-Sun/Oracle mobile developers based on an open source project started back in 2007 within Sun Microsystems. The core vision of Codename One is to actualize the WORA (Write Once Run Anywhere) mantra of Java in the age of mobile devices. To enable that vision Codename One created a one of a kind industry leading set of tools that allow Java developers to build native mobile OS applications with a single code base.

Codename One works with all three major Java developer environments (IDE's) NetBeans, Eclipse and IntelliJ/IDEA.

How does Codename One Work?

To understand how Codename One works, its history etc. check the developer guide (also available as a PDF). It provide a birds eye view in the first chapter.
You can also refer to this stackoverflow answer. There is a video that goes into further details here (it's a bit long).

The gist of this is that Codename One requires you to obey some restrictions in the way you develop Java applications and use our plugin/API. Once you abide by those the Codename One tooling makes portability seamless.

How do Codename One Apps Look?

They can look like anything, check out the demos section where you can see the diversity and some of the potential of Codename One apps.
You can see real world applications in the gallery section.

Is Codename One Free?

Codename One has a free version and paid versions. So yes & no.

The base product is open source but our build system requires servers (Macs, Windows machines etc.) and we place a quota on their usage to prevent overuse which would deprive paying users from service.

With the free version you are limited to 100 build credits per month.
1 credit is the equivalent of 1 build with the exception of iOS where 8 credits equal 1 build to offset the higher costs of Mac servers.
Other than that there is a JAR size limit of 1mb. Notice that this is a very high limit as it applies only to your bytcode and not to the Codename One builtin API's and you can create pretty remarkable apps within this limit (all our demos fit within that limit).

The free tier allows you to use your generated apps commercially and place have no restrictions on them. There are no nag screens or license limitations!

There are many additional benefits and additional features you can get in the paid program see the pricing details here.

Where can I Learn More?

For more about Codename One check out this post covering the extensive set of tutorials/docs/videos.
You can ask questions in stackoverflow with the codenameone tag or you can also ask in the discussion forum. Our engineers guarantee a response within 24 hours for such questions.

Notice that Codename One assumes you already know Java so we don't have any tutorials for complete beginners. However, some 3rd parties have come along specifically has had some following and this youtube tutorial covers game building.