SpringRoll reference

How to share a vibe-coded app with your team (without a public link)

Share an app through a launch path that checks who the visitor is, rather than circulating an unrestricted URL. A useful handoff includes the owner, intended environment and a verified audience. Include the security guide's deployment-origin checks before serving company data.

Product workflowInstall, authorize, deploy, verify
  1. 01 · SetupInstall the skill

    Use the setup command in Docs with your coding agent.

  2. 02 · WorkspaceAuthorize the first live call

    Sign in and choose the workspace. There is no token to paste.

  3. 03 · PublishAsk the agent to deploy

    SpringRoll records the app and release, then starts the deployment.

  4. 04 · Verify and shareCheck the build result

    After READY, open the app and share the intended environment link.

A deployment result is the handoff record. Opening the app checks that the result actually works.

How do you share a vibe-coded app with coworkers securely?

Deploy a working release, name its owner and choose the people who may launch the intended environment. Share the SpringRoll app link, then test it with an allowed colleague and a separate denied account. Protect the direct provider URL independently, because portal access checks govern the SpringRoll launch path rather than every possible origin request.

Begin with the task a colleague will perform. A dashboard containing only fictional records can be useful for testing the handoff before an app receives company data. A real request queue or customer-facing workflow needs shared persistence, server-side permissions and reviewed data access. A generated page that works on the builder's machine does not establish any of those conditions.

Compare three ways to share

Choose an access model deliberately. The trade-off is not whether a link is long or difficult to guess; it is what checks a request before returning the app and its data. A password can be useful for a limited demonstration, but a shared secret does not identify each colleague. An authenticated launch path gives you a place to define an audience, while the running app still needs its own authorization rules.

Scroll sideways to see all columns. With the table focused, use the arrow keys.

Sharing models and the boundary each one controls.
Sharing methodWhat the visitor needsWhat to verify
Public URLThe URL, unless the application adds authenticationWhether the app or its data is available to an unknown visitor
Password-protected linkThe shared password and URLHow the password is distributed, changed and prevented from bypassing other controls
Access-checked portalAn identity allowed to launch that app environmentThe portal audience, in-app permissions and independent direct-origin protection

Before sharing: inspect data, secrets and ownership

Search the source and built assets for hard-coded records, access keys and private endpoints. A browser receives the JavaScript and data served to it, even if a screen hides a panel. Remove company information that was copied into a fixture. Move privileged operations behind an appropriate server boundary and rotate any secret that has already been exposed. Deleting a value from the latest commit does not revoke the old value.

Name an App Owner and support contact who can answer a colleague's next question. Preserve the source and the build settings so another maintainer can reproduce the release. Check whether the app saves only to local browser storage or to a shared service. A local example can demonstrate a review interaction without providing a multi-user approval system; add the missing production behaviour before using it for business decisions.

Agree what data the app needs. An employee's access to a company system is not an automatic grant for every app the employee builds. For SpringRoll Connect, review the intended application environment, fields or native operations, row restrictions, limits and expiry. Test what the screen does when access is missing rather than presenting an empty result as an authoritative answer.

Step 1: verify the deployed release

Wait for the actual deployment to reach READY, then open the working app outside the development server. Complete its core task with a known fictional record and compare the result with the expected outcome. Inspect a narrow screen, an empty state and a failed request. Keep the release, deployment and environment together in the verification record.

If the latest attempt failed, fix its build or configuration error before sharing that attempt. The current working version and the latest deployment are different facts. A coding agent reporting that it submitted a request is not evidence that the app is live. Keep the owner involved when the intended behaviour changes during the fix, rather than silently handing over a different workflow.

Step 3: distinguish Test from Production

A staged app uses different environments for review and daily work. Share Test for the review task and Production for the approved everyday task, and label the link accordingly. Check that the test environment uses suitable data and that a reviewer knows which release they are assessing. Do not infer that a link is a preview solely because the app was created recently.

Direct to Production is the default SpringRoll workflow. A Tenant Admin can configure Staged when releases must pass Development, UAT and Production review. That release workflow is separate from who may launch an environment and from the business decisions made inside the app. A purchase request app still needs its own server-side rule for who may approve a purchase.

Step 4: test an allowed and a denied identity

Use two distinct accounts. The intended colleague should discover and launch the correct app environment, perform the permitted task and see only the information needed for that task. The account outside the audience should fail to launch through SpringRoll and receive the appropriate access-request experience. Record the expected and observed result for both identities without copying credentials into the record.

Continue the test inside the running application. Try a business operation the user should not perform, including a direct request to its server endpoint where applicable. Hiding an approval button in the browser is not server-side enforcement. For connected data, verify denied and revoked access as well as a successful query. These checks answer different questions from whether the portal link opens.

Check the direct provider hostname separately

Follow the security guide's origin-access review with a fresh session and a denied identity. Check every relevant deployment URL, not only the custom domain sent to colleagues. Record which control protects each route and who maintains its configuration.

Vercel documents protection methods and scopes for deployment URLs. Cloudflare Access documents policies for self-hosted applications and origin validation. Reviewed 31 October 2026: inspect the current configuration and entitlements for your project, then record which URLs the selected policy covers.

Frequently asked questions

Is a Vercel preview private?

Check its actual Deployment Protection method and scope. A preview URL's name or unpredictability is not proof of access control. Test the relevant URL as an unknown visitor and a denied identity.

How do I revoke access?

Update the portal audience or membership through the appropriate workflow, review the application's data grants, and separately revoke any origin or application access. Verify the result with the affected identity.

Does sharing an introduction page change the running app's audience?

No. A public app introduction and permission to launch the running environment are separate decisions. Verify the running app's audience and direct access path.