Snowflake App Runtime¶
Snowflake App Runtime lets you go from an idea to a live, deployed web application in minutes. No infrastructure to provision, no credentials to configure, no Docker expertise required. Your app runs inside Snowflake, right next to your data, with direct access to your tables, warehouses, and security model. Describe what you want to build in Cortex Code CLI or Cortex Code Desktop, Snowflake’s AI coding assistants. They scaffold the project, wire up your Snowflake data, and deploy to a live URL.
Why build on Snowflake?¶
- Your data is already here. Query Snowflake tables directly from your application code. No API layers, no ETL, no data egress.
- Enterprise-ready by default. SSO, role-based access control, audit logging, and governance are inherited from your Snowflake account. You don’t configure them; they’re already on.
- One-command deploy. One command takes your source code to a live, authenticated URL. You don’t manage Dockerfiles, container registries, or CI/CD pipelines.
- Secure by design. Your app runs inside Snowflake’s security perimeter. End users authenticate through Snowflake’s existing identity provider. Queries can run as the calling user for per-user access control, with no auth system to build. No secrets to manage.
Quick start with Cortex Code¶
The fastest way to build and deploy is with Cortex Code CLI
or Cortex Code Desktop. Both bundle
the snowflake-apps
skill. Invoke it with $snowflake-apps, use the Build an app starter card in Desktop,
or describe your app in chat:
Cortex Code generates a Next.js project, wires up Snowflake data access, tests
locally, and deploys with snow app deploy. Your app is live in minutes.
See Getting started with Snowflake App Runtime for environment setup, the Snowflake CLI-only path, and connecting apps to Snowflake data.
Quick start with the CLI¶
If you already have application code, initialize and deploy:
snow app setup generates a snowflake.yml project definition using
defaults set by your account administrator. snow app deploy uploads your
source, builds it remotely, and returns a live URL. See Getting started with Snowflake App Runtime
for the full walkthrough.
How this relates to Streamlit¶
Streamlit in Snowflake and Snowflake App Runtime are both ways to build applications directly on your data. They’re designed for different use cases:
- Streamlit: Python-first, opinionated, guardrailed. The right choice for dashboards, data exploration, and analyst self-serve tools. Fast path to a polished data app without writing frontend code.
- Snowflake App Runtime: Full power of the web. The right choice when you need custom UI, multi-step workflows, rich interactions, or the broader JavaScript/TypeScript ecosystem (React, Next.js).
Choose based on what you’re building. Both run inside Snowflake’s security perimeter, both inherit your RBAC, and both give you direct access to your data without building API layers. Both are part of Snowflake Apps: deployed apps surface in the same catalog regardless of how they were built.
Under the hood¶
When you deploy, Snowflake manages the full lifecycle:
- Source upload: your files are staged in Snowflake.
- Remote build: Snowflake runs the install and build commands from your
optional
app.ymlmanifest when you provide one, or from auto-detected project layout when you do not, producing an immutable versioned package. - Package storage: the built artifact is stored in an artifact repository
(
TYPE = APPLICATION). - Service creation: Snowflake starts your app as a running service with a public endpoint.
On subsequent deploys, a new version is built and the running service upgrades in place. No URL changes, no downtime.
Infrastructure setup¶
Your Snowflake account administrator sets up the required infrastructure (database, schema,
compute, and networking) through Snowsight at /settings/account/apps. Once setup is
complete, developers can deploy without additional configuration.
What’s supported¶
During public preview, Snowflake App Runtime supports Node.js applications
(with a focus on Next.js). The CLI command is snow app deploy.
Developer guides¶
| Guide | Description |
|---|---|
| Getting started with Snowflake App Runtime | End-to-end walkthrough: describe, build, deploy, open. |
| Cortex Code CLI | Install and connect; use $snowflake-apps or natural language in chat. |
| snowflake-apps | snowflake-apps bundled skill (CLI and Desktop) for scaffolding and deploying Snowflake App Runtime apps. |
| Building apps | Build and deploy with Cortex Code Desktop (snowflake-apps skill, starter card, live preview, Apps view). |
| Onboarding and authentication | Install Cortex Code Desktop and connect to your Snowflake account. |
| Snowflake Apps SQL commands | SQL reference for artifact repositories, Application Services, and log retrieval. |
| Optional app.yml manifest for Snowflake App Runtime | Optional app.yml manifest describing how your app is built. |
| Snowflake Apps CLI commands | CLI reference for snow app setup, snow app deploy, and related commands. |
| Snowflake App Runtime privileges | Artifact repository and Application Service privileges. |
| Access control for Snowflake App Runtime | Delegate operations, monitoring, and view access using RBAC. |
| Observability for Snowflake App Runtime | Inspect service status and read container logs. |
| Snowflake App Runtime limitations | Known limitations during public preview. |