Skip to content

Instantly share code, notes, and snippets.

View z0r0z's full-sized avatar
💭
codin qualia 🪄

ross z0r0z

💭
codin qualia 🪄
View GitHub Profile
@z0r0z
z0r0z / Subsidized.sol
Last active July 9, 2022 17:26
Subsidized transactions for smart contracts.
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.4;
import {SafeTransferLib} from "https://github.com/Rari-Capital/solmate/blob/main/src/utils/SafeTransferLib.sol";
/// @notice Subsidized transactions for smart contracts.
/// @author z0r0z.eth
abstract contract Subsidized {
using SafeTransferLib for address;
@z0r0z
z0r0z / MockERC1155votes.sol
Last active June 26, 2022 23:35
Compound-like voting extension for ERC1155.
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;
import "https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC1155.sol";
import "https://github.com/Rari-Capital/solmate/blob/main/src/utils/SafeCastLib.sol";
/// @notice Compound-like voting extension for ERC1155.
/// @author z0r0z.eth
abstract contract ERC1155votes is ERC1155 {
using SafeCastLib for uint256;
@z0r0z
z0r0z / TokenWarrant.sol
Created May 27, 2022 16:45
tokenizing agreement with hashes and payables
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;
import 'https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC1155.sol';
contract TokenWarrant is ERC1155 {
mapping(uint256 => string) public metas;
function uri(uint256 id) public override view returns (string memory) {
return metas[id];
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;
import "https://github.com/kalidao/multi-sig/blob/main/src/interfaces/IClubLoot.sol";
import "https://github.com/Rari-Capital/solmate/blob/v7/src/tokens/ERC1155.sol";
import "https://github.com/kalidao/multi-sig/blob/main/src/libraries/FixedPointMathLib.sol";
import "https://github.com/kalidao/multi-sig/blob/main/src/libraries/SafeTransferLib.sol";
/// @notice Ch.11 bankruptcy token
contract Bankruptcy is ERC1155 {
pragma solidity ^0.8.0;
contract Check {
function check0(address[] calldata stuff) external view returns (uint256) {
uint256 startGas = gasleft();
uint256 counter;
for (uint256 i; i< stuff.length; i++) {
counter++;
@z0r0z
z0r0z / CuriaPanel.sol
Created April 22, 2022 16:46
curia panel reputation / membership protocol
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;
/// @notice Minimalist and gas efficient standard ERC1155 implementation.
/// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC1155.sol)
abstract contract ERC1155 {
/*//////////////////////////////////////////////////////////////
EVENTS
//////////////////////////////////////////////////////////////*/
@z0r0z
z0r0z / AnyToken.sol
Created April 22, 2022 16:13
this is a general purpose way to tokenize things, anything, really
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;
/// @notice Minimalist and gas efficient standard ERC1155 implementation.
/// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC1155.sol)
abstract contract ERC1155 {
/*//////////////////////////////////////////////////////////////
EVENTS
//////////////////////////////////////////////////////////////*/
@z0r0z
z0r0z / RentNFT.sol
Created April 4, 2022 08:23
pay rent to keep right to hold an NFT
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;
import "https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC721.sol";
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/Ownable.sol";
import "https://github.com/Rari-Capital/solmate/blob/main/src/utils/SafeTransferLib.sol";
contract RentNFT is ERC721("RentNFT", "RENT"), Ownable {
using SafeTransferLib for address;
@z0r0z
z0r0z / LilSuperfluidNFT.sol
Created March 12, 2022 00:26
A simple token streaming manager represented by NFTs
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity ^0.8.10;
import 'https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC20.sol';
import 'https://github.com/Rari-Capital/solmate/blob/main/src/tokens/ERC721.sol';
/// @title lil superfluid nft
/// @author Miguel Piedrafita, Ross Campbell
/// modified from (https://github.com/m1guelpf/lil-web3/blob/main/src/LilSuperfluid.sol)
/// @notice A simple token streaming manager represented by NFTs
@z0r0z
z0r0z / AfterExpensesPaymentSplitter.sol
Created March 11, 2022 17:56
after expenses splitter
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (finance/PaymentSplitter.sol)
pragma solidity ^0.8.0;
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/utils/SafeERC20.sol";
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/Address.sol";
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/Context.sol";
/**