Project Configuration

Before exporting the project, it is usually a good idea to configure it to your liking. This is done through global project configuration that can be accessed in two ways: Through the top toolbar > project and through the screen selection tab > project as seen on the next picture.

When configuring the project, you have several configuration options at your disposal. The options in the project settings span the entire project are usually have a large impact on the project (like changing the export architecture and so on). There are 2 types of configuration - shared configuration between the platforms, and platform-specific settings.

Shared Configuration

Shared configuration allows you to set the basic information about the project.

You can find the shared configuration in the project settings in the right panelYou can find the shared configuration in the project settings in the right panel

You can find the shared configuration in the project settings in the right panel

Specifically, the following can be configured:

  • Display Project Name - Project name of your app. This is what will be shown throughout the Supernova but it is not the export name of the project - that can be specified on platform-basis
  • Author - Author of the project used for code headers and project configuration in XCode
  • Company - Company owning the project used for code headers and project configuration in XCode. By default, headers are exported with copyright that is being attributed to the specified company
  • Device Type - Allowed device types. Possible options are Phones, Tablets and All. Using other option than all will restrict the installation of the app to specified devices
  • Device Orientation - Allowed device orientations. Possible options are Portrait, Landscape and All. Using other option than All will lock the orientation changes on real devices

Note: Even when disabled, both device type and orientation can still be tested in Supernova live mode. The options in project settings only affect the exported projects and real devices.

Platform-Specific Configuration

In addition to global configuration, there is also a specific configuration for each target platform, usually touching the code options and the assets of the app. This includes things like output architecture or app splash screens / app icons.

You can find the platform-specific configuration in the project settings below the shared configurationYou can find the platform-specific configuration in the project settings below the shared configuration

You can find the platform-specific configuration in the project settings below the shared configuration

There are multiple options for each platform. You'll find a complete list of them below.

Flutter

Platform Settings

  • Export Project Name - Flutter project name, name of root exported directory and also the display name of the exported app
  • Bundle Identifier - Bundle identifier of the exported app. We suggest using reverse domain name notation, for example com.supernova.studio (sorry, that one is taken for some time now ^^)
  • Language - Language used for export and in CodeX. Currently, the only available option is Dart
  • UI - Interface style used for export. Currently, the only available option is XML
  • Architecture - Architecture of the project. Currently, the only available option is MVP
  • @1x - If enabled, assets with 1x resolution are exported. This option is disabled by default because there are no devices that don't support retina display and is therefore discouraged
  • @2x - If enabled, assets with 2x resolution are exported
  • @3x - If enabled, assets with 3x resolution are exported

Platform Images

Platform images are shared between the configurations for Flutter. You can set both iOS and Android assets and they'll also propagate to iOS and Android-specific project settings.

Customizing exported code and project

Every piece of code in Supernova is customizable to a large degree. You can customize Flutter Export Settings by going to Top Menu > Supernova Studio > Preferences and selecting Flutter tab.

iOS

Platform Settings

  • Export Project Name - XCode project name, name of root exported directory and also the display name of the exported app
  • Bundle Identifier - Bundle identifier of the exported app. We suggest using reverse domain name notation, for example com.supernova.studio (sorry, that one is taken for some time now ^^)
  • Language - Language used for export and in CodeX. Available options are Swift 3.2, Swift 4, Swift 4.2 and Swift 5
  • UI - Interface style used for export. Available options are Storyboards, XIBs and Code. Code option completely switches off the interface builder definitions and everything is generated using pure code
  • Architecture - Architecture of the project. Currently, the only available option is MVP
  • @1x - If enabled, assets with 1x resolution are exported. This option is disabled by default because there are no devices that don't support retina display and is therefore discouraged
  • @2x - If enabled, assets with 2x resolution are exported
  • @3x - If enabled, assets with 3x resolution are exported
  • Generate Vectors - If enabled, .pdf will be exported where applicable, otherwise .png is used. If disabled, only .png assets will be exported. The .pdf option only generates one asset as the vectors scale on-device.

Platform Images

  • App Icons - Both app and iTunes icon
  • iPhone Launch Images - Splash screens for different phone ratios
  • iPad Launch Images - Splash screens for different tablet ratios

Even if you don't provide the icons and launch images, Supernova will generate empty ones for you as a fallback. This is because iOS will not make the native resolution available if you don't provide splash screens specific to that device.

Customizing exported code and project

Every piece of code in Supernova is customizable to a large degree. You can customize iOS code and project settings by going to Top Menu > Supernova Studio > Preferences and selecting iOS tab.

Android

Platform Settings

  • Export Project Name - Android Studio project name, name of root exported directory and also the display name of the exported app
  • Package Name - Package name of the exported app. We suggest using reverse domain name notation, for example com.supernova.studio
  • SDK Version - SDK version used for the export. SDK version changes how packages are handled, what packages are used and restricts some features if a too old SDK version is used
  • Language - Language used for export and in CodeX. Available options are Kotlin and Java
  • UI - Interface style used for export. Available options are XML and XML with Data Binding. When data binding is enabled, basic structures making the data manipulation easier will be exported as well
  • Architecture - Architecture of the project. Currently, the only available option is MVP
  • mdpi - If enabled, assets with MDPI resolution are exported. This option is disabled by default because there are no devices on the market that use this option and is therefore discouraged
  • hdpi - If enabled, assets with hdpi resolution are exported
  • xhdpi - If enabled, assets with xhdpi resolution are exported
  • xxhdpi - If enabled, assets with xxhdpi resolution are exported
  • xxxhdpi - If enabled, assets with xxxhdpi resolution are exported

Platform Images

  • App Icons - Both rounded and squared versions of icons and Google App Store icon
  • Splash Images - Splash screens for different phone and tablet ratios

Even if you don't provide the icons and launch images, Supernova will generate empty ones for you as a fallback to have a valid asset structure and no missing assets when compiling.

Customizing exported code and project

Every piece of code in Supernova is customizable to a large degree. You can customize Android code and project settings by going to Top Menu > Supernova Studio > Preferences and selecting Android tab.

React Native

Platform Settings

  • Export Project Name - React project name, name of root exported directory and also the display name of the exported app
  • Bundle Identifier - Bundle identifier of the exported app. We suggest using reverse domain name notation, for example com.supernova.studio (sorry, that one is taken for some time now ^^)
  • Language - Language used for export and in CodeX. Available options are Kotlin and Java
  • UI - Interface style used for export. Currently, the only available option is JSX
  • Architecture - Architecture of the project. Currently, the only available option is MVP
  • @1x - If enabled, assets with 1x resolution are exported. This option is disabled by default because there are no devices that don't support retina display and is therefore discouraged
  • @2x - If enabled, assets with 2x resolution are exported
  • @3x - If enabled, assets with 3x resolution are exported
  • Generate Vectors - If enabled, .pdf will be exported where applicable, otherwise .png is used. If disabled, only .png assets will be exported. The .pdf option only generates one asset as the vectors scale on-device. This only applies to when running the iOS target, Android ignores this option

Platform Images

Platform images are shared between the configurations for React Native. You can set both iOS and Android assets and they'll also propagate to iOS and Android-specific project settings.

Customizing exported code and project

Every piece of code in Supernova is customizable to a large degree. You can customize React Native Export Settings by going to Top Menu > Supernova Studio > Preferences and selecting React Native tab.