Skip to content

Instantly share code, notes, and snippets.

View solangegueiros's full-sized avatar

Solange Gueiros solangegueiros

View GitHub Profile
{"id": "176fec6106fee59b1aef8dfe96cefd8c262c31905f51a48c1cb97fbff2f9ce0be0814b3836290fc278380c3ae9914ae3ab8ff966572a8eae811026971f58d657"}
### Keybase proof
I hereby claim:
* I am solangegueiros on github.
* I am solangegueiros (https://keybase.io/solangegueiros) on keybase.
* I have a public key ASAo2vViUw9JM2NMfcrVHU4_BM8bgeRbEU4isqJP4y6yVwo
To claim this, I am signing this object:
@solangegueiros
solangegueiros / Register.sol
Last active November 17, 2020 03:55
Solidity smart contract
pragma solidity 0.5.4;
contract Register {
string private info;
function getInfo() public view returns (string memory) {
return info;
}
function setInfo(string memory _info) public {
@solangegueiros
solangegueiros / Academy.sol
Created February 17, 2021 04:33
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.1+commit.df193b15.js&optimize=false&runs=200&gist=
pragma solidity 0.8.1;
import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/AccessControl.sol";
//Quem deveria acrescentar um projeto no portfolio é a Academy, e não o próprio estudante.
interface iName {
function owner() external returns (address);
function getName() external view returns (string memory);
}
@solangegueiros
solangegueiros / MasterCh2.sol
Last active January 21, 2022 17:17
Master for Challenge 2
// SPDX-License-Identifier: MIT
pragma solidity 0.8.7;
// Create a frontend with this interface for students submit their solutions
interface iMasterCh2 {
function solutions(uint256) external returns (address);
function ownerIndex(address) external returns (uint256);
function addSolution (address) external returns (bool);
}
@solangegueiros
solangegueiros / Raffle.sol
Created February 8, 2022 22:26
Chainlink VRF Raffle
// SPDX-License-Identifier: MIT
pragma solidity 0.8.7;
import "@chainlink/contracts/src/v0.8/VRFConsumerBase.sol";
contract Raffle is VRFConsumerBase {
bytes32 internal keyHash;
uint256 internal fee;
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;
import "@chainlink/contracts/src/v0.8/interfaces/VRFCoordinatorV2Interface.sol";
import "@chainlink/contracts/src/v0.8/VRFConsumerBaseV2.sol";
import "@chainlink/contracts/src/v0.8/ConfirmedOwner.sol";
contract VRFSenderTest is VRFConsumerBaseV2, ConfirmedOwner {
event RequestSent(uint256 requestId, uint32 numWords);
event RequestFulfilled(uint256 requestId, uint256[] randomWords);
// SPDX-License-Identifier: UNLICENSED
pragma solidity 0.8.19;
// Importing OpenZeppelin 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
// SPDX-License-Identifier: UNLICENSED
pragma solidity 0.8.19;
// Importing OpenZeppelin contracts
import "@openzeppelin/contracts@4.6.0/token/ERC721/extensions/ERC721URIStorage.sol";
import "@openzeppelin/contracts@4.6.0/utils/Counters.sol";
import "@openzeppelin/contracts@4.6.0/utils/Base64.sol";
// Importing Chainlink contracts
import "@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.sol";
@solangegueiros
solangegueiros / Client.sol
Last active December 9, 2023 13:13
ccip-cross-chain-nft-game
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
// End consumer library.
library Client {
struct EVMTokenAmount {
address token; // token address on the local chain.
uint256 amount; // Amount of tokens.
}