Skip to main content

Prerequisites

You need:

Quick Start

1. Install the CLI

Verify the installation:

2. Log in to Fjall

Interactive fjall login opens your browser to authenticate via the device-code flow. To enter an API key instead, press e at the prompt. For non-interactive environments (CI/CD), use fjall login --api-key <key> with an API key from your Fjall account dashboard. The CLI stores credentials at ~/.fjall/auth.json.

3. Connect your AWS account

Connect Fjall to your AWS account via OIDC. This deploys a small CloudFormation stack that grants Fjall permission to manage resources.
The CLI first prompts for your primary AWS region and environment (it skips a prompt when the value is already known). It then auto-opens your browser to a CloudFormation Quick Create page and prints the URL as a fallback. Review the stack, click Create stack, and the CLI detects the connection automatically.

4. Create account infrastructure

Deploy monitoring, compliance, and container registry infrastructure to your AWS account:
Then deploy it:
This provisions the base infrastructure in your AWS account. It only needs to run once.

5. Create your first application

Create a standard web application:
--name pre-fills the application name. The interactive creator then prompts for the configuration tier and database before scaffolding the fjall/myapp/ directory. Pass --type <tier> to skip the prompts.

6. Deploy

First deployment takes 10 to 15 minutes while AWS provisions all resources. Subsequent deployments are faster. After deployment completes, the CLI prints your application URL:
For multi-account setups, use fjall create organisation instead of steps 3 and 4. This creates a full AWS Organisation with platform, account, and member account infrastructure. See the Organisation Guide for details.

Choose a tier

Each tier configures compute, networking, and database resources for a specific use case. The interactive picker lists six options: Standard, Lightweight, Resilient, Enterprise, Tinkerer, and Custom. Standard is the recommended starting point. Create an application with a specific tier:

Patterns

Patterns scaffold a framework-specific application via a separate interactive flow. The pattern picker offers Payload CMS and Next.js (OpenNext), each with four configuration tiers: Standard, Lightweight, Resilient, and Custom. payload is the only pattern you can deploy today. Create one with the long-form flag (there is no -p short flag):
The nextjs pattern is not yet deployable. Recent CLI versions no longer offer it and refuse --pattern nextjs at create time; older versions accepted it and failed at deploy. Use --pattern payload for a Next.js-based app, or --pattern staticsite for a pre-built static site.

What happens during deployment

When you run fjall deploy, the CLI:
  1. Synthesises CloudFormation templates from your infrastructure code
  2. Bootstraps the CDK toolkit stack (first time only)
  3. Builds your application and creates Docker images
  4. Deploys AWS resources via CloudFormation
  5. Outputs endpoints and resource information

Troubleshooting

Command Not Found

Solution: Check that the npm global bin directory is in your PATH:

AWS Credentials Error

Solution: Check that your AWS account is connected:
This will verify your existing connection or start a new one. If your credentials have expired, the CLI will automatically prompt you to re-authenticate when you next run a deployment command.

Deployment Timeout

First deployments can take 15+ minutes. If deployment times out, check the CloudFormation console for status, then retry:

Need Help?

Next Steps

Add Resources

Extend your application with databases, storage, and more

CLI Reference

Explore all available commands

Patterns

Learn about architecture patterns

Understand Profiles

Learn about deployment profiles and regions