Introduction to Corona

Welcome to Corona! Before creating an actual app, we'll provide some basic information about Corona and discuss how to get started.

What is Corona?

Corona is a cross-platform framework used to rapidly create apps and games for mobile devices and desktop systems. That means you can create your project once and publish it to multiple types of devices, including Apple iPhone and iPad, Android phones and tablets, Amazon Fire, Mac desktop, Windows Desktop, and even connected TVs such as Apple TV, Fire TV, and Android TV.

Why Choose Corona?

Corona is used by professional programmers, mobile app developers, businesses, schools, and universities to develop engaging games, educational apps, business/utility apps, and more. Corona is easy enough to learn for those who are just starting, yet powerful enough for the experienced developer. With Corona you get all of these benefits:

Corona is a complete framework which lets you create games, educational apps, business/utility apps, and more.

Corona is cross-platform — develop for mobile, desktop, and connected TV devices with just one code base.

Development is done in Lua, a powerful and easy-to-learn scripting language.

Optimize your workflow with real-time device testing — build and deploy your app just once and then see code/assets update almost instantly on your devices, all over a local network.

Over 1000 APIs enable you to transform your ideas into stunning and innovative app experiences.

Corona plugins give developers access to additional functionality, tools, and services.

Best-in-class monetization plugins and analytics plugins help you succeed, all with just a few lines of code. Spend time making awesome apps, not implementing third-party software development kits!

A huge selection of third-party assets — graphics, animations, music, sound effects, tools, and more — all conveniently available in the Corona Marketplace.

How Corona Works

Corona is a Lua-based framework that provides a large set of APIs and plugins, allowing developers to quickly and easily make apps that can run on multiple types of devices.

With the built-in Corona Simulator, you can preview how your app will appear and respond on many types of devices, all without having to compile or deploy it for testing. When you're ready, you can conduct real-time device testing to see how your app performs on actual devices.

In addition to the core framework, Corona includes many plugins which add specific functionality and help speed up the development of your app. Want to monetize your apps with in-app advertising? See our Monetization Guide for options. Want to connect to Facebook? Simply use the convenient Facebook plugin. By using a plugin, you are able to focus on building your app and while leveraging stable add-ons. Corona plugins are a vibrant part of the Corona ecosystem and new plugins are released on a consistent basis.

Essentially, Corona focuses on helping you make your app quickly! Most developers report that they're able to complete apps much faster using Corona versus other systems. With the added benefit of writing just one code base that can be deployed to multiple platforms, choosing Corona is a natural choice.

The Corona Suite

Corona Labs offers three variants of Corona so that you can use the toolset which is best for your needs:

Corona

Corona is a full-featured, cross-platform framework that enables developers to create apps rapidly and publish to all major platforms. Corona is completely free and there are no restrictions on which supported platforms you can build for, nor does Corona Labs charge you to publish your apps to the various marketplaces.

If you're new to Corona or new to app development, download Corona — it contains all of the core features to get started quickly!

Download Corona

Corona Native

Corona Native provides low-level access to the operating system and native APIs. While most apps designed using Corona do not require this level of access, it allows you to use native languages like Obj-C or Java to pass information between the native code and Lua code.

CoronaCards

CoronaCards is used to implement Corona inside native apps or other frameworks. This allows developers to embed Corona resources without interfering with the main application stack.

System Requirements

What do you need to get started? In addition to Corona, you will need an IDE or a text editor (we'll discuss this further in Chapter 1).

The specific system requirements depend on whether you are developing on a Mac or Windows system:

Corona for macOS supports building applications for iOS, Android, tvOS, and macOS desktop. It requires the following basic system elements:

  • macOS 10.11 or later
  • Xcode (minimum version allowed by Apple to submit apps to the App Store)

For more details, see the System Requirements page. If you're ready to install Corona now, please proceed to Installing Corona — macOS.

Corona for Windows supports building applications for Android and Win32 desktop. It requires the following basic system elements:

  • Windows 10, Windows 8, or Windows 7
  • 1 GHz processor (recommended)
  • 1 GB of RAM (recommended)
  • OpenGL 2.1 or higher (available in most modern Windows systems)

For more details, see the System Requirements page. If you're ready to install Corona now, please proceed to Installing Corona — Windows.

Getting Started

Create an App!

The most fun way to learn Corona is to create a simple game. Don't worry if you've never created a mobile app or programmed before — the chapters in this guide will walk you through the entire process from start to finish.

Learning Resources

There are several places where you can learn more about Corona:

  • Corona Developer Guides go further in depth on many selected topics.
  • The API Reference site provides details about every API.
  • Additional books and online courses for Corona can be found here.

Getting Help

The Corona community is friendly and helpful! You can interact with other Corona developers in various ways:

Apple and the Apple logo are trademarks of Apple Inc., registered in the U.S. and other countries. App Store is a service mark of Apple Inc. Mac and the Mac logo are trademarks of Apple Inc., registered in the U.S. and other countries.

Google Play, Android TV, Google Play, AdMob, and the Google Analytics logo are trademarks of Google Inc.

Amazon, Kindle, Echo, Alexa, Dash, Fire and all related logos are trademarks of Amazon.com, Inc. or its affiliates.

Microsoft, Encarta, MSN, and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.

Steam and the Steam logo are trademarks and/or registered trademarks of Valve Corporation in the U.S. and/or other countries.