> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bloom.diy/llms.txt
> Use this file to discover all available pages before exploring further.

# Backend Dashboard

> Manage your Convex backend: monitor health, explore data, and inspect functions.

Each Bloom app comes with a ready-to-use backend powered by [Convex](https://docs.convex.dev). The **Backend Dashboard** gives you direct access to your Convex deployment, where you can monitor system health, browse your database, inspect functions, manage files, and configure scheduled tasks.

<Frame>
  <img src="https://mintcdn.com/bloom-eafef039/6Jj6W1TQ2_0nANBi/images/database-preview-web.png?fit=max&auto=format&n=6Jj6W1TQ2_0nANBi&q=85&s=db9b0e709705d12ec488846d3d961fc0" alt="Backend Dashboard" width="1432" height="1434" data-path="images/database-preview-web.png" />
</Frame>

<Note>
  The Backend Dashboard is embedded directly in Bloom, but you can also **Open
  in New Tab** to access the full Convex dashboard experience.
</Note>

## Dashboard Views

<Tabs>
  <Tab title="Health">
    ### Monitor system performance

    <Frame>
      <img src="https://mintcdn.com/bloom-eafef039/6Jj6W1TQ2_0nANBi/images/database-health.png?fit=max&auto=format&n=6Jj6W1TQ2_0nANBi&q=85&s=6fb1df8acf12320f19288956c8e68c52" alt="Health view" width="1296" height="1290" data-path="images/database-health.png" />
    </Frame>

    The Health view shows real-time metrics for your backend:

    **Failure Rate**

    * Tracks the percentage of function calls that fail over time
    * View data for all functions or filter by specific ones
    * Useful for identifying reliability issues after deployments

    **Cache Hit Rate**

    * Shows how often queries are served from cache vs. database
    * Higher cache hit rates mean faster responses and lower costs
    * Tracks "All queries" performance over the last hour

    **Scheduler Status**

    * Displays whether scheduled functions are running on time
    * Shows "On time" when everything is healthy
    * Alerts you to delays or failures in background jobs

    **Last Deployed**

    * Timestamp of your most recent deployment
    * Shows which Convex version your deployment is running
    * Helpful for correlating issues with specific releases

    <Tip>
      Check the Health tab right after deploying changes to catch issues before they impact users.
    </Tip>
  </Tab>

  <Tab title="Data">
    ### Browse your database tables

    <Frame>
      <img src="https://mintcdn.com/bloom-eafef039/6Jj6W1TQ2_0nANBi/images/database-tables.png?fit=max&auto=format&n=6Jj6W1TQ2_0nANBi&q=85&s=5ba0e18076bbcc322f45cfecd5cfb0cd" alt="Data view" width="1296" height="1290" data-path="images/database-tables.png" />
    </Frame>

    The Data view lets you explore your Convex database structure.

    **What you can do:**

    <Check>
      View all tables in your database
    </Check>

    <Check>
      See table schemas and field types
    </Check>

    <Check>
      Browse documents stored in each table
    </Check>

    <Check>
      Search tables by name
    </Check>

    <Check>
      Create new tables directly from the dashboard
    </Check>

    **Common use cases:**

    * Verify data is being saved correctly
    * Check user records after sign-up
    * Debug data structure issues
    * Understand your database schema

    <Info>
      Empty tables show helpful prompts to **Add Documents** or **Follow a
      quickstart guide** to get started with Convex data patterns.
    </Info>
  </Tab>

  <Tab title="Functions">
    ### Inspect your backend logic

    <Frame>
      <img src="https://mintcdn.com/bloom-eafef039/6Jj6W1TQ2_0nANBi/images/database-functions.png?fit=max&auto=format&n=6Jj6W1TQ2_0nANBi&q=85&s=492e15c948ff2f8d93657c720844d908" alt="Functions view" width="1296" height="1290" data-path="images/database-functions.png" />
    </Frame>

    The Functions view shows all Convex functions in your app, organized by module.

    **Function organization:**

    * **auth** — Authentication lifecycle functions (onCreate, onDelete, onUpdate)
    * **betHistory** — Custom functions for your app's logic
    * **http** — HTTP endpoints and API routes

    **What you can see:**

    * Function names and their module locations
    * Lock icons indicate internal/system functions
    * Search and filter to find specific functions

    <Note>
      Click any function to view its statistics, code implementation, and logs. This makes debugging individual functions much easier.
    </Note>

    <Tip>
      The expandable panel shows: "Select a function in the expandable panel to the left to view its statistics, code, and logs."
    </Tip>
  </Tab>

  <Tab title="Files">
    ### Manage file storage

    <Frame>
      <img src="https://mintcdn.com/bloom-eafef039/6Jj6W1TQ2_0nANBi/images/database-file-storage.png?fit=max&auto=format&n=6Jj6W1TQ2_0nANBi&q=85&s=6811114b195395d61fb3aa792bdbcdae" alt="Files view" width="1296" height="1290" data-path="images/database-file-storage.png" />
    </Frame>

    The Files view provides access to Convex File Storage for managing uploaded files.

    **File management features:**

    <Check>
      Upload files directly (or drag and drop)
    </Check>

    <Check>
      Lookup files by ID
    </Check>

    <Check>
      Filter by upload date
    </Check>

    <Check>
      View file size and content type
    </Check>

    <Check>
      See total file count and storage used
    </Check>

    **Supported operations:**

    * Store images, documents, videos, and other media
    * Retrieve files by their unique ID
    * Track storage usage against your plan limits

    <Info>
      File storage counts toward your plan's storage limit. Monitor your usage in the [pricing dashboard](/pricing-and-credits) or when viewing total files.
    </Info>

    Learn more about [Convex File
    Storage](https://docs.convex.dev/file-storage).
  </Tab>

  <Tab title="Schedules">
    ### Manage scheduled functions

    <Frame>
      <img src="https://mintcdn.com/bloom-eafef039/6Jj6W1TQ2_0nANBi/images/database-schedules.png?fit=max&auto=format&n=6Jj6W1TQ2_0nANBi&q=85&s=2006d444f1a04d07c660d20e01e28c03" alt="Schedules view" width="1296" height="1290" data-path="images/database-schedules.png" />
    </Frame>

    The Schedules view lets you configure functions that run on a schedule or after a delay.

    **Schedule types:**

    * **Scheduled Functions** — Run after a delay or at a specific time
    * **Cron Jobs** — Recurring tasks on a schedule (e.g., daily, weekly)

    **What you can see:**

    * Scheduled function ID
    * When it's scheduled to run
    * Current status (pending, running, completed)
    * Which function will execute

    <Check>
      Filter by function name
    </Check>

    <Check>
      Cancel all scheduled tasks
    </Check>

    <Check>
      View upcoming scheduled executions
    </Check>

    <Info>
      Use scheduled functions for tasks like sending notifications, generating reports, or cleaning up old data. Learn more about [scheduled
      functions](https://docs.convex.dev/scheduling/scheduled-functions).
    </Info>
  </Tab>

  <Tab title="Logs">
    ### View backend activity

    <Frame>
      <img src="https://mintcdn.com/bloom-eafef039/6Jj6W1TQ2_0nANBi/images/database-logs.png?fit=max&auto=format&n=6Jj6W1TQ2_0nANBi&q=85&s=17518641c46af24b34681896d712d853" alt="Logs view" width="1296" height="1290" data-path="images/database-logs.png" />
    </Frame>

    The Logs view in the Backend Dashboard shows Convex-specific logs with additional filtering options.

    **Log columns:**

    * **Timestamp** — Exact time the event occurred
    * **ID** — Unique identifier for the log entry
    * **Status** — Success, error, or execution time
    * **Function** — Which function generated the log

    **Filtering options:**

    * Filter by component (isolate specific modules)
    * Filter by function (see logs for one function only)
    * Search logs by text or error messages

    <Tip>
      Success logs show execution time (e.g., "357ms"). Use this to identify slow functions that might need optimization.
    </Tip>

    <Warning>
      Error logs are highlighted in red. Click them to see full error messages and stack traces.
    </Warning>

    For a unified view of frontend and backend logs, use Bloom's [Logs
    view](/logs).
  </Tab>

  <Tab title="Settings">
    ### Configure your deployment

    <Frame>
      <img src="https://mintcdn.com/bloom-eafef039/6Jj6W1TQ2_0nANBi/images/database-settings.png?fit=max&auto=format&n=6Jj6W1TQ2_0nANBi&q=85&s=207eba9b95eb5fa3ebe0bf14db1a55c0" alt="Settings view" width="1296" height="1290" data-path="images/database-settings.png" />
    </Frame>

    The Settings view shows configuration details for your Convex backend.

    **Deployment URL**

    * Your Convex deployment's hosted URL
    * Use this to configure production Convex clients
    * Format: `https://[name].convex.cloud`

    **HTTP Actions URL**

    * URL for Convex [HTTP Actions](https://docs.convex.dev/functions/http-actions)
    * Available in functions as `process.env.CONVEX_SITE_URL`
    * Format: `https://[name].convex.site`

    **Deploy Key**

    * For cloud deployments, deploy keys are handled automatically
    * For local development, generate an admin key using [the script in your
      repository](https://docs.convex.dev/production/hosting)

    <Info>
      These settings are automatically configured when you build in Bloom. You typically only need them when exporting your code or setting up CI/CD.
    </Info>
  </Tab>
</Tabs>

## Opening in a new tab

Click **Open in New Tab** to access your full Convex dashboard with additional features:

* More detailed analytics and metrics
* Advanced query debugging tools
* Team member management (for Convex teams)
* Billing and usage information

<Note>
  Your Convex deployment is automatically provisioned and managed by Bloom. You don't need to create a Convex account separately unless you want to access team features or manage billing directly.
</Note>

## Common workflows

<AccordionGroup>
  <Accordion title="Verify a new feature works" icon="check">
    1. Deploy your changes in Bloom
    2. Open **Health** to confirm no new failures
    3. Check **Functions** to see your new functions appear
    4. View **Data** to verify records are being created
    5. Monitor **Logs** for any errors during testing
  </Accordion>

  <Accordion title="Debug a failing function" icon="bug">
    1. Check **Health** to identify high failure rates
    2. Switch to **Logs** and filter by the failing function
    3. Look for error messages (highlighted in red)
    4. Click the error to see the full stack trace
    5. Open **Functions** and select the failing function to see its code
    6. Fix the issue in your Bloom project and redeploy
  </Accordion>

  <Accordion title="Check database contents" icon="database">
    1. Open the **Data** tab
    2. Find your table in the left sidebar
    3. Click to view all documents in the table
    4. Use **Filter & Sort** to find specific records
    5. Verify data structure matches your expectations
  </Accordion>

  <Accordion title="Manage scheduled tasks" icon="clock">
    1. Go to **Schedules** tab
    2. View all pending scheduled functions
    3. Filter by function name to find specific tasks
    4. Check status to ensure tasks are running on time
    5. Use **Cancel All** if you need to stop scheduled executions
  </Accordion>
</AccordionGroup>

## Learn more about Convex

<CardGroup cols={2}>
  <Card title="Convex Documentation" icon="book" href="https://docs.convex.dev">
    Deep dive into Convex's database, functions, and real-time capabilities
  </Card>

  <Card title="View unified logs" icon="terminal" href="/logs">
    See frontend and backend logs together in Bloom's Logs view
  </Card>

  <Card title="File Storage guide" icon="file" href="https://docs.convex.dev/file-storage">
    Learn how to store and serve files with Convex
  </Card>

  <Card title="Scheduled Functions" icon="calendar" href="https://docs.convex.dev/scheduling/scheduled-functions">
    Set up recurring tasks and delayed executions
  </Card>
</CardGroup>
