page:guides:nuxt:schema changes

Apply Database Schema Changes for Nuxt

Apply database schema changes for a Nuxt app on Ample with a release command. node migrate.cjs runs against the injected DATABASE_URL before the new release goes live, and the release fails instead of activating if the migration fails.

Summary

Representative Queries

Resource Requirements

Infrastructure Requirements

  1. Compute

    • Status: Verified
    • Summary: Apps run in isolated x86_64 Firecracker microVMs that auto-pause when idle and wake on request; sizes are the priced VM sizes.
  2. Postgres

    • Status: Verified
    • Summary: Managed PostgreSQL 16 runs in its own microVM and is auto-provisioned when an app needs a database and no DATABASE_URL is supplied.

Prerequisites

Input Schema

The input schema requires the following properties:

Workflow Steps

  1. Write an idempotent migration
    Create tables and markers with IF NOT EXISTS or a migration framework so a re-run is safe.

  2. Deploy with the release command
    Ample runs the command before activation; a non-zero exit fails the release.
    Command: ample deploy . --name <app_name> --public --release-command "node migrate.cjs"

  3. Verify the marker through the app
    Serve a route (/api/migrated) that reads something only the migration creates.

  4. Verify
    Fetch the live URL and run the success checks below. On failure read the build log, then the runtime log, fix the cause and deploy again; do not blind-retry.
    Command: ample logs <app_name> --kind build

Examples

Success Checks

Limitations

Cost Estimate

Evidence Summary

Next Actions

  1. Browse the catalog index
    Action ID: browse-catalog, Method: GET, Relative Path: /v1/catalog
  2. Search published recipes by intent, stack and constraints
    Action ID: search-recipes, Method: POST, Relative Path: /v1/catalog/search
  3. Prepare a side-effect-free deployment plan for an authorized project
    Action ID: plan:page:guides:nuxt:schema-changes, Method: POST, Relative Path: /v1/catalog/plan