npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

catapulta

v0.3.18

Published

Catapulta CLI deployment tool for Foundry and Hardhat, check https://catapulta.sh to know more.

Downloads

295

Readme

Catapulta CLI

The Catapulta CLI is a multi-chain deployment tool for Foundry and Hardhat, which allows you to deploy smart contracts, automatically verify and generate deployment reports in +10 networks, without the need to maintain RPC urls or block explorer API keys in your Foundry/Hardhat config.

Catapulta is a smart contracts deployment platform for teams, to ensure the best Chain Ops practices via automation to keep your deployments organized.

Check below for quick documentations for:

  • Foundry
  • Hardhat Deploy

Requirements

For using Catapulta, you need:

  • Node.js 18
  • Sign up with Github at Catapulta.sh, to obtain a free API key.
  • Paste your CATAPULTA_API_KEY in your .env file in your repository, or in your.bashrc or your .zshrc file.

Install

You can install catapulta CLI globally via NPM:

npm i -g catapulta

Can also be installed locally in your Foundry or Hardhat project, if you use Node.js

npm i --save-dev catapulta

# Execute with npx at your package.json scripts
npx catapulta -v

Foundry: Getting started

To be able to deploy your Foundry scripts using Catapulta, you need to specify the Foundry Script path and the network to perform the deployment:

  npx catapulta script scripts/Deploy.s.sol --network sepolia

Multi-chain deployment

You can also perform multi-chain deployments in a single run, adding a list of networks separated by comma at the --network param.

  npx catapulta script scripts/Deploy.s.sol --networks sepolia,avalancheFuji,maticMumbai

Simulations

If you only want to perform a fork simulation of your script, add --simulate flag.

  npx catapulta script scripts/Deploy.s.sol --network sepolia --simulate

You can also pass the --simulate-block-number param to set the fork block height:

  npx catapulta script scripts/Deploy.s.sol --network sepolia --simulate

Verbose or debug mode

To view the deployment traces, add -vv or -vvvv verbose flag in the catapulta command, in your simulation or broadcast deployment.

  npx catapulta script scripts/Deploy.s.sol --network sepolia --simulate -vvvv
  npx catapulta script scripts/Deploy.s.sol --network sepolia -vvvv

Keep in mind that verbose mode removes the concurrency mode, making multi-chain deployments slower.

Pass extra params to forge script

You can pass any extra forge script params at the end of the command, like --with-gas-price.

  npx catapulta script scripts/Ghost.s.sol --network sepolia --with-gas-price 10000000000

Help

If you want to see full documentation, you can run:

npx catapulta --help

To remove the need to pass --api-key in every command, add CATAPULTA_API_KEY environment variable in your .env file.

Hardhat: Getting Started

If you use Hardhat Deploy, you may need to install and import the Catapulta plugin in your hardhat.config.ts file.

npm i --save-dev catapulta

Them proceed to import the Catapulta plugin in your hardhat.config.ts file:

// hardhat.config.ts
// Include the Catapulta Hardhat plugin at the top of your config

import 'catapulta/hardhat';

Run your Hardhat deploy scripts using Catapulta CLI. You can pass any extra parameter needed for hardhat deploy.

npx catapulta deploy --network sepolia --api-key <your-api-key>