Skip to content

Instantly share code, notes, and snippets.

View korrio's full-sized avatar
👽

kOrriO korrio

👽
View GitHub Profile
@korrio
korrio / ipfsPublish.js
Created July 5, 2022 08:54
ipfsPublish.js
const fetch = require("node-fetch");
async function ipfsPublish(fileName, data) {
const buffer = await Buffer.from(data);
return new Promise((resolve, reject) => {
fetch("https://ipfs.kleros.io/add", {
method: "POST",
body: JSON.stringify({
fileName,
@korrio
korrio / ACL.sol
Created May 26, 2022 05:01
ACL.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
contract MyToken is ERC721, Ownable {
mapping(address => bool) public minters;
@korrio
korrio / BAYC.sol
Created May 26, 2022 03:57
BAYC.sol
/**
*Submitted for verification at Etherscan.io on 2021-04-22
*/
// File: @openzeppelin/contracts/utils/Context.sol
// SPDX-License-Identifier: MIT
pragma solidity >=0.6.0 <0.8.0;
@korrio
korrio / SimpleBankWithCDGToken.sol
Created May 26, 2022 03:30
SimpleBankWithCDGToken.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.6.0;
library SafeMath {
/**
* @dev Returns the addition of two unsigned integers, reverting on
* overflow.
*
* Counterpart to Solidity's `+` operator.
@korrio
korrio / SimpleBankWithERC20.sol
Created May 26, 2022 02:38
SimpleBankWithERC20.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.6.0;
/**
* @dev Interface of the ERC20 standard as defined in the EIP.
*/
interface IERC20 {
/**
* @dev Returns the amount of tokens in existence.
@korrio
korrio / YourContract.sol
Last active May 25, 2022 04:30
YourContract.sol
pragma solidity >=0.8.0 <0.9.0;
//SPDX-License-Identifier: MIT
import "hardhat/console.sol";
// import "@openzeppelin/contracts/access/Ownable.sol";
// https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/Ownable.sol
contract YourContract {
event SetPurpose(address sender, string purpose);
@korrio
korrio / LendingV2.sol
Created April 6, 2022 02:35
LendingV2.sol
// SPDX-License-Identifier: MIT
interface IMyRouterInterface { // UniswapV2Interface
function swapExactTokensForTokens(
uint amountIn,
uint amountOutMin,
address[] calldata path,
address to,
uint deadline
) external returns (uint[] memory amounts);
@korrio
korrio / Lending.sol
Last active April 5, 2022 12:02
Lending.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.11;
library Address {
/**
* @dev Returns true if `account` is a contract.
*
* [IMPORTANT]
* ====
@korrio
korrio / GameConsumer.sol
Created April 3, 2022 03:41
GameConsumer.sol
// SPDX-License-Identifier: MIT
// An example of a consumer contract that relies on a subscription for funding.
pragma solidity ^0.8.7;
import "@chainlink/contracts/src/v0.8/interfaces/LinkTokenInterface.sol";
import "@chainlink/contracts/src/v0.8/interfaces/VRFCoordinatorV2Interface.sol";
import "@chainlink/contracts/src/v0.8/VRFConsumerBaseV2.sol";
library SafeMath {
/**
@korrio
korrio / WavePortalWIthERC20.sol
Created April 1, 2022 08:54
WavePortalWIthERC20.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
// import 'hardhat/console.sol';
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract WavePortal is Ownable {