22< html lang ="pt-BR ">
33
44< head >
5- < meta name ="viewport " content ="width=device-width, initial-scale=1.0 ">
6- < meta http-equiv ="X-UA-Compatible " content ="ie=edge ">
75 < meta charset ="UTF-8 ">
8-
6+ < meta name =" viewport " content =" width=device-width, initial-scale=1.0 " >
97 < title > André Paul Grandsire</ title >
108
119 < meta name ="google-site-verification " content ="9ohRRNaoFMcCz6ru0CCyRYJku-JQVrjAZ_x4PxbIGA8 " />
1816 < meta name ="twitter:card " content ="summary " />
1917
2018 < link rel ="canonical " href ="https://andrepg.github.io/ " />
19+ < script type ="module " src ="src/main.js "> </ script >
2120
2221 < link rel ="apple-touch-icon " sizes ="180x180 " href ="/apple-touch-icon.png ">
2322 < link rel ="icon " type ="image/png " sizes ="32x32 " href ="/favicon-32x32.png ">
2423 < link rel ="icon " type ="image/png " sizes ="16x16 " href ="/favicon-16x16.png ">
2524 < link rel ="manifest " href ="/site.webmanifest ">
26-
27- < script src ="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4 "> </ script >
28-
29- < script >
30- /**
31- * Current requested resource
32- * @type {string }
33- */
34- const resource = location . href
35-
36- /**
37- * We will redirect only if the page belongs to blog namespace
38- */
39- if ( HomepageMenu . find ( menu => resource . includes ( menu . path ) ) ) {
40- sessionStorage . redirect = resource
41-
42- refresh = document . createElement ( 'meta' )
43- refresh . content = '0;URL=\'/\''
44- refresh . httpEquiv = 'refresh'
45-
46- document . head . append ( refresh )
47-
48- window . location . replace ( '/' )
49- }
50-
51- setTimeout ( ( ) => document . getElementById ( 'main' ) . classList . toggle ( 'invisible' ) , 100 )
52- </ script >
53-
54- < style >
55- * {
56- transition : all 0.6s ;
57- }
58-
59- html {
60- height : 100% ;
61- }
62-
63- body {
64- font-family : 'Lato' , sans-serif;
65- color : # 888 ;
66- margin : 0 ;
67- }
68-
69- .invisible {
70- opacity : 0 ;
71- }
72-
73- .fof {
74- display : table-cell;
75- vertical-align : middle;
76- }
77-
78- .fof h1 {
79- font-size : 50px ;
80- display : inline-block;
81- padding-right : 12px ;
82- animation : type .5s alternate infinite;
83- }
84-
85- @keyframes type {
86- from {
87- box-shadow : inset -3px 0 0 # 888 ;
88- }
89- to {
90- box-shadow : inset -3px 0 0 transparent;
91- }
92- }
93-
94- @media (prefers-color-scheme : dark) {
95- body {
96- background : rgb (17 24 39 )
97- }
98- }
99- </ style >
10025</ head >
101-
102-
103- < body class ="flex flex-col min-h-screen dark:bg-gray-900 dark:text-gray-200 ">
104- < div class ="flex flex-col h-full justify-between min-h-screen ">
105- < div id ="main " class ="invisible w-full flex-1 flex flex-col items-center justify-center ">
106- < div class ="fof ">
107- < h1 > Error 404</ h1 >
108- < p > Parece que essa página foi perdida.</ p >
109- </ div >
110- </ div >
111-
112- < footer class ="flex flex-col text-xs py-5 px-3 text-white w-full justify-center bg-purple-900 shadow-inner z-10 mt-4 ">
113- < span > Made with 🤍 and VueJS</ span >
114- < span > Hosted by 🤖 GitHub Pages</ span >
115- </ footer >
116- </ div >
26+ < body class ="min-h-screen ">
27+ < div id ="app " class ="flex flex-col min-h-screen "> </ div >
11728</ body >
11829</ html >
0 commit comments