-
Notifications
You must be signed in to change notification settings - Fork 39
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
64 additions
and
27 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,15 @@ | ||
# create-svelte | ||
|
||
Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/main/packages/create-svelte). | ||
|
||
## Creating a project | ||
|
||
If you're seeing this, you've probably already done this step. Congrats! | ||
|
||
```bash | ||
# create a new project in the current directory | ||
npm create svelte@latest | ||
|
||
# create a new project in my-app | ||
npm create svelte@latest my-app | ||
``` | ||
# Ceremony Web App | ||
|
||
## Developing | ||
|
||
Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server: | ||
|
||
```bash | ||
npm run dev | ||
|
||
# or start the server and open the app in a new browser tab | ||
npm run dev -- --open | ||
nix run .#ceremony-dev-server | ||
``` | ||
|
||
## Building | ||
|
||
To create a production version of your app: | ||
To create a production version of the union ceremony app: | ||
|
||
```bash | ||
npm run build | ||
nix build .#ceremony | ||
``` | ||
|
||
You can preview the production build with `npm run preview`. | ||
|
||
> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -89,6 +89,7 @@ Halfnode | |
Hashable | ||
Hasher | ||
Hedgies | ||
Hetzner | ||
Hhvf | ||
Hyperlane | ||
IAVL | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
--- | ||
title: "Ceremony" | ||
--- | ||
|
||
Union's Ceremony has the following components: | ||
|
||
- Web app [ceremony.union.build](https://ceremony.union.build) | ||
- [MPC client](https://github.com/unionlabs/union/pkgs/container/union%2Fmpc-client), running in the terminal | ||
- The coordinator, managing the queue and aggregating uploads. | ||
|
||
We use [Nix](https://nixos.org) to create fully reproducible builds of all components and provide commands so that you can build them yourself. | ||
|
||
## Web App | ||
|
||
Deployed on [ceremony.union.build](https://ceremony.union.build), Handles auth and shows queue status. Also shows all contributions. | ||
|
||
You can build it locally like this: | ||
|
||
```sh | ||
GIT_LFS_SKIP_SMUDGE=true nix build github:unionlabs/union/release/ceremony#ceremony | ||
``` | ||
|
||
## MPC Client | ||
|
||
Image published [here](https://github.com/unionlabs/union/pkgs/container/union%2Fmpc-client), handles the generation of the contribution, generation of the gpg key, and signs/uploads the contributions. | ||
|
||
You can build it locally like this on a `x86_64-linux` machine: | ||
|
||
```sh | ||
GIT_LFS_SKIP_SMUDGE=true nix build github:unionlabs/union/bbfaa2f39d0183c2fd6c1d2505fad6c64ddb39e1#packages.x86_64-linux.mpc-client -L | ||
``` | ||
|
||
and load the image like this on a `x86_64-linux` machine:: | ||
|
||
```sh | ||
docker load -i ./result | ||
``` | ||
|
||
## MPC Coordinator | ||
|
||
The coordinator has two components: | ||
|
||
1. Postgres, managing the queue and contributions. Hosted by Supabase. | ||
3. The `mpc-coordinator` service, verifying incoming contributions. Hosted by Hetzner. | ||
|
||
|
||
You can see the database schema [here](https://github.com/unionlabs/union/blob/bbfaa2f39d0183c2fd6c1d2505fad6c64ddb39e1/mpc/coordinator/database.sql), and you can build the service locally like this on a `x86_64-linux` machine: | ||
|
||
```sh | ||
GIT_LFS_SKIP_SMUDGE=true nix build github:unionlabs/union/bbfaa2f39d0183c2fd6c1d2505fad6c64ddb39e1#packages.x86_64-linux.mpc-coordinator -L | ||
``` | ||
There are no trust assumptions on the database, as at the end of the ceremony all contributions will be published and verifiable by all. | ||
|
||
|
||
|