Making Non-Game Apps

Hi!

I apologize if this is the wrong thread, this is literally my first post, and my second day with Corona.

I am not able to find much information on making Non-Game apps, but from what I see, Corona seems like it would be great for this. I’m thinking day to day interfaces that I use for myself (like I have a budgeting app I made to track my spending, a mood tracker, various web based projects…) 

Is there a reason why? Is there any alternate method that I am not aware of (specifically using Lua or a similar language)?

I am by no means an expert developer, but I have a fairly strong grasp on basic coding concepts, so I could easily be missing something obvious. 

Thanks!

Sure, Corona can be used to make non-game apps. Most of my personal apps that I’ve made fall into this category. You just have to understand that there are limitations.

Because Corona is cross-platform, you may find that there are hardware features that Corona doesn’t support through simulator builds and in some cases, you may have to end up writing native code and using Xcode or Android Studio to build your app to access those native features.

Secondly, Corona’s main drawing engine uses OpenGL, a high speed graphics rendering engine. Most of our API’s (like display.newImageRect() ) draw their output in an OpenGL canvas window.  Many objects you may want to use live in a non-OpenGL space (like text input fields, webViews, etc.) We also don’t have a wide variety of these. These native objects have to draw on top of the OpenGL layer and it creates some challenges to seamlessly integrate these native objects in to your OpenGL. You just have to work within the limits.

Next, related to this, we’ve created a library of widgets that look like/behave like native widgets that you might want to use. For instance, we have a widget.newButton() and widget.newSwitch() API that with their default displays can look like the native versions on iOS or Android, but since they are really OpenGL based graphic objects, they can be reskinned anyway you like and these widgets are part of the OpenGL canvas. While we have a decent library of these widgets, we don’t have everything. For instance, we don’t have a “Navigation Bar”, but those are easy enough to create on your own using display.newRect(), display.newText() and widget.newButton().

There are quite a few relevant items documented on our docs site: http://docs.coronalabs.com/

What you may find more useful are a couple of complete projects on one of our GitHub repos: https://github.com/coronalabs-samples

Of the four sample projects here, three are non-game projects. I would suggest starting with the Business App sample and then delve into CoronaWeather.

Rob

Also if you visit https://marketplace.coronalabs.com there are quite a few plugins that you can get that extends Corona that are useful for non-game apps.

Rob

Wow Rob,

Huge freakin help!

I appreciate the breakdown limitations as well. As I was reading through that I had 3 different areas where I may run into issues. I’ll dig into those projects to see if I can find clever solutions.

Thanks again!

Sure, Corona can be used to make non-game apps. Most of my personal apps that I’ve made fall into this category. You just have to understand that there are limitations.

Because Corona is cross-platform, you may find that there are hardware features that Corona doesn’t support through simulator builds and in some cases, you may have to end up writing native code and using Xcode or Android Studio to build your app to access those native features.

Secondly, Corona’s main drawing engine uses OpenGL, a high speed graphics rendering engine. Most of our API’s (like display.newImageRect() ) draw their output in an OpenGL canvas window.  Many objects you may want to use live in a non-OpenGL space (like text input fields, webViews, etc.) We also don’t have a wide variety of these. These native objects have to draw on top of the OpenGL layer and it creates some challenges to seamlessly integrate these native objects in to your OpenGL. You just have to work within the limits.

Next, related to this, we’ve created a library of widgets that look like/behave like native widgets that you might want to use. For instance, we have a widget.newButton() and widget.newSwitch() API that with their default displays can look like the native versions on iOS or Android, but since they are really OpenGL based graphic objects, they can be reskinned anyway you like and these widgets are part of the OpenGL canvas. While we have a decent library of these widgets, we don’t have everything. For instance, we don’t have a “Navigation Bar”, but those are easy enough to create on your own using display.newRect(), display.newText() and widget.newButton().

There are quite a few relevant items documented on our docs site: http://docs.coronalabs.com/

What you may find more useful are a couple of complete projects on one of our GitHub repos: https://github.com/coronalabs-samples

Of the four sample projects here, three are non-game projects. I would suggest starting with the Business App sample and then delve into CoronaWeather.

Rob

Also if you visit https://marketplace.coronalabs.com there are quite a few plugins that you can get that extends Corona that are useful for non-game apps.

Rob

Wow Rob,

Huge freakin help!

I appreciate the breakdown limitations as well. As I was reading through that I had 3 different areas where I may run into issues. I’ll dig into those projects to see if I can find clever solutions.

Thanks again!