Vectorized / solady
git clone https://github.com/Vectorized/solady.git
v0.1.26 · 1y ago
🔥 on GitHub Trending today
Optimized Solidity snippets.
+0
stars, 24h · #591
+1
stars, 7 days · #1,635
+11
stars, 30 days · #9,990
3.4k
★ total · +0% this week
494
forks · 46 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageSolidity
LicenseMIT
Created2022-07-16 (4y ago)
Last pushtoday
Watchers39
OwnerUser
Seen on GitHub Trending
- 2026-10-20 — #6 daily in solidity
- 2026-10-20 — #6 monthly in solidity · +11 ★
- 2026-10-20 — #6 weekly in solidity · +1 ★
GitHub topics
Links
README excerpt
# [![NPM][npm-shield]][npm-url] [![CI][ci-shield]][ci-url] [![Solidity][solidity-shield]][solidity-ci-url] [![Docs][docs-shield]][docs-url] Gas optimized Solidity snippets. I'm sooooooOooooooooOoooOoooooooooooooooo... ## Installation To install with **Foundry**: [code] To install with **Hardhat**: [code] ## Documentation https://vectorized.github.io/solady ## Contracts The Solidity smart contracts are located in the `src` directory. [code] ## Directories [code] ## Contributing This repository serves as a laboratory for cutting edge snippets that may be merged into Solmate. Feel free to make a pull request. Do refer to the contribution guidelines for more details. ## Safety This is **experimental software** and is provided on an "as is" and "as available" basis. We **do not give any warranties** and **will not be liable for any loss** incurred through any use of this codebase. While Solady has been heavily tested, there may be parts that may exhibit unexpected emergent behavior when used with other code, or may break in future Solidity versions. Please always include your own thorough tests when using Solady to make sure it works correctly with your code. ## Upgradability Most contracts in Solady are compatible with both upgradeable and non-upgradeable (i.e. regular) contracts. Please call any required internal initialization methods accordingly. ## EVM Compatibility Some parts of Solady may not be compatible with chains with partial EVM equivalence. Please always check and test for compatibility accordingly. If you are deploying on ZKsync stack (e.g. Abstract) with partial EVM equivalence: - Run `node prep/zksync-compat-analysis.js` to scan the files. - For files that have incompatibilities (i.e. non-zero scores), look into the `ext/zksync` directories for substitutes. The substitutes may only have a subset of the original features. If there is no substitute, it means that the file is incompatible and infeasible to be implemented for ZKsync. ## Acknowledgements This repository is inspired by or directly modified from many sources, primarily: - Solmate - OpenZeppelin - ERC721A - Zolidity - 🐍 Snekmate - Femplate [npm-shield]: https://img.shields.io/npm/v/solady.svg [npm-url]: https://www.npmjs.com/package/solady [ci-shield]: https://img.shields.io/github/actions/workflow/status/vectorized/solady/ci.yml?branch=main&label=build [ci-url]: https://github.com/vectorized/solady/actions/workflows/ci.yml [solidity-shield]: https://img.shields.io/badge/solidity-%3E=0.8.4%20%3C=0.8.30-aa6746 [solidity-ci-url]: https://github.com/Vectorized/solady/actions/workflows/ci-all-via-ir.yml [docs-shield]: https://img.shields.io/badge/docs-%F0%9F%93%84-blue [docs-url]: https://vectorized.github.io/solady