Install Your App

Deploy, test, and manage your Fireberry app

Install Your App

You've built your app — now it's time to get it running in Fireberry. This guide covers the deployment workflow, testing, updating, and removing your app.


Deployment Workflow

flowchart LR
    Build[Build Your App] --> Push[Push to Fireberry]
    Push --> Install[Install on Account]
    Install --> Use[App is Live!]

    Update[Make Changes] --> Build
StepCommandDescription
1npm run buildBuild your app (if using a build tool)
2fireberry pushUpload to Fireberry servers
3fireberry installMake it available on your account

Before You Deploy

Make sure you have:

  • CLI installed: npm install -g @fireberry/cli
  • CLI authenticated: fireberry init
  • Valid manifest.yml in your project root
  • Build output in the paths specified in your manifest

Step 1: Build Your App

If you're using a build tool (Vite, webpack, etc.), run your build:

npm run build

Make sure your build output goes to the path in your manifest.yml:

components:
  - type: record
    path: static/comp/build # Your build output here
💡

Tip

For Vite, the default output is dist/. Make sure your manifest path matches your build tool's output directory.


Step 2: Push to Fireberry

From your app's root directory:

fireberry push

The CLI validates and uploads your code:

✔ Manifest loaded successfully
✔ 1 component validated and zipped

Components ready to push:
  1. my-component (864fbfb2...) - 45.23 KB

✔ Components pushed successfully

What Gets Uploaded

  • All files in each component's path directory
  • Files are compressed before upload
  • Each component is uploaded separately

Step 3: Install on Your Account

After pushing, install the app:

fireberry install
App installed successfully

Your app is now live! 🎉


Finding Your App

Where your app appears depends on the component type:

Component TypeWhere to Find It
RecordGo to a record of the specified objectType. Look for the icon in the toolbar.
Side MenuLook for the icon in the side navigation.
Global MenuFind the menu item in the top navigation bar.

Updating Your App

To update an installed app:

  1. Make your changes
  2. Build (if needed): npm run build
  3. Push: fireberry push
📘

Note

You don't need to run fireberry install again. Pushing updates the installed app automatically.


Testing Your App

Check Context Access

Verify your app can access the SDK:

import FireberryClientSDK from "@fireberry/sdk/client";

const client = new FireberryClientSDK();
await client.initializeContext();

console.log("User:", client.context.user);
console.log("Record:", client.context.record); // Only for Record components

Check API Access

Test data operations:

const result = await client.api.query(1, {
  fields: "accountid,accountname",
  page_size: 5,
});

console.log("Query result:", result);

Check Design System

If using the Design System, verify components render:

import { DSThemeContextProvider, Button } from "@fireberry/ds";

function Test() {
  return (
    <DSThemeContextProvider isRtl={false}>
      <Button label="Test" color="success" />
    </DSThemeContextProvider>
  );
}

Browser DevTools

Your app runs in an iframe. Use browser DevTools to:

  • Check the console for errors
  • Inspect network requests
  • Debug JavaScript

Removing Your App

To delete an app permanently:

fireberry delete

You'll be asked to confirm:

? Are you sure you want to delete app my-app (1f3a3eca...)?
  This action cannot be undone. (y/N)
⚠️

Warning

Deletion is permanent and cannot be undone. The app is removed from all accounts where it was installed.


Troubleshooting

Push Errors

ErrorSolution
"Unauthorized user"Re-authenticate: fireberry init
"Manifest not found"Run from the directory containing manifest.yml
"Component path does not exist"Check paths in manifest match your build output
"Invalid iconColor format"Use hex format: #RRGGBB

App Not Appearing

IssueSolution
Record component not showingCheck you're on a record of the correct objectType
Side menu not showingVerify icon setting is valid
Global menu not showingCheck displayName is set

SDK Errors

ErrorSolution
"Context not initialized"Call await client.initializeContext() first
API timeoutDefault is 30 seconds; check network

Quick Reference

TaskCommand
Authenticatefireberry init
Create appfireberry create my-app
Deployfireberry push
Installfireberry install
Deletefireberry delete

Next Steps