The SST Console is a web based dashboard to manage your SST apps.
With the Console you can view real-time logs, invoke functions, replay invocations, make queries, run migrations, view uploaded files, query your GraphQL APIs, and more!
How to use
To use the SST Console in local development:
In your project root, start the Live Lambda Dev environment.
npx sst start
You'll see something like this once your local environment is ready.
Starting Live Lambda Dev
SST Console: https://console.sst.dev/acme/Jay
Debug session started. Listening for requests...
Head over to the printed URL or — console.sst.dev
It'll connect to the app you are working on locally. You can read more about how this works below.
The SST Console has separate tabs or explorers for managing the different parts of your application.
View real-time logs from your Live Lambda Dev environment.
View all the deployed stacks and resources in your app.
Invoke the functions in your app and replay invocations.
Set the headers, query params, request body, and view the function logs in the response.
The RDS explorer allows you to manage the RDS instance created with the
RDS constructs in your app.
You can use the query editor to run queries. You can also use the migrations panel to view all of your migrations and apply them.
The Buckets explorer allows you to manage the S3 Buckets created with the
Bucket constructs in your app.
It allows you to upload, delete, and download files. You can also create and delete folders.
The Cognito explorer allows you to manage the User Pools created with the
Cognito constructs in your app.
It allows you to create new users and delete existing users.
The DynamoDB explorer lets you query the DynamoDB tables in the
Table constructs in your app.
You can scan the table, query specific keys, create and edit items.
By default the Console connects to the app you are running locally with
sst start. To use the Console with a deployed environment you'll first need to run the
sst console command.
$ npx sst console
SST Console: https://console.sst.dev/acme/prod
This will start a server locally and use your local AWS credentials to power the Console.
With this, you can use the Console to manage apps that are in production. In this mode, the Console will display CloudWatch logs instead of ones from your Live Lambda environment.
The SST Console works in all browsers and environments. But for certain browsers like Safari or Brave, and Gitpod, it needs some additional configuration.
Safari and Brave
Certain browsers like Safari and Brave require the local connection between the browser and the
sst start CLI to be running on HTTPS.
SST integrates with mkcert to automatically generate a self-signed certificate. To set this up:
- Follow the mkcert installation steps.
mkcert -installin your terminal.
- Restart your browser.
sst startand navigate to console.sst.dev in the browser.
If you are using Gitpod, you can use the Gitpod Local Companion app to connect to the
sst start or
sst console process running inside your Gitpod workspace.
To get started:
- Install Gitpod Local Companion app.
- Run the Companion app.
- Navigate to console.sst.dev in the browser.
The companion app runs locally and creates a tunnelled connection to your Gitpod workspace.
How it works
When the Console starts up, it gets the credentials from a local server that is run as a part of the SST CLI. It also gets some metadata from the app that's running locally. The local server only allows access from
The Console then uses these credentials to make calls to AWS using the AWS SDK. For some resources (like S3), the Console will proxy calls through your local CLI to get around the CORS restrictions in the browser.
The SST Console requires the SST CLI to be running (either
sst start or
sst console) to work.
When connected to
sst start, the Console will display real-time logs from the local invocations of your functions. Whereas, when connected to
sst console, it'll show you the CloudWatch logs for them instead.
The source for the Console can be viewed in the SST GitHub repo.