Fabricator

What are team workspaces?

Build Rayfin apps with teammates in a private GitHub repository, with personal previews and a pipeline that publishes to Fabric.

Warning

Team workspaces are an experiment. Turn them on in Settings → Experiments. They may change or be removed in a future update.

Team workspaces let several people build Rayfin apps together without sharing one laptop or one deployment. Fabricator keeps the team's apps in GitHub, gives each person a working copy and a personal preview, and publishes the shared app through a GitHub Actions pipeline.

Home with the Team workspaces experiment turned on, showing a Build apps together card with Create a team workspace and Join one.

How a team workspace works

A team workspace is one private GitHub repository. Each top-level folder that contains rayfin/rayfin.yml is one Rayfin app.

Fabricator also creates two Microsoft Fabric workspaces:

  • one workspace for published apps that everyone uses
  • one workspace for everyone's personal previews

The repository pipeline signs in to Microsoft Fabric with Microsoft Entra ID service principals called deploy identities. It uses GitHub OIDC, so Fabricator stores IDs as GitHub Actions variables but stores no client secrets.

Pull requests can only use the preview identity. Pushes to main use the deploy identity for published apps. That means a pipeline change in a pull request cannot touch the published apps workspace.

Turn on the experiment

  1. Open Settings.
  2. Open Experiments.
  3. Turn on Team workspaces.
  4. Make sure the GitHub CLI gh is installed. Fabricator uses it for team repositories.

The Experiments section of Settings, with a warning that experiments may change and the Team workspaces and Deploy manually switches.

Turning the experiment off hides team workspaces and team apps in Fabricator. It does not delete the GitHub repository, Fabric workspaces, apps, deploy identities, or local files.

Something wrong on this page?Edit this pageReport an issue with this page

Fabricator is a personal project by Sachin Patney. It is not a Microsoft product and is not affiliated with, endorsed by, sponsored by, or supported by Microsoft.

GitHubMIT LicenseReleasesYouTubeDocumented for Fabricator 1.20.1

On this page