https://github.com/solidstate-network/hardhat-linearization
Derive C3 linearization of Solidity contracts 📐
https://github.com/solidstate-network/hardhat-linearization
c3 eth ether ethereum hardhat inheritance linearization plugin solidity wow
Last synced: 4 months ago
JSON representation
Derive C3 linearization of Solidity contracts 📐
- Host: GitHub
- URL: https://github.com/solidstate-network/hardhat-linearization
- Owner: solidstate-network
- License: mit
- Created: 2025-07-14T15:44:55.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2025-08-11T18:26:33.000Z (6 months ago)
- Last Synced: 2025-08-11T20:28:14.690Z (6 months ago)
- Topics: c3, eth, ether, ethereum, hardhat, inheritance, linearization, plugin, solidity, wow
- Language: TypeScript
- Homepage:
- Size: 255 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Hardhat Linearization
Inspect Solidity smart contract inheritance linearization.
> This is a fork of a [Hardhat 2.0 plugin](https://github.com/frangio/hardhat-linearization) by [frangio](https://github.com/frangio).
## Installation
```bash
npm install --save-dev @solidstate/hardhat-linearization
# or
pnpm add -D @solidstate/hardhat-linearization
```
## Usage
Load plugin in Hardhat config:
```javascript
import hardhatLinearization from '@solidstate/hardhat-linearization';
const config: HardhatUserConfig = {
plugins: [
hardhatLinearization,
],
};
```
Run the task:
```bash
# use just the contract name if it's unique
hardhat linearization Contract
# use the fully qualified name if it's ambiguous
hardhat linearization contracts/File.sol:Contract
```
## Development
Install dependencies via pnpm:
```bash
pnpm install
```
Setup Husky to format code on commit:
```bash
pnpm prepare
```