Skip to content

capsule-corp-ternoa/Safe-Setup-Wizard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ternoa Safe Setup Wizard 🔐

A command-line tool for easily deploying and managing multi-signature wallets (Safe) on the Ternoa zkEVM network.

Features

  • 🚀 Interactive CLI wizard
  • 👥 Create multiple owner wallets
  • 🔒 Configure signature threshold
  • ⚡ Deploy Safe contracts
  • 🔍 Comprehensive deployment summary
  • 🌈 Color-coded output for better readability

Prerequisites

  • Node.js v18 or higher
  • npm v7 or higher
  • Some CAPS tokens for deployment

Installation

  1. Clone the repository:
git clone https://github.com/your-username/ternoa-safe-setup.git
cd ternoa-safe-setup
  1. Install dependencies:
npm install --legacy-peer-deps

Usage

Run the setup wizard:

npm run setup

The wizard will guide you through:

  1. Choosing the number of owner wallets (1-10)
  2. Setting the required number of signatures (threshold)
  3. Generating wallet addresses and private keys
  4. Deploying the Safe contract

Contract Addresses

The following contracts are used on Ternoa zkEVM:

  • Safe Singleton: 0x7bAd89D2270cEFa698834b7c6E7532eFA6546e42
  • Safe Proxy Factory: 0x7C982d79d9B14500F1d1C114BB3779028B935d28
  • MultiSend: 0xF6DCd634ABA8e0Ec891C3A6C2e240001F2cdF83c
  • MultiSendCallOnly: 0x628c91FF2A8A99C767E09A84c21f62c9b423CC95
  • Fallback Handler: 0xdC856ED68Dfb09129e7b1Ea393098b487ddf3047
  • Sign Message Lib: 0x677Aa661BD551Af5c563A40176Cd9E25c9394fa6

Development

Project Structure

ternoa-safe-setup/
├── scripts/
│   └── setup.js       # Main CLI wizard
├── test/
│   ├── deploySafe.test.js  # Deployment tests
│   └── safeTx.test.js      # Transaction tests
├── package.json
├── LICENSE
└── README.md

Running Tests

npm test

Available Scripts

  • npm run setup - Run the Safe setup wizard
  • npm test - Run all tests

Security

⚠️ Important Security Notes:

  1. Private Keys: Store generated private keys securely. They cannot be recovered if lost.
  2. Funding: Only send CAPS to generated addresses after verifying their correctness.
  3. Threshold: Choose a threshold that balances security with practicality.

Network Information

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Support

For support, please open an issue in the GitHub repository or reach out to the Ternoa community.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published