From efd212b484f74d38a135313f3849dec640bd4e9e Mon Sep 17 00:00:00 2001 From: fedev Date: Tue, 10 Sep 2024 20:59:02 -0300 Subject: [PATCH 1/4] feat: fedev personal page --- .../page.tsx | 48 +++ .../nextjs/contracts/deployedContracts.ts | 292 +++++++++++++++++- 2 files changed, 339 insertions(+), 1 deletion(-) create mode 100644 packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx diff --git a/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx b/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx new file mode 100644 index 0000000..ede409d --- /dev/null +++ b/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx @@ -0,0 +1,48 @@ +import Link from "next/link"; +import type { NextPage } from "next"; +import { getMetadata } from "~~/utils/scaffold-eth/getMetadata"; + +export const metadata = getMetadata({ + title: "Fedev", + description: "A software developer from Argentina 🇦🇷", +}); + +const FedevPage: NextPage = () => { + return ( +
+
+

Hi! I'm Fedev 👋

+

A software developer from Argentina 🇦🇷.

+
+ +
+

+ I graduated as a systems analyst and for the past 3 years, I've been exploring, learning, and actively + contributing to the Web3 space. I'm passionate about traveling the world, meeting builders, joining + hackathons, and enjoying barbecues with friends. +

+ +
+

Hackathon Journey

+

+ I have participated in 3 IRL hackathons with EthGlobal and over 5 virtual ones, becoming a finalist in two + of them 🥳. +

+
+ +
+

Connect with me

+

+ Follow me on{" "} + + X (Twitter) + {" "} + to stay updated on what I'm working on! +

+
+
+
+ ); +}; + +export default FedevPage; diff --git a/packages/nextjs/contracts/deployedContracts.ts b/packages/nextjs/contracts/deployedContracts.ts index 008d4eb..5bcd43b 100644 --- a/packages/nextjs/contracts/deployedContracts.ts +++ b/packages/nextjs/contracts/deployedContracts.ts @@ -4,6 +4,296 @@ */ import { GenericContractsDeclaration } from "~~/utils/scaffold-eth/contract"; -const deployedContracts = {} as const; +const deployedContracts = { + 31337: { + BatchRegistry: { + address: "0x5FbDB2315678afecb367f032d93F642f64180aa3", + abi: [ + { + inputs: [ + { + internalType: "address", + name: "initialOwner", + type: "address", + }, + { + internalType: "uint16", + name: "batchNumber", + type: "uint16", + }, + ], + stateMutability: "nonpayable", + type: "constructor", + }, + { + inputs: [], + name: "AlreadyGraduated", + type: "error", + }, + { + inputs: [], + name: "BatchNotOpen", + type: "error", + }, + { + inputs: [], + name: "NotAContract", + type: "error", + }, + { + inputs: [], + name: "NotCheckedIn", + type: "error", + }, + { + inputs: [], + name: "NotInAllowList", + type: "error", + }, + { + anonymous: false, + inputs: [ + { + indexed: false, + internalType: "bool", + name: "first", + type: "bool", + }, + { + indexed: false, + internalType: "address", + name: "builder", + type: "address", + }, + { + indexed: false, + internalType: "address", + name: "checkInContract", + type: "address", + }, + ], + name: "CheckedIn", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: "address", + name: "previousOwner", + type: "address", + }, + { + indexed: true, + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "OwnershipTransferred", + type: "event", + }, + { + inputs: [], + name: "BATCH_NUMBER", + outputs: [ + { + internalType: "uint16", + name: "", + type: "uint16", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "allowList", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "batchGraduationNFT", + outputs: [ + { + internalType: "contract BatchGraduationNFT", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "checkIn", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "checkedInCounter", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "graduate", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "graduatedTokenId", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isOpen", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "owner", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "renounceOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "toggleBatchOpenStatus", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "newOwner", + type: "address", + }, + ], + name: "transferOwnership", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address[]", + name: "builders", + type: "address[]", + }, + { + internalType: "bool[]", + name: "statuses", + type: "bool[]", + }, + ], + name: "updateAllowList", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "withdraw", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + name: "yourContractAddress", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, + ], + inheritedFunctions: { + owner: "@openzeppelin/contracts/access/Ownable.sol", + renounceOwnership: "@openzeppelin/contracts/access/Ownable.sol", + transferOwnership: "@openzeppelin/contracts/access/Ownable.sol", + }, + }, + }, +} as const; export default deployedContracts satisfies GenericContractsDeclaration; From e3e97d4e9fd5902d4a04be485eb8a32c4698acd0 Mon Sep 17 00:00:00 2001 From: fedev Date: Tue, 10 Sep 2024 21:09:46 -0300 Subject: [PATCH 2/4] remove local deploy --- .../page.tsx | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx diff --git a/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx b/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx new file mode 100644 index 0000000..ede409d --- /dev/null +++ b/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx @@ -0,0 +1,48 @@ +import Link from "next/link"; +import type { NextPage } from "next"; +import { getMetadata } from "~~/utils/scaffold-eth/getMetadata"; + +export const metadata = getMetadata({ + title: "Fedev", + description: "A software developer from Argentina 🇦🇷", +}); + +const FedevPage: NextPage = () => { + return ( +
+
+

Hi! I'm Fedev 👋

+

A software developer from Argentina 🇦🇷.

+
+ +
+

+ I graduated as a systems analyst and for the past 3 years, I've been exploring, learning, and actively + contributing to the Web3 space. I'm passionate about traveling the world, meeting builders, joining + hackathons, and enjoying barbecues with friends. +

+ +
+

Hackathon Journey

+

+ I have participated in 3 IRL hackathons with EthGlobal and over 5 virtual ones, becoming a finalist in two + of them 🥳. +

+
+ +
+

Connect with me

+

+ Follow me on{" "} + + X (Twitter) + {" "} + to stay updated on what I'm working on! +

+
+
+
+ ); +}; + +export default FedevPage; From 5f647743c1da3e612e6bb6ef1808e090a36e9e78 Mon Sep 17 00:00:00 2001 From: fedev Date: Fri, 13 Sep 2024 00:32:36 -0300 Subject: [PATCH 3/4] refactor --- .../nextjs/contracts/deployedContracts.ts | 292 +----------------- 1 file changed, 1 insertion(+), 291 deletions(-) diff --git a/packages/nextjs/contracts/deployedContracts.ts b/packages/nextjs/contracts/deployedContracts.ts index 5bcd43b..008d4eb 100644 --- a/packages/nextjs/contracts/deployedContracts.ts +++ b/packages/nextjs/contracts/deployedContracts.ts @@ -4,296 +4,6 @@ */ import { GenericContractsDeclaration } from "~~/utils/scaffold-eth/contract"; -const deployedContracts = { - 31337: { - BatchRegistry: { - address: "0x5FbDB2315678afecb367f032d93F642f64180aa3", - abi: [ - { - inputs: [ - { - internalType: "address", - name: "initialOwner", - type: "address", - }, - { - internalType: "uint16", - name: "batchNumber", - type: "uint16", - }, - ], - stateMutability: "nonpayable", - type: "constructor", - }, - { - inputs: [], - name: "AlreadyGraduated", - type: "error", - }, - { - inputs: [], - name: "BatchNotOpen", - type: "error", - }, - { - inputs: [], - name: "NotAContract", - type: "error", - }, - { - inputs: [], - name: "NotCheckedIn", - type: "error", - }, - { - inputs: [], - name: "NotInAllowList", - type: "error", - }, - { - anonymous: false, - inputs: [ - { - indexed: false, - internalType: "bool", - name: "first", - type: "bool", - }, - { - indexed: false, - internalType: "address", - name: "builder", - type: "address", - }, - { - indexed: false, - internalType: "address", - name: "checkInContract", - type: "address", - }, - ], - name: "CheckedIn", - type: "event", - }, - { - anonymous: false, - inputs: [ - { - indexed: true, - internalType: "address", - name: "previousOwner", - type: "address", - }, - { - indexed: true, - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "OwnershipTransferred", - type: "event", - }, - { - inputs: [], - name: "BATCH_NUMBER", - outputs: [ - { - internalType: "uint16", - name: "", - type: "uint16", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "allowList", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "batchGraduationNFT", - outputs: [ - { - internalType: "contract BatchGraduationNFT", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "checkIn", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "checkedInCounter", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "graduate", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "graduatedTokenId", - outputs: [ - { - internalType: "uint256", - name: "", - type: "uint256", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "isOpen", - outputs: [ - { - internalType: "bool", - name: "", - type: "bool", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "owner", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - inputs: [], - name: "renounceOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "toggleBatchOpenStatus", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "newOwner", - type: "address", - }, - ], - name: "transferOwnership", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address[]", - name: "builders", - type: "address[]", - }, - { - internalType: "bool[]", - name: "statuses", - type: "bool[]", - }, - ], - name: "updateAllowList", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [], - name: "withdraw", - outputs: [], - stateMutability: "nonpayable", - type: "function", - }, - { - inputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - name: "yourContractAddress", - outputs: [ - { - internalType: "address", - name: "", - type: "address", - }, - ], - stateMutability: "view", - type: "function", - }, - { - stateMutability: "payable", - type: "receive", - }, - ], - inheritedFunctions: { - owner: "@openzeppelin/contracts/access/Ownable.sol", - renounceOwnership: "@openzeppelin/contracts/access/Ownable.sol", - transferOwnership: "@openzeppelin/contracts/access/Ownable.sol", - }, - }, - }, -} as const; +const deployedContracts = {} as const; export default deployedContracts satisfies GenericContractsDeclaration; From 1b0e0a4b97af7d9a1238aefb64af25a8661f407d Mon Sep 17 00:00:00 2001 From: fedev Date: Fri, 13 Sep 2024 00:44:20 -0300 Subject: [PATCH 4/4] update image profile --- .../[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx b/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx index ede409d..d97d494 100644 --- a/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx +++ b/packages/nextjs/app/builders/[0xDFbE6c0A54F9f4f758753aE56eDD02Dd92C29be3]/page.tsx @@ -1,5 +1,6 @@ import Link from "next/link"; import type { NextPage } from "next"; +import { BlockieAvatar } from "~~/components/scaffold-eth"; import { getMetadata } from "~~/utils/scaffold-eth/getMetadata"; export const metadata = getMetadata({ @@ -11,6 +12,9 @@ const FedevPage: NextPage = () => { return (
+
+ +

Hi! I'm Fedev 👋

A software developer from Argentina 🇦🇷.