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. Learn Lua on YouTube.

Corona is the only 2D development platform 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 SDK

Corona SDK is a full-featured, cross-platform framework that enables developers to create apps rapidly and publish to all major platforms. Corona SDK 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 SDK — it contains all of the core features to get started quickly!

Download Corona SDK

Corona Enterprise

Corona Enterprise allows you to take advantage of Corona's incredibly fast development and still call native libraries or APIs when necessary. Corona Enterprise is ideal for bridging Corona's speed and ease-of-use with code/functionality you're already accustomed to.

CoronaCards

CoronaCards is used to implement Corona inside native apps or other frameworks like Unity. 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 SDK 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 SDK — macOS.

Corona SDK 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 SDK — 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.