Skip to main content

Orrin CLI

Project description

Orrin CLI

The Orrin CLI enables users to perform the actions required to deploy a standalone app to Orrin Apps.

It is the standard tool for packaging UI bundles (ZIP files), uploading them to the server for review, and checking the status of the review process for both the frontend and backend.

The CLI

The CLI currently consists of two main commands:

Command Purpose
config Manages configuration, including setting or revoking your Developer API key.
ui Handles UI-related activities, including building and uploading the deployment ZIP file.

Each command has specific subcommands detailed below.

Subcommands for config

Command Purpose
configure-dev-api Configures your Developer API key within the Orrin CLI.
revoke-config Removes your currently configured Developer API key.
show-configuration Displays the Developer API key currently configured.

Configuration of Developer API

Configuring your developer API key is the recommended first step. While not strictly required to install the CLI, the key is required to perform any deployment actions.

To configure your key, run:

orrin config configure-dev-api

Revoking Configuration

If you need to remove the currently configured Developer API key, run:

orrin config revoke-config

This effectively removes the stored key. You can reconfigure a new key at any time.

Showing the Configuration

If you have forgotten your developer API key, run:

orrin config show-configuration

This will print the stored Developer API key. As the Orrin CLI matures, this command will likely display additional developer metadata.

Subcommands for ui

Command Purpose
generate-zip Runs at the root of the Next.js codebase. It builds the project, exports static contents, and zips them for upload.
upload Sends the generated ZIP file to the server, adding it to the "STAGING" queue to await review.

Generating ZIP File

To upload your UI for review and deployment, you must package the static contents of your codebase into a ZIP file.

From the root of your Next.js codebase, run:

orrin ui generate-zip

This performs a build and generates the required ZIP file.

NOTE: Ensure your next.config.ts contains the following configuration. Without this, the ZIP creation may fail:

import type { NextConfig } from 'next';

const nextConfig: NextConfig = {
  output: 'export',
  trailingSlash: true,
  basePath: '/<your_app_name>/current',
  reactStrictMode: true,
};

export default nextConfig;

Uploading the UI

When you are ready, you can upload the UI to the server. This submits it to a "STAGING" queue, meaning it is awaiting review/approval.

Run the following command to upload:

orrin ui upload --app <AppName>

Important Requirements:

  • Backend First: <AppName> must match the app name found in your backend configuration. An app is only created after the backend is submitted. If you attempt to submit the frontend before the backend, this command will fail with a "no app found" error.
  • App Linking: Inherently, the UI code is not "attached" to an app. Passing --app allows the server to link the uploaded UI to the specific app record.

The Review Process

  • Overrides: If you upload a new codebase using an existing app name, it will override the previous codebase and trigger a new review.
  • Updates: A review is required for every upload before the UI can be hosted. If an app is already live and you submit an update, the old version persists until the new one is approved. Once approved, the new version takes over and the old version is cached.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

orrin_cli-0.1.7.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

orrin_cli-0.1.7-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file orrin_cli-0.1.7.tar.gz.

File metadata

  • Download URL: orrin_cli-0.1.7.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.10

File hashes

Hashes for orrin_cli-0.1.7.tar.gz
Algorithm Hash digest
SHA256 b81484fec093c7ca1644f047f59fbfd6b43715833a07d85193371d961a14617b
MD5 e2c412facd34e63207dd5bd2e895f21a
BLAKE2b-256 03ef7ee83b74713af7f212854eea6d8b8b0e2705ea51ae59ebca52c7a7542af2

See more details on using hashes here.

File details

Details for the file orrin_cli-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: orrin_cli-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 6.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.10

File hashes

Hashes for orrin_cli-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 dc9b62a20f9c3a09a7f184e51fff98ab6ea37d948c662171183a0695a5bc8c83
MD5 66c6435ee9bffaced91f140349500f98
BLAKE2b-256 f896a681a3a81784298b60f9aea250fb42ccdbb9381c4a017a5d735c982d3ae1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page