Skip to Content
DashboardWeb Interface

Web Interface

In addition to the CLI, Norrix provides web forms for initiating builds, store submissions, and OTA updates directly from your browser.

Overview

The web interface mirrors the CLI functionality, allowing you to:

  • Build: Compile iOS, Android, or visionOS apps in the cloud
  • Submit: Push builds to the App Store or Google Play
  • Update: Publish over-the-air updates to deployed apps

When to Use Web vs CLI

Use CaseWeb InterfaceCLI
Quick one-off builds✅ Great✅ Good
CI/CD automation❌ Not suitable✅ Best
No local dev environment✅ Perfect❌ Requires setup
Scripted workflows❌ Manual only✅ Scriptable
Team members without CLI✅ Accessible❌ Needs install

Build Form

Navigate to /build in the Norrix dashboard to access the build form.

Required Steps

  1. Prepare your project

    • Zip your NativeScript project folder locally
    • Ensure all dependencies are included in package.json
  2. Upload project zip

    • Drag and drop or browse to select your .zip file
    • Maximum file size: 500MB
    • Files upload directly to S3 with progress tracking
  3. Configure build settings

FieldDescription
PlatformiOS, Android, or visionOS
Build TypeDebug or Release
Distribution Type(iOS only) App Store, Ad Hoc, or Enterprise
VersionApp version (e.g., 1.0.0)
Build NumberOptional. Auto-incremented if omitted
Nx Project(Monorepo only) Project name within workspace
Configuration(Monorepo only) Deployment target like prod, stg

iOS Signing Credentials

For iOS builds, choose one of two signing modes:

Manual Certificates:

  • Team ID
  • .p12 certificate file + password
  • .mobileprovision profile

App Store Connect API:

  • ASC Key ID
  • ASC Issuer ID
  • .p8 private key file

Android Signing Credentials

For release Android builds:

  • Keystore file (.keystore or .jks)
  • Keystore password
  • Key alias
  • Key password
  • Package type (APK or AAB)

Submit Form

Navigate to /submit in the Norrix dashboard to submit builds to app stores.

Required Steps

  1. Select a build

    • Choose from your recent successful builds
    • The platform is auto-detected from the build
  2. Configure submission

FieldDescription
Release TrackProduction, Beta, Alpha, or Internal
Release NotesOptional changelog for the submission
  1. Provide store credentials

For iOS (App Store Connect):

  • ASC Key ID
  • ASC Issuer ID
  • .p8 private key file

For Android (Google Play):

  • Service Account JSON file

Update Form

Navigate to /update in the Norrix dashboard to publish OTA updates.

Required Steps

  1. Prepare your update bundle

    • Build your JavaScript bundle locally using NativeScript CLI
    • Zip the compiled bundle files
  2. Upload bundle zip

    • Drag and drop or browse to select your .zip file
    • Files upload directly to S3 with progress tracking
  3. Configure update settings

FieldDescription
App IDYour app’s bundle identifier
PlatformiOS, Android, or visionOS
VersionUpdate version (e.g., 1.0.1)
Build NumberOptional. Defaults to latest
Release NotesOptional changelog for users
Nx Project(Monorepo only) Project name
Configuration(Monorepo only) Deployment target

File Upload Details

All file uploads use presigned S3 URLs for security and performance:

  • Files go directly to S3, not through the API server
  • Large uploads won’t timeout
  • Progress tracking shows upload percentage
  • Files are automatically cleaned up after processing

Supported File Types

Upload TypeAccepted FormatsMax Size
Project Zip.zip500 MB
Update Bundle.zip100 MB
p12 Certificate.p1210 MB
Provisioning Profile.mobileprovision1 MB
ASC Private Key.p81 MB
Android Keystore.keystore, .jks10 MB
Service Account.json1 MB

Monitoring Build Progress

After submitting a build, submit, or update:

  1. You’ll receive a job ID
  2. Navigate to your dashboard to monitor progress
  3. Status updates show: scheduledprocessingsuccess or failed
  4. Download artifacts when complete (for builds)

Troubleshooting

Upload fails with timeout

  • Check your internet connection
  • Try a smaller zip file
  • Ensure the file isn’t corrupted

Build fails immediately

  • Verify your zip contains a valid NativeScript project
  • Check that package.json is at the root of the zip
  • Ensure all required signing credentials are provided

Credentials rejected

  • Double-check Team ID matches your Apple Developer account
  • Verify p12 password is correct
  • Ensure provisioning profile matches bundle ID and Team ID

Android signing fails

  • Confirm keystore password and key password are correct
  • Verify key alias exists in the keystore
  • Check that the keystore isn’t corrupted

Next Steps