Go to file
Prathamesh Musale e88c6bbeac Update gasprice parsing to support denom $Z (#6)
Part of https://www.notion.so/zenithd-milestone-4-1d6a6b22d4728043b7e4dbf70c50aa56

Reviewed-on: #6
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
2025-06-24 07:26:30 +00:00
.github/workflows Use cache npm 2023-07-13 18:28:08 +02:00
components Update gasprice parsing to support denom $Z (#6) 2025-06-24 07:26:30 +00:00
context Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
docs update to reflect switch to addresses 2021-10-04 22:13:27 -04:00
graphql Add gqlClient and exports 2024-06-27 11:34:27 +02:00
lib Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
pages Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
proto Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
public/assets/icons Add wallet icons 2023-12-01 16:08:30 +01:00
scripts Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
src/proto Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
stack-orchestrator Update env for dgraph URL (#5) 2025-06-02 11:19:36 +00:00
styles Add new generated theme 2024-03-11 08:28:42 +01:00
types Update eslint config and plugins 2025-01-15 09:37:57 +01:00
utils Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
.env.sample Set Dgraph envvars 2024-02-08 13:19:22 +01:00
.env.test.sample Set Dgraph envvars 2024-02-08 13:19:22 +01:00
.gitignore Add .vscode to .gitignore 2024-04-03 13:58:06 +02:00
.npmrc Update gasprice parsing to support denom $Z (#6) 2025-06-24 07:26:30 +00:00
.prettierignore Ignore ui components for eslint and prettier 2023-10-03 13:03:27 +02:00
.prettierrc.json Add misc config files 2023-09-11 17:20:30 +02:00
components.json Add misc config files 2023-09-11 17:20:30 +02:00
db-schema.graphql Fix schema nullable 2024-06-27 11:31:33 +02:00
eslint.config.mjs Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
jest.config.mjs Configure jest 2023-05-02 14:45:18 +02:00
LICENSE.md Add license 2024-06-25 15:35:03 +02:00
next-env.d.ts Upgrade to CosmJS 0.33.0 2025-01-15 14:04:03 +01:00
next.config.js Add format command and format codebase 2023-12-19 14:54:26 +01:00
package-lock.json Update gasprice parsing to support denom $Z (#6) 2025-06-24 07:26:30 +00:00
package.json Update gasprice parsing to support denom $Z (#6) 2025-06-24 07:26:30 +00:00
postcss.config.js Add format command and format codebase 2023-12-19 14:54:26 +01:00
README.md Add support for zenith account (#4) 2025-06-04 09:43:21 +00:00
tailwind.config.js Add format command and format codebase 2023-12-19 14:54:26 +01:00
tsconfig.json Add misc config files 2023-09-11 17:20:30 +02:00

Cosmoshub Multisig App

This app allows for multisig users to create, sign and broadcast transactions on any stargate enabled chain. It's built with Cosmjs, Next.js, Dgraph and Vercel.

The app is live here.

Here is a user guide on how to use the app

Running your own instance

1. Clone project / setup Vercel deployment

This app uses Vercel for deployment and hosting, since they support next.js's serverless functions. You will need a vercel account to deploy this app. Use the button below to one-click clone and deploy this repo. The initial deployment will fail until all the necessary environment variables are input from the following steps.

Deploy with Vercel

2. Setup environment variables

In the Vercel control panel for your new app, go to Settings -> Environment Variables and add in the keys and values from this repo's .env.sample file. The only remaining variable should be the DGRAPH_SECRET, which will be available once you setup your DGraph instance.

3. Initializing DGraph

This app relies on DGraph as for storing account, transaction and signature details.

  • Create a DGraph account
  • Launch a new backend
  • Click the Develop -> Schema menu item, and past the contents of the db-schema.graphql file in the root of this repo
  • On the Develop -> Schema view, click the Access tab, and make sure Anonymous Access is OFF.
  • Click the Admin -> Settings menu item, and create a key. Copy that key into your vercel app's environment variables as the DGRAPH_SECRET value

As your instance of the app is used, you can return to the DGraph dashboard to view records for any accounts, transactions or signatures.

4. Successful Deployment

Redeploy the app and it will pickup the new environment variables and should be functioning normally.

Running Locally

1. Setup .env.local file

Copy the .env.sample file and rename it to .env.local

2. Run a local cosmos-sdk Simapp instance

It's recommended that you make your simapp instance mimic the denomination of cosmoshub-4 (uatom). Put the local address of your node as the value for NEXT_PUBLIC_NODE_ADDRESS in your .env.local file.

A more in depth tutorial on this is coming soon :)

3. Initializing DGraph

This app relies on DGraph as for storing account, transaction and signature details.

  • Create a DGraph account
  • Launch a new backend
  • Click the Develop -> Schema menu item, and past the contents of the db-schema.graphql file in the root of this repo
  • On the Develop -> Schema view, click the Access tab, and make sure Anonymous Access is OFF.
  • Click the Admin -> Settings menu item, and create a key. Copy that key into your vercel app's environment variables as the DGRAPH_SECRET value

As your instance of the app is used, you can return to the DGraph dashboard to view records for any accounts, transactions or signatures.

3. Run your instance

With the simapp process running, run these commands in another window:

// with node v12.5.0 or later
npm install
npm run dev

Protobuf

Prerequisite: protoc

Run following scripts when proto files are updated.

  • Install dependencies:

    yarn
    
  • Generate typescript bindings for the proto files:

    ./scripts/protocgen.sh