Hand over software the way you hand over a document.
SoftBox turns an app you built with AI into managed software you can give to 2–20 people. It supplies the parts that normally block that handover: sign-in, workspaces, a database and file storage, HTTPS on a real address, versions with rollback, and a page that tells recipients exactly what the app can do before they open it.
What the builder writes on the box
softbox.yaml
name: Team Notes version: 1.0.0 description: Shared team notes. workspace: mode: shared-team data: database: true files: true network: allow: - example.com
The recipient reads the box before they open it.
Everyone who accepts a link lands on a trust page first. It names the publisher, the workspace they will land in, what the app stores, and every outside service it can reach — spelled out, not as a checkbox. That summary is generated from the manifest above and is the same list the server enforces, so it cannot drift from what the app actually gets.
-
Everyone here shares one set of notesThe workspace is
shared-team, so what you write, the others see. -
It stores the notes you writeRecords and uploaded files, kept for this workspace only.
-
It can reach one outside serviceRequests go to
example.comand nowhere else. -
It never gets your sign-inSoftBox signs you in and passes the app a session it cannot read or reuse.
-
An update that asks for more has to ask againA new version wanting a new service shows the difference and waits — your copy keeps running on the old terms until you say yes.
The first three come off this app’s own manifest. The last two are the platform’s, and hold for every app on it.
What the app may ask for
Read data, write data, keep files, reach a named service. Fixed at publish time by the manifest, identical for everyone who installs it.
What you may do
Owner, editor, or viewer inside your workspace. Set by the people you share with, and changeable without republishing anything.
Both are checked on every write, and neither stands in for the other. A viewer cannot write, even inside an app that was allowed to.
Inside, the app is never holding the keys.
The usual way to ship a generated app is to hand it a database connection and trust its own code to guard the door. SoftBox does the opposite. The app gets no connection string, and it never tells the server who is asking or whose data to return — it cannot, because it is never given those values. The server works out who signed in, which copy of the app they opened, and which workspace that resolves to, and every read and write carries that answer with it.
Which means the separation between one group's data and another's does not depend on the app's code being right.
Apps on SoftBox are frontends that talk to the platform. Uploaded code does not run on our servers.
Launching soon.
SoftBox is being built now. There is nothing to sign up for yet.