Skip to content

Commit 09b67d6

Browse files
committed
Merge remote-tracking branch 'upstream/main' into dev
2 parents 7c5470c + 170fa58 commit 09b67d6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+8381
-1170
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
**/sk.txt
44
**/sk*.txt
55
**/sk*.json
6+
**/__pycache__
67
**/package-lock.json
78
# dependencies
89
/node_modules

README.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,11 +108,14 @@
108108
44. [JavaScript Cryptography](https://blog.sessionstack.com/how-javascript-works-cryptography-how-to-deal-with-man-in-the-middle-mitm-attacks-bf8fc6be546c)
109109
45. [proxy contract](https://zhuanlan.zhihu.com/p/34690916)
110110
46. [vyper](https://vyper.readthedocs.io/en/stable/)
111+
47. [TWAMM: Time-Weighted Average Market Maker](https://www.paradigm.xyz/2021/07/twamm/)
112+
48. [Charm.fi](https://github.com/charmfinance/alpha-vaults-contracts)
113+
111114
欢迎提交 PR,[添加新的基础任务或者更新上面的任务](https://github.com/rebase-network/Dapp-Learning/issues/new)
112115

113116
## 进阶任务
114117

115-
此部分针对有一定基础开发者,选取主流优质项目进行源码剖析和 code view
118+
此部分针对有一定基础开发者,选取主流优质项目进行源码剖析和 code review
116119
可采用小组协作方式将项目部署至测试网,以此为基础在 Rebase 社区进行分享。大型defi项目新颖且内容庞大,我们建议分工协作方式进行,如一人看白皮书,一人负责前端,一人负责合约,一人负责数据展示。
117120
开发者可以在开发群里发起项目研究倡议,建立小组,进行协作。此部分建议以 submoudle 方式引入。
118121

@@ -128,8 +131,8 @@
128131
08. Bancor [👉 认领这个 Task](https://github.com/rebase-network/Dapp-Learning/issues/new)
129132
09. YFI [👉 认领这个 Task](https://github.com/rebase-network/Dapp-Learning/issues/new)
130133
10. AMPL [👉 认领这个 Task](https://github.com/rebase-network/Dapp-Learning/issues/new)
131-
11. [Perpetual Protocol](https://www.chainnews.com/articles/163436212237.htm) [👉 认领这个 Task](https://github.com/rebase-network/Dapp-Learning/issues/new)
132-
12. [DODO](https://dodoex.github.io/docs/zh/docs/DODO-Economics-102) [👉 认领这个 Task](https://github.com/rebase-network/Dapp-Learning/issues/new)
134+
11. [Perpetual Protocol](https://www.chainnews.com/articles/163436212237.htm) [👉 认领这个 Task](https://github.com/rebase-network/Dapp-Learning/issues/new)
135+
12. [DODO](https://dodoex.github.io/docs/zh/docs/DODO-Economics-102) [👉 认领这个 Task](https://github.com/rebase-network/Dapp-Learning/issues/new)
133136

134137
## NFT 进阶
135138

Lines changed: 215 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,215 @@
1+
{
2+
"_format": "hh-sol-artifact-1",
3+
"contractName": "AccessControl",
4+
"sourceName": "contracts/openzepplin/AccessControl.sol",
5+
"abi": [
6+
{
7+
"anonymous": false,
8+
"inputs": [
9+
{
10+
"indexed": true,
11+
"internalType": "bytes32",
12+
"name": "role",
13+
"type": "bytes32"
14+
},
15+
{
16+
"indexed": true,
17+
"internalType": "bytes32",
18+
"name": "previousAdminRole",
19+
"type": "bytes32"
20+
},
21+
{
22+
"indexed": true,
23+
"internalType": "bytes32",
24+
"name": "newAdminRole",
25+
"type": "bytes32"
26+
}
27+
],
28+
"name": "RoleAdminChanged",
29+
"type": "event"
30+
},
31+
{
32+
"anonymous": false,
33+
"inputs": [
34+
{
35+
"indexed": true,
36+
"internalType": "bytes32",
37+
"name": "role",
38+
"type": "bytes32"
39+
},
40+
{
41+
"indexed": true,
42+
"internalType": "address",
43+
"name": "account",
44+
"type": "address"
45+
},
46+
{
47+
"indexed": true,
48+
"internalType": "address",
49+
"name": "sender",
50+
"type": "address"
51+
}
52+
],
53+
"name": "RoleGranted",
54+
"type": "event"
55+
},
56+
{
57+
"anonymous": false,
58+
"inputs": [
59+
{
60+
"indexed": true,
61+
"internalType": "bytes32",
62+
"name": "role",
63+
"type": "bytes32"
64+
},
65+
{
66+
"indexed": true,
67+
"internalType": "address",
68+
"name": "account",
69+
"type": "address"
70+
},
71+
{
72+
"indexed": true,
73+
"internalType": "address",
74+
"name": "sender",
75+
"type": "address"
76+
}
77+
],
78+
"name": "RoleRevoked",
79+
"type": "event"
80+
},
81+
{
82+
"inputs": [],
83+
"name": "DEFAULT_ADMIN_ROLE",
84+
"outputs": [
85+
{
86+
"internalType": "bytes32",
87+
"name": "",
88+
"type": "bytes32"
89+
}
90+
],
91+
"stateMutability": "view",
92+
"type": "function"
93+
},
94+
{
95+
"inputs": [
96+
{
97+
"internalType": "bytes32",
98+
"name": "role",
99+
"type": "bytes32"
100+
}
101+
],
102+
"name": "getRoleAdmin",
103+
"outputs": [
104+
{
105+
"internalType": "bytes32",
106+
"name": "",
107+
"type": "bytes32"
108+
}
109+
],
110+
"stateMutability": "view",
111+
"type": "function"
112+
},
113+
{
114+
"inputs": [
115+
{
116+
"internalType": "bytes32",
117+
"name": "role",
118+
"type": "bytes32"
119+
},
120+
{
121+
"internalType": "address",
122+
"name": "account",
123+
"type": "address"
124+
}
125+
],
126+
"name": "grantRole",
127+
"outputs": [],
128+
"stateMutability": "nonpayable",
129+
"type": "function"
130+
},
131+
{
132+
"inputs": [
133+
{
134+
"internalType": "bytes32",
135+
"name": "role",
136+
"type": "bytes32"
137+
},
138+
{
139+
"internalType": "address",
140+
"name": "account",
141+
"type": "address"
142+
}
143+
],
144+
"name": "hasRole",
145+
"outputs": [
146+
{
147+
"internalType": "bool",
148+
"name": "",
149+
"type": "bool"
150+
}
151+
],
152+
"stateMutability": "view",
153+
"type": "function"
154+
},
155+
{
156+
"inputs": [
157+
{
158+
"internalType": "bytes32",
159+
"name": "role",
160+
"type": "bytes32"
161+
},
162+
{
163+
"internalType": "address",
164+
"name": "account",
165+
"type": "address"
166+
}
167+
],
168+
"name": "renounceRole",
169+
"outputs": [],
170+
"stateMutability": "nonpayable",
171+
"type": "function"
172+
},
173+
{
174+
"inputs": [
175+
{
176+
"internalType": "bytes32",
177+
"name": "role",
178+
"type": "bytes32"
179+
},
180+
{
181+
"internalType": "address",
182+
"name": "account",
183+
"type": "address"
184+
}
185+
],
186+
"name": "revokeRole",
187+
"outputs": [],
188+
"stateMutability": "nonpayable",
189+
"type": "function"
190+
},
191+
{
192+
"inputs": [
193+
{
194+
"internalType": "bytes4",
195+
"name": "interfaceId",
196+
"type": "bytes4"
197+
}
198+
],
199+
"name": "supportsInterface",
200+
"outputs": [
201+
{
202+
"internalType": "bool",
203+
"name": "",
204+
"type": "bool"
205+
}
206+
],
207+
"stateMutability": "view",
208+
"type": "function"
209+
}
210+
],
211+
"bytecode": "0x",
212+
"deployedBytecode": "0x",
213+
"linkReferences": {},
214+
"deployedLinkReferences": {}
215+
}

basic/18-web3py/ABI/Context.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"_format": "hh-sol-artifact-1",
3+
"contractName": "Context",
4+
"sourceName": "contracts/openzepplin/Context.sol",
5+
"abi": [],
6+
"bytecode": "0x",
7+
"deployedBytecode": "0x",
8+
"linkReferences": {},
9+
"deployedLinkReferences": {}
10+
}

basic/18-web3py/ABI/ERC165.json

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
{
2+
"_format": "hh-sol-artifact-1",
3+
"contractName": "ERC165",
4+
"sourceName": "contracts/openzepplin/ERC165.sol",
5+
"abi": [
6+
{
7+
"inputs": [
8+
{
9+
"internalType": "bytes4",
10+
"name": "interfaceId",
11+
"type": "bytes4"
12+
}
13+
],
14+
"name": "supportsInterface",
15+
"outputs": [
16+
{
17+
"internalType": "bool",
18+
"name": "",
19+
"type": "bool"
20+
}
21+
],
22+
"stateMutability": "view",
23+
"type": "function"
24+
}
25+
],
26+
"bytecode": "0x",
27+
"deployedBytecode": "0x",
28+
"linkReferences": {},
29+
"deployedLinkReferences": {}
30+
}

0 commit comments

Comments
 (0)