This is the clone-to-deploy path for the open-source Kysigned repo. It uses the
first-class run402.json app manifest in this repository.
- Node 20 or newer.
- Run402 CLI 3.7.14 or newer:
npx run402 --version. - A Run402 wallet/profile that can create projects.
run402 initsets this up.
Clone the repo:
git clone https://github.com/kychee-com/kysigned.git
cd kysignedRun up with the only user-supplied secret Kysigned requires:
KYSIGNED_ALLOWED_CREATORS='you@example.com,*@example.org' \
run402 up --name my-kysignedKYSIGNED_ALLOWED_CREATORS is a comma-list of exact creator emails and
exact-domain wildcards. *@example.org allows alice@example.org; it does not
allow alice@team.example.org.
When the command succeeds, your app is live at:
https://my-kysigned.run402.com
The managed mailbox addresses use the project mail host:
forward-to-sign@my-kysigned.mail.run402.com
notifications@my-kysigned.mail.run402.com
- Creates or links a Run402 project named from
--name. - Creates the
forward-to-signandnotificationsmailboxes. - Sets generated runtime bindings for project id, origin, service key, anon key, API base, mailbox ids, and mailbox addresses.
- Runs the local build commands declared in
run402.json. - Applies the database migrations, static site, routed API function, email triggers, subdomain, and route table.
- Verifies
/,/v1/health,/faq.html,/pricing.html, and/how-it-works. - Records app install state as
applyingand thenactive.
After deploy:
curl -i https://my-kysigned.run402.com/
curl -i https://my-kysigned.run402.com/v1/health
curl -i https://my-kysigned.run402.com/faq.html
curl -i https://my-kysigned.run402.com/pricing.htmlThen open the site, sign in with an allowed creator email, create an envelope,
and send it to an email address you control. The signer should forward the
request email to the generated forward-to-sign@...mail.run402.com address.
Use a different project name:
KYSIGNED_ALLOWED_CREATORS='owner@example.com' run402 up --name contract-demoAllow a whole exact domain:
KYSIGNED_ALLOWED_CREATORS='*@example.com' run402 up --name example-signRe-deploy the linked workspace:
KYSIGNED_ALLOWED_CREATORS='*@example.com' run402 up --yes--max-spend-usdis optional. Prototype-tier experimentation can use the default Run402 flow.--nameis required for a fresh clone so Run402 can create a friendly project and web origin. Re-deploys can use the.run402/project.jsonworkspace link.- Secret values stay outside
run402.json. The manifest declares what is required; generated bindings and local environment values provide the values. - Custom sender domains are a later step. The zero-DNS path uses the managed project mail host.