Skip to content

✨ Cloud authentication, basic status bar and project linking/unlinking#32

Merged
savannahostrowski merged 26 commits intomainfrom
cloud-auth
Feb 2, 2026
Merged

✨ Cloud authentication, basic status bar and project linking/unlinking#32
savannahostrowski merged 26 commits intomainfrom
cloud-auth

Conversation

@savannahostrowski
Copy link
Copy Markdown
Member

@savannahostrowski savannahostrowski commented Jan 30, 2026

Closes https://github.com/fastapilabs/cloud/issues/2423, https://github.com/fastapilabs/cloud/issues/2424, https://github.com/fastapilabs/cloud/issues/2425

Needs https://github.com/fastapilabs/cloud/pull/2712

This adds new commands in the command palette to sign in and out using a device flow, as well as commands to link and unlink an app. This also works in both local and in browser contexts (e.g. vscode.dev/github.dev).

The new status bar in the bottom left has a couple states:

  • Not signed in → "Sign into FastAPI Cloud"
  • Signed in, no app linked (i.e. no .fastapicloud/cloud.json) → "Set up FastAPI Cloud"
  • Signed in, config exists but app returns 404 → "⚠ Set up FastAPI Cloud". When users click this, they will get a one-time warning toast that tells them that something has gone wrong and suggest they unlink and relink their application
  • Signed in, app linked → shows app slug

In "Set up FastAPI Cloud" state, clicking the status bar shows a quick pick:

  • "Link Existing App" — connects to an existing app
  • "Create New App" — creates a new app and links it

link

In the "⚠ FastAPI Cloud" state, clicking the status bar shows a warning toast prompting the user to unlink and relink.
image

When an app is linked, clicking the status bar shows Open App, Dashboard, and a More... menu with Unlink and Sign Out.
Screenshot 2026-01-29 at 7 48 35 PM

Users will also now see their auth status in the accounts menu as well.
image

More details:

  • In local contexts, we store the sign in token in the same place that the CLI does, so that users never have to double auth. In vscode.dev, we store in SecretStorage, since the file doesn't exist.
  • There is also a setting fastapi.cloud.enabled which controls whether the cloud features are enabled (they are enabled by default but I figured that there may be users who don't want them at all and I'd like to give them a way to declutter if they aren't interested).
  • Also instrumented new events for tracking sign in, sign out, app view, dashboard view, link and unlink.
  • I will create a new VSIX for y'all to test once I get the deploy command in there, so it's actually usable 😅!

@savannahostrowski
Copy link
Copy Markdown
Member Author

I'm going to merge this, since it blocks other work. It's actually more tests than source code 😅 . Happy to revisit UX choices later (it'll become very apparent how this can be improved once y'all play around with it).

@savannahostrowski savannahostrowski merged commit 6d297e9 into main Feb 2, 2026
5 checks passed
@savannahostrowski savannahostrowski deleted the cloud-auth branch February 2, 2026 23:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant