The @pennsif.witness team are now open sourcing our Steem Multisig Wizard.
Background
We developed this tool in 2023 in order to provide a robust and easy way for Steem communities and ad hoc groups of Steem users to manage multisig accounts.
For more info, see the following posts:
- Dev announcement
- Dev blog 1
- Dev blog 2
- Launch announcement
- Post-launch update 1
- Post-launch update 2
Today, we have published the entire source code publicly.
The Codebase
The codebase is split amongst backend and frontend repositories, which you can find here:
Backend: https://github.com/rexthetech/steem-multisig-backend
Frontend: https://github.com/rexthetech/steem-multisig
Note that this release is for the benefit of fellow Steem developers, and our public instance of the Steem Multisig Wizard remains available for all to use for free.
Running the Backend
First, clone https://github.com/rexthetech/steem-multisig-backend.
You'll need a MySQL (or MariaDB) instance, and a DB account for the Multisig Wizard to use.
Create the database by running the SQL found in db-schema.sql. Then, add your DB access details to config.js.
While in config.js, you should also set clientUrl to the address where you'll serve the frontend. This is required so that client requests are permitted by the server's CORS policy.
The default Steem API endpoint of https://api.pennsif.net will work fine, you don't need to change it.
By default, the on-chain notification system is disabled, but can be enabled by setting notificationEnabled to true and providing the account name and posting key for the Steem user you wish to publish notifications as.
With Node and NPM installed, install the dependencies by running:
npm install
You can start the server by running:
node server.js
The server should come up and start listening on port 4000 for client connections.
Running the Frontend
Clone https://github.com/rexthetech/steem-multisig.
Edit source/config.json and set MULTISIG_API_LOCAL to your backend instance. STEEM_API_URL can be left set to the default.
As for the backend, install dependencies with:
npm install
Bring up the frontend by running:
npm run dev
Alternatively, to package for release, run:
npm run build
In the case of packaging for release, MULTISIG_API_URL will be used instead of MULTISIG_API_LOCAL, so ensure this is set to a publicly-available instance of the backend.
Contributing to the code
We are happy to review Issues and Pull Requests on these repos via GitHub.
Please support our work
The Multisig Wizard is completely free to use, and the @pennsif.witness team provides infrastructure and development to run the main public instance of the Wizard at their own cost, as well as now providing all source code 😎
We would really appreciate you casting a witness vote for @pennsif.witness.
To cast your witness vote, visit the Steemit Wallet Witness Voting list or @steemchiller's Steemworld
Thank you for this @rexthetech.
Good to be Open Source 😀
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
That's great news and a big step in the right direction! As I'm currently developing the automated multisig logic for the upcoming DAO proposal regarding burning STEEM with DAO funds, this might also be interesting for me in case I should see any problems coming up with my own solution.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Hi @steemchiller, do hit us up if we can help at all with developing your burning system. @pennsif has been keeping me updated.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
This is great! We will be more apps that use the multi-sig feature. My apps will do, too. Thanks a lot.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Thank you, friend!
I'm @steem.history, who is steem witness.
Thank you for witnessvoting for me.
please click it!
(Go to https://steemit.com/~witnesses and type fbslo at the bottom of the page)
The weight is reduced because of the lack of Voting Power. If you vote for me as a witness, you can get my little vote.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Hey bro I am jannatul islam sejutee and this is my brothers steemit account. When I was browsing steemit then I have find you post. I really become wonder after reading your post.Thank you so much bro for sharing this informative article with us.
I support you. Continue
Hope to have better things from you in the future
I am new at steemit please support me all
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit