redprint-forge
Advanced tools
Comparing version 0.3.3 to 0.3.4
{ | ||
"name": "redprint-forge", | ||
"description": "A developer-friendly framework/library in solidity to modify & deploy OPStack ’s contracts in a modular style.", | ||
"version": "0.3.3", | ||
"homepage": "https://github.com/Ratimon/redprint-forg#readme", | ||
"version": "0.3.4", | ||
"homepage": "https://github.com/Ratimon/redprint-forge#readme", | ||
"keywords": [ | ||
@@ -25,2 +25,6 @@ "blockchain", | ||
"repository": "github:Ratimon/redprint-forge", | ||
"author": { | ||
"name": "Rati Montreewat", | ||
"url": "https://github.com/Ratimon/redprint-forge" | ||
}, | ||
"scripts": { | ||
@@ -35,6 +39,2 @@ "---------------------- USER WORKFLOW ----------------------": "", | ||
}, | ||
"author": { | ||
"name": "Rati Montreewat", | ||
"url": "https://github.com/Ratimon/redprint-forge" | ||
}, | ||
"devDependencies": { | ||
@@ -41,0 +41,0 @@ "@openzeppelin/contracts": "v4.9.4", |
<h1>Keep Optimistic and be OPStack deployer!! </h1> | ||
- [Installation](#installation) | ||
- [What is it for](#what-is-it-for) | ||
@@ -16,4 +15,24 @@ - [Quickstart](#quickstart) | ||
## Installation | ||
## What Is It For | ||
One of our Swiss army knife toolset: **redprint-forge** is a developer-friendly framework/library in solidity to modify & deploy OPStack ’s contracts in a modular style. | ||
The features include: | ||
- Type-safe smart contract deployment | ||
- Re-usable smart contract deployment and testing pipeline | ||
- Standardized framework, minimizing developer mistake and enhancing better security | ||
- All-Solidity-based so no context switching, no new scripting syntax in other languages | ||
- Tx Management via Safe Smart Contract Deploy Script | ||
Together with [`Redprint Wizard UI`](https://github.com/Ratimon/redprint-wizard), which is a code generator/ interactive playground oriented for OPStack development, it does not only help novice developers to deploy OPStack's smart contracts to deploy on OP mainnet, but also help them to use generated deployment script in their own projects. | ||
## Quickstart | ||
### Quick Guide | ||
1. Fork `optimism` 's monorepo: | ||
@@ -35,3 +54,3 @@ | ||
```bash | ||
cd ethereum-optimism/packages/contracts-bedrock | ||
cd optimism/packages/contracts-bedrock | ||
``` | ||
@@ -51,3 +70,3 @@ | ||
4. Modify OPStack 's [remapping](https://github.com/ethereum-optimism/optimism/blob/v1.9.4/packages/contracts-bedrock/foundry.toml) as following | ||
4. Modify OPStack 's [remapping](https://github.com/ethereum-optimism/optimism/blob/v1.9.4/packages/contracts-bedrock/foundry.toml) as following: | ||
@@ -78,2 +97,3 @@ ```diff | ||
+ '@redprint-deploy/=node_modules/redprint-forge/script', | ||
+ '@scripts/=scripts/', | ||
+ '@redprint-test/=node_modules/redprint-forge/test/', | ||
@@ -94,3 +114,3 @@ + '@redprint-forge-std/=lib/forge-std/src', | ||
5. Copy [`.env`](./.env) and modify as following. | ||
5. Copy `.env` and modify as following. | ||
@@ -130,5 +150,6 @@ ```sh | ||
``` | ||
Copy a test suite: | ||
Now, copy a test suite: | ||
``` | ||
cp node_modules/redprint-forge/test/example/DeployAll.t.sol test/ | ||
cp node_modules/redprint-forge/test/DeployAll.t.sol test/ | ||
``` | ||
@@ -138,5 +159,8 @@ | ||
This will take a while to compile: | ||
``` | ||
forge b | ||
``` | ||
Then run a test command against a copied set of deploy scripts: | ||
``` | ||
@@ -146,24 +170,34 @@ forge test -vvvv --match-path test/DeployAll.t.sol | ||
>[!NOTE] | ||
>Behind the scene, the test suite works by replicating the same environment as production script, because it utilizes the samr deployment logic script inside `setUp()` as following: | ||
## What Is It For | ||
```ts | ||
One of our Swiss army knife toolset: **redprint-forge** is a developer-friendly framework/library in solidity to modify & deploy OPStack ’s contracts in a modular style. | ||
/** ... */ | ||
The features include: | ||
// deployment logic | ||
import {DeployAllScript} from "@scripts/000_DeployAll.s.sol"; | ||
- Type-safe smart contract deployment | ||
contract DeployAll_Test is Test { | ||
- Re-usable smart contract deployment and testing pipeline | ||
/** ... */ | ||
- Standardized framework, minimizing developer mistake and enhancing better security | ||
function setUp() external { | ||
- All-Solidity-based so no context switching, no new scripting syntax in other languages | ||
/** ... */ | ||
- Tx Management via Safe Smart Contract Deploy Script | ||
deployerProcedue = getDeployer(); | ||
deployerProcedue.setAutoBroadcast(false); | ||
Together with [`Redprint Wizard UI`](https://github.com/Ratimon/redprint-wizard), which is a code generator/ interactive playground oriented for OPStack development, it does not only help novice developers to deploy OPStack's smart contracts to deploy on OP mainnet, but also help them to use generated deployment script in their own projects. | ||
DeployAllScript allDeployments = new DeployAllScript(); | ||
allDeployments.run(); | ||
deployerProcedue.deactivatePrank(); | ||
## Quickstart | ||
} | ||
/** ... */ | ||
} | ||
``` | ||
### Tx Management Via Safe-Multisig | ||
@@ -170,0 +204,0 @@ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
942307
1
295
1