Skip to content

Instantly share code, notes, and snippets.

View rgottleber's full-sized avatar
💭
🤙

Richard Gottleber rgottleber

💭
🤙
View GitHub Profile
@rgottleber
rgottleber / 00 - About.md
Last active September 9, 2022 15:25
Resources for DEMOs - SmartCon 2022

Demo Files For SmartCon 2022

Sept 27, 2022

These Files will be updated for each talk. If you are looking for a past talk check the history.

Resources for live session from SmartCon Workshop

import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
contract EmojiGotchi is ERC721, ERC721URIStorage {
using Counters for Counters.Counter;
Counters.Counter private _tokenIdCounter;
constructor() ERC721("EmojiGotchi", "emg") {}
@rgottleber
rgottleber / CountingSVG.sol
Last active July 24, 2023 10:12
Code For Keepers Masterclass
// SPDX-License-Identifier: MIT
// An example of a consumer contract that relies on a subscription for funding.
pragma solidity ^0.8.17;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
import "@openzeppelin/contracts/utils/Counters.sol";
import "@openzeppelin/contracts/utils/Strings.sol";
import "@openzeppelin/contracts/utils/Base64.sol";
@rgottleber
rgottleber / DNFT.sol
Created November 1, 2022 17:23
SmartCon Demo NFT
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.7;
// Importing other contracts
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts/utils/Strings.sol";
import "@openzeppelin/contracts/utils/Base64.sol";
// Importing Chainlink contracts
@rgottleber
rgottleber / BloomsCollection.sol
Created April 10, 2025 18:52
April Bootcamp NFT
// SPDX-License-Identifier: MIT
// Compatible with OpenZeppelin Contracts ^5.0.0
pragma solidity ^0.8.22;
import {ERC721} from "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import {ERC721URIStorage} from "@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol";
import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";
contract BloomsCollection is ERC721, ERC721URIStorage, Ownable {
uint256 private _nextTokenId;
@rgottleber
rgottleber / remix-ccip.js
Created May 12, 2025 14:15
CCIP-JS SDK example for use in Remix
// Import necessary libraries
import * as CCIP from '@chainlink/ccip-js' // Chainlink CCIP library for cross-chain interactions
import { createWalletClient, custom} from 'viem' // Ethereum interaction library
import { sepolia } from 'viem/chains' // Testnet chain configurations
// Constants for the CCIP routers, tokens, and other parameters
// Router addresses are specific to each network
// See https://docs.chain.link/ccip/directory/ for more details
const sepoliaRouterAddress = '0x0BF3dE8c5D3e8A2B34D2BEeB17ABfCeBaf363A59' // Sepolia network router