33< head >
44 < meta charset ="UTF-8 ">
55 < meta name ="viewport " content ="width=device-width, initial-scale=1.0 ">
6- < title > Secure Deploy - ETHRome Hackathon</ title >
7- < link rel ="stylesheet " href ="style.css ">
6+ < title > Autark - ETHRome Hackathon</ title >
7+ < style >
8+ * {
9+ margin : 0 ;
10+ padding : 0 ;
11+ box-sizing : border-box;
12+ }
13+
14+ body {
15+ font-family : 'Courier New' , monospace;
16+ background : # 0a0e27 ;
17+ min-height : 100vh ;
18+ display : flex;
19+ justify-content : center;
20+ align-items : center;
21+ padding : 20px ;
22+ color : # 4AE2ED ;
23+ position : relative;
24+ overflow-x : hidden;
25+ }
26+
27+ body ::before {
28+ content : '' ;
29+ position : fixed;
30+ top : 0 ;
31+ left : 0 ;
32+ width : 100% ;
33+ height : 100% ;
34+ background :
35+ repeating-linear-gradient (
36+ 0deg ,
37+ rgba (74 , 226 , 237 , 0.03 ) 0px ,
38+ transparent 1px ,
39+ transparent 2px ,
40+ rgba (74 , 226 , 237 , 0.03 ) 3px
41+ );
42+ pointer-events : none;
43+ animation : scanlines 8s linear infinite;
44+ }
45+
46+ @keyframes scanlines {
47+ 0% { transform : translateY (0 ); }
48+ 100% { transform : translateY (10px ); }
49+ }
50+
51+ .container {
52+ background : rgba (10 , 14 , 39 , 0.95 );
53+ border : 2px solid # 4AE2ED ;
54+ border-radius : 4px ;
55+ padding : 40px ;
56+ max-width : 900px ;
57+ box-shadow :
58+ 0 0 20px rgba (74 , 226 , 237 , 0.3 ),
59+ inset 0 0 20px rgba (74 , 226 , 237 , 0.05 );
60+ position : relative;
61+ z-index : 1 ;
62+ }
63+
64+ .ascii-title {
65+ color : # 4AE2ED ;
66+ font-size : 0.35rem ;
67+ line-height : 0.4rem ;
68+ text-align : center;
69+ margin-bottom : 20px ;
70+ white-space : pre;
71+ overflow-x : auto;
72+ text-shadow : 0 0 10px rgba (74 , 226 , 237 , 0.5 );
73+ }
74+
75+ h1 {
76+ color : # 4AE2ED ;
77+ font-size : 2rem ;
78+ margin-bottom : 10px ;
79+ text-align : center;
80+ text-shadow : 0 0 10px rgba (74 , 226 , 237 , 0.8 );
81+ letter-spacing : 2px ;
82+ }
83+
84+ .subtitle {
85+ text-align : center;
86+ color : # 4AE2ED ;
87+ font-size : 1.1rem ;
88+ margin-bottom : 30px ;
89+ opacity : 0.8 ;
90+ font-weight : bold;
91+ }
92+
93+ .content {
94+ line-height : 1.8 ;
95+ }
96+
97+ h2 {
98+ color : # 4AE2ED ;
99+ margin-top : 25px ;
100+ margin-bottom : 15px ;
101+ text-transform : uppercase;
102+ letter-spacing : 3px ;
103+ border-left : 4px solid # 4AE2ED ;
104+ padding-left : 15px ;
105+ }
106+
107+ h3 {
108+ color : # 4AE2ED ;
109+ margin-top : 20px ;
110+ margin-bottom : 10px ;
111+ font-size : 1.1rem ;
112+ text-transform : uppercase;
113+ letter-spacing : 2px ;
114+ }
115+
116+ p {
117+ color : # 4AE2ED ;
118+ opacity : 0.9 ;
119+ }
120+
121+ ul {
122+ list-style : none;
123+ padding-left : 0 ;
124+ }
125+
126+ li {
127+ padding : 10px 0 ;
128+ padding-left : 10px ;
129+ color : # 4AE2ED ;
130+ position : relative;
131+ }
132+
133+ li ::before {
134+ content : '>' ;
135+ position : absolute;
136+ left : -10px ;
137+ color : # 4AE2ED ;
138+ animation : blink 1.5s infinite;
139+ }
140+
141+ @keyframes blink {
142+ 0% , 49% { opacity : 1 ; }
143+ 50% , 100% { opacity : 0 ; }
144+ }
145+
146+ strong {
147+ color : # 4AE2ED ;
148+ text-shadow : 0 0 5px rgba (74 , 226 , 237 , 0.5 );
149+ }
150+
151+ .tech-stack {
152+ background : rgba (74 , 226 , 237 , 0.05 );
153+ border : 1px solid # 4AE2ED ;
154+ padding : 20px ;
155+ border-radius : 4px ;
156+ margin-top : 25px ;
157+ position : relative;
158+ }
159+
160+ .tech-stack ::before {
161+ content : '[ TECH STACK ]' ;
162+ position : absolute;
163+ top : -12px ;
164+ left : 20px ;
165+ background : # 0a0e27 ;
166+ padding : 0 10px ;
167+ color : # 4AE2ED ;
168+ font-size : 0.8rem ;
169+ letter-spacing : 2px ;
170+ }
171+
172+ .tech-stack p {
173+ text-align : center;
174+ font-weight : 600 ;
175+ color : # 4AE2ED ;
176+ font-size : 1.1rem ;
177+ letter-spacing : 1px ;
178+ }
179+
180+ .timestamp {
181+ margin-top : 30px ;
182+ padding-top : 20px ;
183+ border-top : 1px solid # 4AE2ED ;
184+ text-align : center;
185+ color : # 4AE2ED ;
186+ font-size : 0.9rem ;
187+ opacity : 0.8 ;
188+ }
189+
190+ # current-time {
191+ font-weight : 600 ;
192+ color : # 4AE2ED ;
193+ text-shadow : 0 0 5px rgba (74 , 226 , 237 , 0.5 );
194+ }
195+
196+ footer {
197+ margin-top : 30px ;
198+ padding-top : 20px ;
199+ border-top : 1px solid # 4AE2ED ;
200+ text-align : center;
201+ color : # 4AE2ED ;
202+ opacity : 0.7 ;
203+ }
204+
205+ .glitch {
206+ position : relative;
207+ display : inline-block;
208+ }
209+
210+ @media (max-width : 600px ) {
211+ .container {
212+ padding : 20px ;
213+ }
214+
215+ h1 {
216+ font-size : 1.5rem ;
217+ }
218+
219+ .subtitle {
220+ font-size : 0.9rem ;
221+ }
222+
223+ .ascii-title {
224+ font-size : 0.25rem ;
225+ line-height : 0.3rem ;
226+ }
227+ }
228+ </ style >
8229</ head >
9230< body >
10231 < div class ="container ">
232+ < pre class ="ascii-title "> _____ _____ _____ _____ _____ _____
233+ /\ \ /\ \ /\ \ /\ \ /\ \ /\ \
234+ /::\ \ /::\____\ /::\ \ /::\ \ /::\ \ /::\____\
235+ /::::\ \ /:::/ / \:::\ \ /::::\ \ /::::\ \ /:::/ /
236+ /::::::\ \ /:::/ / \:::\ \ /::::::\ \ /::::::\ \ /:::/ /
237+ /:::/\:::\ \ /:::/ / \:::\ \ /:::/\:::\ \ /:::/\:::\ \ /:::/ /
238+ /:::/__\:::\ \ /:::/ / \:::\ \ /:::/__\:::\ \ /:::/__\:::\ \ /:::/____/
239+ /::::\ \:::\ \ /:::/ / /::::\ \ /::::\ \:::\ \ /::::\ \:::\ \ /::::\ \
240+ /::::::\ \:::\ \ /:::/ / _____ /::::::\ \ /::::::\ \:::\ \ /::::::\ \:::\ \ /::::::\____\________
241+ /:::/\:::\ \:::\ \ /:::/____/ /\ \ /:::/\:::\ \ /:::/\:::\ \:::\ \ /:::/\:::\ \:::\____\ /:::/\:::::::::::\ \
242+ /:::/ \:::\ \:::\____\|:::| / /::\____\ /:::/ \:::\____\/:::/ \:::\ \:::\____\/:::/ \:::\ \:::| |/:::/ |:::::::::::\____\
243+ \::/ \:::\ /:::/ /|:::|____\ /:::/ / /:::/ \::/ /\::/ \:::\ /:::/ /\::/ |::::\ /:::|____|\::/ |::|~~~|~~~~~
244+ \/____/ \:::\/:::/ / \:::\ \ /:::/ / /:::/ / \/____/ \/____/ \:::\/:::/ / \/____|:::::\/:::/ / \/____|::| |
245+ \::::::/ / \:::\ \ /:::/ / /:::/ / \::::::/ / |:::::::::/ / |::| |
246+ \::::/ / \:::\ /:::/ / /:::/ / \::::/ / |::|\::::/ / |::| |
247+ /:::/ / \:::\__/:::/ / \::/ / /:::/ / |::| \::/____/ |::| |
248+ /:::/ / \::::::::/ / \/____/ /:::/ / |::| ~| |::| |
249+ /:::/ / \::::::/ / /:::/ / |::| | |::| |
250+ /:::/ / \::::/ / /:::/ / \::| | \::| |
251+ \::/ / \::/____/ \::/ / \:| | \:| |
252+ \/____/ ~~ \/____/ \|___| \|___|</ pre >
253+
11254 < h1 > Hello ETHRome Hackathon!</ h1 >
12- < p class ="subtitle "> Secure Frontend Deployments with Immutable ENS Versioning </ p >
255+ < p class ="subtitle "> This is a even newer version </ p >
13256
14257 < div class ="content ">
15- < h2 > What is Secure Deploy ?</ h2 >
258+ < h2 > What is Autark ?</ h2 >
16259 < p >
17260 A CLI tool that prevents malicious frontend deployments by combining
18261 < strong > Safe multisig approvals</ strong > with < strong > immutable ENS versioning</ strong > .
19262 </ p >
20263
21264 < h3 > Key Features:</ h3 >
22265 < ul >
23- < li > 🔒 Human verification checkpoints via Safe multisig</ li >
24- < li > 📦 IPFS deployment with content addressing</ li >
25- < li > 🏷️ Immutable ENS subdomains (v0, v1, v2...)</ li >
26- < li > 🔍 Git commit tracking for transparency</ li >
27- < li > ⛓️ ENS NameWrapper fuse burning for permanence</ li >
266+ < li > Human verification checkpoints via Safe multisig</ li >
267+ < li > IPFS deployment with content addressing</ li >
268+ < li > Immutable ENS subdomains (v0, v1, v2...)</ li >
269+ < li > Git commit tracking for transparency</ li >
270+ < li > ENS NameWrapper fuse burning for permanence</ li >
28271 </ ul >
29272
30273 < div class ="tech-stack ">
31274 < h3 > Built with:</ h3 >
32- < p > Storacha • ENS • Safe • Ethereum • IPFS + testtest </ p >
275+ < p > Storacha • ENS • Safe • Ethereum • IPFS</ p >
33276 </ div >
34277
35278 < div class ="timestamp ">
@@ -38,10 +281,34 @@ <h3>Built with:</h3>
38281 </ div >
39282
40283 < footer >
41- < p > Made with ❤️ at ETHRome 2025</ p >
284+ < p > Made with love at ETHRome 2025</ p >
42285 </ footer >
43286 </ div >
44287
45- < script src ="script.js "> </ script >
288+ < script >
289+ // Display current timestamp
290+ function updateTime ( ) {
291+ const now = new Date ( ) ;
292+ const timeString = now . toLocaleString ( 'en-US' , {
293+ year : 'numeric' ,
294+ month : 'long' ,
295+ day : 'numeric' ,
296+ hour : '2-digit' ,
297+ minute : '2-digit' ,
298+ second : '2-digit' ,
299+ timeZoneName : 'short'
300+ } ) ;
301+ document . getElementById ( 'current-time' ) . textContent = timeString ;
302+ }
303+
304+ // Update time immediately and every second
305+ updateTime ( ) ;
306+ setInterval ( updateTime , 1000 ) ;
307+
308+ // Console message
309+ console . log ( 'Autark - ETHRome Hackathon 2025' ) ;
310+ console . log ( 'This site was deployed to IPFS using Storacha!' ) ;
311+ console . log ( 'Learn more: https://github.com/your-repo/autark' ) ;
312+ </ script >
46313</ body >
47- </ html >
314+ </ html >
0 commit comments