Skip to content

Easy way to preprocess Solidity files, allowing modification of smart contract code dynamically before deployment, improving flexibility in various use cases.

License

Notifications You must be signed in to change notification settings

andreas-timm/solidity-preprocessor

Repository files navigation

Solidity preprocessor

test

Motivation

Easy way to preprocess Solidity files, allowing modification of smart contract code dynamically before deployment, improving flexibility in various use cases.

Usage

// TestNft1155.sol
// SPDX-License-Identifier: UNLICENSED

pragma solidity ^0.8.25;

import {ERC1155} from "@openzeppelin/contracts/token/ERC1155/ERC1155.sol";

contract TestNft1155 is ERC1155 {
    constructor(string memory uri_) ERC1155(uri_) {
        _mint(address(0), 1, 100, "");
    }
}
import { preprocessor } from "@andreas-timm/solidity-preprocessor";

const res = await preprocessor({path: 'contracts/TestNft1155.sol', replace: [
  ['_mint(address(0), 1, 100, "")', '_mint(0x630C6C3180d3b4B6912644D046f6769dA3e54843, 1, 10000, "")']
]});

console.log(res.bytecode);

License

CC BY 4.0

This work is licensed under a Creative Commons Attribution 4.0 International License.

CC BY 4.0

About

Easy way to preprocess Solidity files, allowing modification of smart contract code dynamically before deployment, improving flexibility in various use cases.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published