From b6d1640e60fecb45ee18ef41f32fb5a90b69711d Mon Sep 17 00:00:00 2001 From: lou Date: Sat, 12 Oct 2024 19:16:51 -0400 Subject: [PATCH] initial commit --- src/css/base.css | 7 +++ src/img/logo.png | Bin 0 -> 23137 bytes src/img/os/arch.png | Bin 0 -> 1359 bytes src/img/os/debian.png | Bin 0 -> 1475 bytes src/img/os/gentoo.png | Bin 0 -> 2126 bytes src/img/os/mint.png | Bin 0 -> 1274 bytes src/img/os/opensuse.png | Bin 0 -> 1221 bytes src/img/os/oracle.png | Bin 0 -> 7228 bytes src/img/os/ubuntu.png | Bin 0 -> 1282 bytes src/img/os/void.png | Bin 0 -> 1656 bytes src/img/os/windows-server.png | Bin 0 -> 3424 bytes src/js/main.js | 25 +++++++++++ src/js/music.js | 41 ++++++++++++++++++ views/about.ejs | 72 +++++++++++++++++++++++++++++++ views/contact.ejs | 46 ++++++++++++++++++++ views/index.ejs | 50 ++++++++++++++++++++++ views/shards/footer.ejs | 21 +++++++++ views/shards/header.ejs | 78 ++++++++++++++++++++++++++++++++++ views/shards/music.ejs | 21 +++++++++ 19 files changed, 361 insertions(+) create mode 100644 src/css/base.css create mode 100644 src/img/logo.png create mode 100644 src/img/os/arch.png create mode 100644 src/img/os/debian.png create mode 100644 src/img/os/gentoo.png create mode 100644 src/img/os/mint.png create mode 100644 src/img/os/opensuse.png create mode 100644 src/img/os/oracle.png create mode 100644 src/img/os/ubuntu.png create mode 100644 src/img/os/void.png create mode 100644 src/img/os/windows-server.png create mode 100644 src/js/main.js create mode 100644 src/js/music.js create mode 100644 views/about.ejs create mode 100644 views/contact.ejs create mode 100644 views/index.ejs create mode 100644 views/shards/footer.ejs create mode 100644 views/shards/header.ejs create mode 100644 views/shards/music.ejs diff --git a/src/css/base.css b/src/css/base.css new file mode 100644 index 0000000..b4a7185 --- /dev/null +++ b/src/css/base.css @@ -0,0 +1,7 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; + +.glow { + box-shadow: 0 0 15px rgba(255, 255, 255, 0.5); +} \ No newline at end of file diff --git a/src/img/logo.png b/src/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0a724d5baaf8e42d163ccaed3992e9d3ed841a6c GIT binary patch literal 23137 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 Rz&iTSO*5;j6<6-W{0sb$^z;A# literal 0 HcmV?d00001 diff --git a/src/img/os/arch.png b/src/img/os/arch.png new file mode 100644 index 0000000000000000000000000000000000000000..bde1483d7cfe7b3d2e3c54b86098702f5efe48b7 GIT binary patch literal 1359 zcmZ`%dsLEl82;JBQdikhL3B<^b6#?Yii)Lx;w6=k%#~Sbip`GBPP)p@u|u7XU3409 z$twa11e$59j=8eSR-IZa0fFxWv}0|~)7IK?t;D?S_u2Nx{@5Sidw-tad*0_e&0(i3 zcOkj}0G6kvCUK$n!@gx7K%3Nc<{os8dl{Jw0QwtTXA5vxvoMvL3BZwc0Ps%$Fat~c zNdUeg1Mngr09q3O`2B5zSsMUY63NNPX2Ah3p}|k0!wYrmT1HkiKZ1dO%Sfyo#S4dH z6)0F(@Db@FI!qy2hB#AD#&B#zAp;A+d))FBzC!V)3)i!FUnc8WJ zk|CS4)@YR>UWvpj(KrPHi!=q2sLD!otrJx>g)^AJNe3<51tuo%NsIP4|R|HJk#gNOJDT-9Cp z*t=0j6v1tWJtYPVCDMC~^`s`lC+7^l5`A#1F`#+Gzjq2Oq$i}Wk z6*Lx>#*&~yp*rxSaa{{;{onqfjh(CAtb-SXl5N z1m1xE&524bdkct+X;ZCyZTBv#aWMYkl>Eg28aT&py;C<&JHlzWfqy-(JT*N}lgt?B zhJ4=6$9D{o?DGlgp>;DUnz`FUv-d+2Vqa~(vTv7R3H`UFj*~kd^^3=xa%*|RH{X?3 zWY)snEUiq-WG$U^BD$|wUQG+Bh3!*mNsR269}4s7xVnrFryU|(k5=VS53acG60;-s z+8+-p{=9r;YHB>|*3&T^8o*CEmVan-d52pxyQ)Ai@4PyY{n1?wy>v>XG0doIpJ)4p z7f$p%*ixLnY5eRtiJ(0Kf4*4ibFiuk#|q$y?G+PYoUPw!>DA+kyTq2>5 zAMzw1CG}zD1=qSean6^w%Y*uUcdE4_7Bn$CM)oj{c>--C5ZZS71?OeC4=@}@8Koj3$$l(^}cWFcuM*XdP{I_aL81Dz}aWo7ZRdVjb(E1NZ#oIdFY@(uJPKvtF#^m z><_yGZfV#GA%rk79J5oCez4dDNbej d51_2PsHC{+{{gSI`R;=Nkj7#s^)mC1{|zQIZ`J?+ literal 0 HcmV?d00001 diff --git a/src/img/os/debian.png b/src/img/os/debian.png new file mode 100644 index 0000000000000000000000000000000000000000..67e5c08b60db3e3fd40cd617f492f891b51cb17b GIT binary patch literal 1475 zcmZ`%X;c$e6n+tsnIxbU1fw9Ps1T)?um~2S5(!IKlF1|~R44)g#a09*Ql(fiYCsEZ zTmY9~QBYK>g4!cs1q3T1@mQBEh}Bj_g|-}wbwe$EFX?jnqvy=Lci+9=_ucQ^nJt7k z%8@ad0RV6mMGHx|v*F9Z?cjR&1zry~`=x?-0RW9(G2f(7;hC+BCgTAp@B*M{696MH zRrDBu)jR+OQvnFs1;E5yU5k_t0Od6iCy#)DHV`%n6lOYU#z-S3HDQE-CNbk;15TJQ z>0OXI3V@j=HQ}%%g#a@qhJgD((MyxTq#2VMsDvIYfz^K>h{s41Txld?(WHGq^iS1D zCG{ZQOe2j}%~4Qz1STOD_BGHI1}3aZ3=jjWI5Lb3;PEzZkYy7@ zM_hUf(cwefV2X`6*-Nz@kr@*vLn1W7h|8>9&`qy_NHc~48_NnqF_gV!gINcH`qBuq zHSTjz*m^+>O4>TY?liKOZqq^c>ca@DGK$SWZ0lmALrZ_Rqe16nFD9|hpS%uYkq1XK z0Rt{UEZgv{!$c+IiZoG)K04BbcQipiaBhFWkgSmglTa3ZP4t;i29w@)Kr4(#M@QYa z)}mjgPDP4kz}_xY*H9`Kgva3&h5m`wdlsE@xr0Z2`p32Q{kv-~J*&b_zi#wr$h*&s zIr%nrTtU{WHF+P8?et*z(q0sakG{M3{MD2_b;UF9pPe|B>t(8ma*_%6{rsGnbGLVU z;>d8cCmGhSDNKIoawv1}0m-A^zUQ0o3{ET0{>ibSb#BlvUtIhs#`ybqm2=m;A4*QG zYrgREM1cF7$R&#wp35H~hLk=Fjz_qzygbmo99pKN$3_Vc6L`>ec)(Pm_z3JVjWyQK z$yt6c2Y@k7BB4M&w?~;8W>*^L&_oGf`nZK+-V=jA_|PMzwV!C`vN_XBXLCJU+^Hp7 zYNBHsqSeBKwV4_H4_qdkkJ-6%yyf;R_ISmd)p$ao#RGqIN+j9yOMpfu=yKD&6ydsu<)&22Qo-Ovius@~e+&UJk@NES*s_E(iHjiWWo<2cOPx6?p z?`*%{$nRiyP3^|EU8i(K-n3+`sE$%rbago9mW1bTdT3cw&6jjogu9}*Gq?KesN_m0 z#u!HZs*)-fdbtz3C5Fp7RNZpOHLFTIkcNMNcca?I+X$t-g5M)=8w_wwH>g$!>Y~68!3UDei5IufrlXY<^k( z-XdMIeH%k_FrZ>{qQ9Tk9xQ%VmZXxcr@$X(hAJXam64{(3{kGigd6bZ`3L&)f_(i0 w<$i%7f$xX-&Gq5&LU_DsH`<2(L&(m_Shi&C{}aeBu{cNoq6o3@_`+26pWwqwasU7T literal 0 HcmV?d00001 diff --git a/src/img/os/gentoo.png b/src/img/os/gentoo.png new file mode 100644 index 0000000000000000000000000000000000000000..98bcf8882a677b03b066bddc6a4945165ba2a23d GIT binary patch literal 2126 zcmZ`)S5T7+6a9iA^ePgH#Dq2=sG*ZcOQZ_nQWXRw7`Y&VgeDOLkuJSS3q_FPpaE%y zBAsACsXv#9=g&z_&w69yrjd^^(NDaQ&Ix~1Q zUE~z&SS>a2kFrcx@ncyLv$|Cq*)RPMMN8tmwA!{G_cQdNtz++8TCaH{im&9Q&wWlK z7yq=#%LFR>`TNA~B(V=Y7>hD*li57@&|h)Kdz$%PhGSi#b0hdZGpN#*;*&BToJk|$|cRlmahjY ziAmKZfOvP4-MsBqwnKO7a+F|FO{XH%_sxUc4?lH(`>-QGX>UXUVh|2cnk+P zn@B@l;M%Io$SE5P3hJ=lnag(s+1X1CUcQ`iy!f+@>9}ZV@1DeaoAH9cIsFSRM!@rC z%R=J%Q&6`Cn)Z1{^d=ogn|59SXARd9IH2z}$vR3A?MehrFSJe(kRr9u3mtF;byh6c zWy|%-J@cL`rB_k!7QJXzG%%w5YHHGU#|@NbO-M*W;tpD%8|!yy`g_!;E8QBV!aboI z_ajQWR@4&5LYzCzuDgtjBH@;%D zM^jR%;qrt;f=nYaTBU=&VC>X&&m+O?nzu*$twF_lDE5feZ%Gx)?Ol2TmYTbz)KDq*PH{POaW>ks(Fdtk*e!qdug?KX-TEM zaqS<{NET|-*#3|Q7?YKk!-ro{70&#YmYEs3ZBcpZC;0=YMhmRlTXHLe1QX+g@QFd< zN&<2r)D*rIZC}5$uxo{hQK856Yqw_PYvsn1xMiYLl$zs z5k<{Z+uxuzHkJbkfuBsoglrL83 zY~B*Kwo`>>^bQeUoJi(7W*6e~J6}Yi_`9%9UTJR1N>Rb$Pyt0l3@U32X{w*wGD|4y z9zuy28C(0wkEl6sl9->VOClkm)u1NcbWK7Ta5^4Vg= zHHL#m6R-;0gdeB#0$kp@W^j{n#!lv1{AtTgE_20HNe6Z&{w;h+a}064ruxVY z|7wGs8({PueoWq3+td3qwg{JIgrTGHY3^K__LvNp*irYms`r~ACm6G=#p(qygOWfx zAfypsDS2c?EkE397gq#2V;sY_P5aTI1=9M=#e=zA%`g*_zTuD-sK>QdV)eX@EFE5o z!F+>$xmWTvA%WY^WFwZWNoPjKUk^slr#He+RZYbXr~5feO2o{ZX)yLCweytfaaPqH ze4H7BRSgk2ZoeP;vPp3bi-W)7!QMz(W96mBdj?}|jt?3e8zJl6`6@e~D9=spEOyKA z3bN8rC{gX9=;L{M@$OX;F=zZ3`1EY1Cotiu8|&f91sXX7-gFCeM-%+rSpcXaRn^ZS zQRh_D>{PVSswlLEh7uBqMk2#MULyU+;NyGq*1z}uzd<1FpqFI;%#17ztFidV{{a)c B)J6aR literal 0 HcmV?d00001 diff --git a/src/img/os/mint.png b/src/img/os/mint.png new file mode 100644 index 0000000000000000000000000000000000000000..bf4969a81b37bbb65447de77dc69e5e1fcb3c21b GIT binary patch literal 1274 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+081LMvBpAc7|g8xGV{QC3b z_S*|5pYGawZ`H5AKQF#GGV^S0{toxdt@g9d)?Rvf^xpfc-N&+fj%D9}f9>$YO*z|~ zv$r|zyT4}5wW({bPuu@sUHP7%ntc%mA8xqv{M3&hKOTIzp10j~)Af1x-dwx!^8EU1 zGmCb4Z@51D=Bo=Eug~p1mi6!dzgw>^e*OOC(#vBr&Q!0wJn81k3o9;7IQR6><9Bzn zwmF`Aa;RX3$L+TlPe0wW`|gU}_g3t=xAN4}-KU@Kz4PwU@4vqacY5A`b7Sj`h2Oq^ z>pYUtbtLoq_ivkT%%6R(zII>amv5gxetp0F=8{DhIzN5=aQWr&o?|%+&vz_1*VcPH zukTp?jhE-HzdZNg!;Pblwj6r6aozP9`|q#qJ)S%3Y@OQDBU6EqXHgR57tFvHIs4SB zU$Y{3)#iSkqsrOyyNl!UaY@6+dJ-4TG=84;C4A=Vmp^~Z2<1^~KgRy(skE->!L}3A z!%m)95eqbfG0EHAh4DX=?mZxfy~NYkmHh>~h=_^Ai;w=ZfYQG_T^vI!PS*y%jKAz4 z5WA4wW9M2YQO*k;u3hTCUNFXXIRq}*l)&oxkxg4k?EI<*rlz9*M}2nr3J1UXZ7{R) z^QY5!&v=t9Wwf=n-IV3qeKs=a)ThEdXIf=qo{CN@OAR&s7~7bjA;Qz5S$gHltly&Q z9k1VYe&A8s8>n?xz4xD{^@Z}uvoF{)T)F!E-tvD5J^z~*MlbnrqV8?x1GDpo4GNYS zDX(C9_hI6Xj?hB!j1za(OVv8pg!DwQZZw>8)h>wb%jY!-f8rkfJMyHty>n&ZDmhy> z<-hjgyDGy3W{b6`N6om#_gBPAQ=4ht%ckd7Dil*HJX7>99O=3!dXaVgkuz`J^zf|j z^l7_zCWoUSHi2`_{>Ir`6(S-G*!6=yZrhL`_uRuEKH@_ki*AI5PKE#cAMX`|OFY!Y z>hEhlsSo%Fm^Z@#rK-!bVU)(u(}_c?mo<;yE1POmoEF1zvmzGc_^)~~9vUVs0CiCDkIpgrQpE8c~vxSdwa$T$Bo=7>o>zOmq#*b&U){j0~(yjjW7Jv<(cb3=H1P hEIovxAvZrIGp!Q0hPg-1)&Vszc)I$ztaD0e0syH0$x8qL literal 0 HcmV?d00001 diff --git a/src/img/os/opensuse.png b/src/img/os/opensuse.png new file mode 100644 index 0000000000000000000000000000000000000000..85330a5645b89990628b40d429608a7751e45b5e GIT binary patch literal 1221 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+081LN`lpAc7|0*3z#r90G$ zcdM4{QY}VDYNb0=8X6difa1GVi+8G&?oxuNDcPxByb~{KqmJQ(g-rG zVZQ^&8T%ow1(Ah2luLo+91%&sqT^>zhDMN+pYsIetfyUztM;(;YNt+spE>SpI+Pl zjI+y{bM9BI8@qMgL1i&+&-ovZapgY=mY#a`Qa}Ic?7Xv&WTXst>|xei-SF3C)^;z} zz2YV*=DeF8H?`lK5RqEISNJe z=v;ilyTsee^Yn>RiYq5LgejiCzLsH;=+r5pDi6{Y+*q`VEqP^jMwVkphVi3M8~WDC zMYP(Pc``dICkvYfi%nqS)A_`-CheKnw6JSt3E4S@qBm|@TUe}GZDFX%s%OZ?_*j5Po3&?fHrfB2QN2vAaej2y{rw96IoTJ4B&tk%9@2 zM~k!9!toC)`#6W-E-dM?Y#5i-JXt`1x-vjiLo!DMWSL39bRzzZfuu& zW186J^782qr+n+vVvh=F?8tMQ@AYxj4IhEcyOwS1GZqvP{L0HA+w1$_M}FSL)2=F( zYAMFC(HDhtZH1$(GMuNb&p2?x;;o0|a*@@)C8t_h?Y=R|V$UY76*Cu0GFWb$rRVqf zUftDnm{r-UW|x(fMJ literal 0 HcmV?d00001 diff --git a/src/img/os/oracle.png b/src/img/os/oracle.png new file mode 100644 index 0000000000000000000000000000000000000000..ebb8726de493f6134dddff692f0d6d7da7acef49 GIT binary patch literal 7228 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 literal 0 HcmV?d00001 diff --git a/src/img/os/void.png b/src/img/os/void.png new file mode 100644 index 0000000000000000000000000000000000000000..60aa27fc178e7263f22c2dee88f82968933217b1 GIT binary patch literal 1656 zcmZ`%eKb^Q7{4>a$Pk-|D5>?;7#d>=GsezL^BH5YL~1iLm`Nxy5p%XK`N*jao&AVn zV~M>p<7{RtTkSFoZHTjdlGJJYviT^5LS^6SwsX$@vG?5jyuaspe!us9p69+L;bHv6 z1V;h{L5qa~P9#`ez~{6G2P|>5cxV(C5Y&1#(vGM)RO)uMs$FGxI}8@lA&t65 zM310Zjb5Yf_(0I9&Ye4lAPCAied#o+0<@-%Cc|zzL&}itLU{QSplWSxHEu4*lkj2i zN|DwNG`$Mc03rfdqUqG2LU;idgJ3$<~OCfCGO#w79Yu4KDL= z=D}hk!NJMF!O;PAZR~9P=zb^$J%Yy39?_|S5vg_R`i^=-utUW;B>ONNiSSq&Ix%gp zmS<2&{3>LC!-T~sVN*eZ2$lf}auY!#d{_+Hj7FjXp9f1p5EcHLmGJZ90T#ewA-olo zfnwg_FZqQZ4@H?kD=d;Q;hmr(FkZkEfFIGW0@~9^k&eURk}{LPugT2MEUznPhp_1>5k6EOZWy=ZWCQ@1beTN|Wn57_d)$_!U`+5TQp$U17+;a+opkx9~c z1OM%I*8w5s*0xoDU&C&6kKTBq=i(gZSZemul+`hghvr`grD?~~kC3+ikUM+7?clpB zOC}m*5t~OJ=D7bhytB;w(Hi~x7XyShvD7mc2M3zhUwb1pQ6agn)f$^kOWsPX$2-kx zpA!`Ira6lST2~Pc;-A0yCKyNic8Wdu_`$5#-AJp#>0*oJS?}h%_t{x`vN%3-Eu?zT z14bIc=git_AF5Hlg3yKLF!4Ov!UKKNAl zgxqY!i;w&C^7XSG^0V!Ak8u_r5I_-xAUUH;kDbh`X=m+L)!LlruCe>FpyJux-? z%6idV?e2vZ(=Pxmw4u^Obj2(s!n)S!1+Q{-ZSyPMHxrPYn16P@*-r=U2 zG^XA7%EpYLUlaH-{zq=(qJGw%w`R=DKR9W=ltpwG6-_q4(V!e-1TeQm^ z=AQIcH58YxdAe@E9RJM1-WwlrocJASxWw|t_malg-=%Ks{awh-SV~vr+3`_k^QeF7 zT|JCTz1O^VXy&RX8|n_lu|2#3HQ-*jDY&tUM2RAamar!YED(iEp?Z`3y(yF^3Yq3d orje;$WMIji+eEeh5v1)-OqS*Rzu*_lv@;MuLT(tRi7n3m2hQG~<^TWy literal 0 HcmV?d00001 diff --git a/src/img/os/windows-server.png b/src/img/os/windows-server.png new file mode 100644 index 0000000000000000000000000000000000000000..ca9777427bfdd69d7361f27513bdb961b8fc8ee2 GIT binary patch literal 3424 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 literal 0 HcmV?d00001 diff --git a/src/js/main.js b/src/js/main.js new file mode 100644 index 0000000..e708d01 --- /dev/null +++ b/src/js/main.js @@ -0,0 +1,25 @@ +document.addEventListener('DOMContentLoaded', () => { + const notificationBanner = document.getElementById('notification-banner'); + const dismissButton = document.getElementById('dismiss-btn'); + + if (localStorage.getItem('notificationDismissed')) { + notificationBanner.style.display = 'none'; + } + + dismissButton.addEventListener('click', () => { + notificationBanner.style.display = 'none'; + localStorage.setItem('notificationDismissed', 'true'); + }); +}); + +const openMenuBtn = document.getElementById('open-menu-btn'); +const closeMenuBtn = document.getElementById('close-menu-btn'); +const mobileMenu = document.getElementById('mobile-menu'); + +openMenuBtn.addEventListener('click', () => { + mobileMenu.style.display = 'block'; +}); + +closeMenuBtn.addEventListener('click', () => { + mobileMenu.style.display = 'none'; +}); \ No newline at end of file diff --git a/src/js/music.js b/src/js/music.js new file mode 100644 index 0000000..d8f592f --- /dev/null +++ b/src/js/music.js @@ -0,0 +1,41 @@ +const albumlabel = document.getElementById("albumlabel"); +const albumart = document.getElementById("album-art"); +const song = document.getElementById("song"); +const artist = document.getElementById("artist"); +const album = document.getElementById("album"); +const loader = document.getElementById("loader"); +const musicContent = document.getElementById("music-content"); + +async function getLatestSong() { + const api = "https://lastfm-last-played.biancarosa.com.br/aidxn_/latest-song"; + try { + const lsResponse = await fetch(api); + if (lsResponse.ok) { + const latestSongJSON = await lsResponse.json(); + if (!latestSongJSON.track["@attr"]) { + albumlabel.textContent = "Last Listen:"; + } else if (latestSongJSON.track["@attr"].nowplaying) { + albumlabel.textContent = "Now Playing:"; + } else { + console.warn("[WARN] Invalid now playing status."); + albumlabel.textContent = "Last Listen:"; + } + + albumart.src = latestSongJSON.track.image[1]["#text"] || "/img/placeholder.png"; + song.textContent = latestSongJSON.track.name; + artist.textContent = latestSongJSON.track.artist["#text"]; + album.textContent = latestSongJSON.track.album["#text"]; + + loader.classList.add("hidden"); + musicContent.classList.remove("hidden"); + } else { + console.error(`Error: ${lsResponse.status}`); + } + } catch (error) { + console.error(`Error: ${error.message}`); + } +} + +(async function() { + await getLatestSong(); +})(); \ No newline at end of file diff --git a/views/about.ejs b/views/about.ejs new file mode 100644 index 0000000..4e5dc57 --- /dev/null +++ b/views/about.ejs @@ -0,0 +1,72 @@ + + + + + + aidxn.fun | about + + + +<%- include('shards/header.ejs', { req: req }) %> +
+

About Me

+

+ Looking to learn more? +

+
+
+

What you're looking for

+

Heyo! I'm Aidan, and I'm a human being, like you. I'm a Wikipedia editor, hobbyist programmer (Python, Node.js and PHP) and student. I am a troubled teen industry survivor and I also love music! I love walking (pretty much anywhere), particularly Boston and some Mass suburbs. I'm a cryptocurrency user and love it way more than credit cards/cash. However, I am strongly opposed to the adoption of Web3 technology.

+

I strive, as a person, to understand my peers in life. I consider myself to be extremely understanding and accepting, albeit nobody is perfect, and I still hold my biases.

+

Thus, I've tried to do about almost everything and learn about almost everything to get a better understanding of the world around me. I love to debate, talk and learn about other people's views, while keeping it judgement-free. I believe this has helped me find more diverse relationships.

+

In politics, I'm a strong Democrat and a supporter of the Pirate Party. I hope, by the time I die, that everyone may have fair human rights, open source is standard and the troubled teen industry is torn down or rebuilt into a truly healing environment. Also, let's try our best not to let AI take over too fast, eh?

+

If you want, you can check out my LastFM profile here. If you don't already know what LastFM is, you can see more about my music taste there. It's where the sidebar fetches now playing stats from, too!

+ +

Technology

+

I have a lot of experience with varying types of technologies. From servers to old XP machines, I've tried it all. I currently administer two Linux servers, both running Ubuntu.

+ +

Linux Distro Experience

+
    +
  • + Ubuntu logo Ubuntu 18.04, 20.04, 22.04, 24.04 (includes server versions of each) +
  • +
  • + Windows Server logo Windows Server 2012 R2, 2016, 2019, 2022 +
  • +
  • + Debian logo Debian 9 +
  • +
  • + Arch Linux logo Arch Linux +
  • +
  • + Void Linux logo Void Linux +
  • +
  • + Gentoo logo Gentoo Linux +
  • +
  • + Linux Mint logo Linux Mint +
  • +
  • + OpenSUSE logo OpenSUSE +
  • +
  • + Oracle logo Oracle Linux 8 +
  • +
+ +

Cloud

+

I also work a LOT in the cloud, but not the type you might be thinking about. I almost have an obsession with enterprise cloud computing. Hell, you're actually connected to one... right now! Here are some of my favorite platforms, ranked.

+

This section is a work in progress, for those who don't know cloud computing. I'm working to make the wording clearer, so the non-technical folk can still understand everything here!

+ +
    +
  1. Oracle Cloud
  2. +
  3. Azure
  4. +
  5. AWS
  6. +
+ +

You can learn more about my opinions on cloud platforms on this page.

+
+ +<%- include('shards/footer.ejs') %> \ No newline at end of file diff --git a/views/contact.ejs b/views/contact.ejs new file mode 100644 index 0000000..628c500 --- /dev/null +++ b/views/contact.ejs @@ -0,0 +1,46 @@ + + + + + + aidxn.fun | Contact + + + + +<%- include('shards/header.ejs', { req: req }) %> + +
+

Contact

+

Looking to contact me? You found it!

+
+ +
+

Contact Details

+

This one can be a hard one for most people, as I'm not a fan of modern social media, albeit I give in here and there.

+

Now, the part you came for!

+

If you're looking for my email, simply replace the brackets with the character it's referencing, like so: test[at]test[dot]com becomes test@test.com

+

This is in order to prevent bots from contacting me.

+ +
    +
  • + + Email: imlou[at]disroot[dot]org (PGP encryption preferred) +
  • +
  • + + Signal: [at]iusearchbtw.17 +
  • +
  • + + Telegram: [at]iusearchbtw42 +
  • +
  • + + Phone: Not given out to untrusted people. Contact elsewherefirst! +
  • +
+
+ + +<%- include('shards/footer.ejs') %> \ No newline at end of file diff --git a/views/index.ejs b/views/index.ejs new file mode 100644 index 0000000..f1a7904 --- /dev/null +++ b/views/index.ejs @@ -0,0 +1,50 @@ + + + + + + aidxn.fun + + + +<%- include('shards/header.ejs', { req: req }) %> +
+
+
+

Welcome to aidxnFUN

+

Welcome to my slice of the web... It's good to see you

+
+
+
+
+
+

Welcome!

+

My name is Aidan, but if you are on tilde.club, you will know me as ~lxu! I'm a technology enthusiast, and a Wikipedia editor, among other things.

+

Here, you can learn more about me, enjoy a sleek design, and even have some fun along the way!

+

This website is currently hosted in Frankfurt, Germany. Page load speeds may be impacted, however my website's data is hosted under stricter data protection laws. I'm not a millionaire, and thus helps me save money on hosting, and serve a wider range of countries with better speeds.

+

The content and code of this website is hereby released under the public domain. You are free to use this servers content for whatever you please, and you can additionally view this website's source code on GitHub here.

+
+
+

Where to start

+

This website has a lot of content, albeit spread apart. If you're interested in learning about me as a person, I'd obviously suggest my about page.

+

If you merely need to contact me, check out the contact page on the sidebar (or you could click that link).

+

This website is always a work in progress, and not every page is going to be finished, however I aim for every page to be functional and relevant. Content is always being added, as I progress through my life. Why not start early?

+
+
+

About the design

+

With this revision, I was aiming to provide a modern design, with an easy-to-navigate interface.

+

For this design, I chose Tailwind CSS. I appreciate their flexibility, though their documentation is terrible on purpose. They encourage purchasing their components subscription (which costs a lot of money!) all over the place. It has been a poor experience, but I have been able to figure it out with the help of their free elements, documentation, prior knowledge, and the docs.

+

This code is also under Public Domain, and can be found here. Feel free to use the code and content how you wish. If you would like to respect my best wishes, please do not use this content or code for AI. Thanks, if you respect me! :]

+
+
+

Music

+ <%- include('shards/music.ejs') %> +

My Music Taste

+

I am mainly into hip hop and rap, but I appreciate a slower song, as opposed to the fast nature of some rap songs. I feel like I seek songs that match my current energy level, and I can tend to have a low energy level during the day.

+

Some of my favorite artists include tobi lou, Skizzy Mars, and Kali Uchis. Some of my classics are Mike Stud (before his name change to "mike."), Skizzy Mars, tobi lou, The Neighbourhood, and Ryan Caraveo.

+
+
+ + + +<%- include('shards/footer.ejs') %> \ No newline at end of file diff --git a/views/shards/footer.ejs b/views/shards/footer.ejs new file mode 100644 index 0000000..a4b8fbe --- /dev/null +++ b/views/shards/footer.ejs @@ -0,0 +1,21 @@ + + + \ No newline at end of file diff --git a/views/shards/header.ejs b/views/shards/header.ejs new file mode 100644 index 0000000..40db172 --- /dev/null +++ b/views/shards/header.ejs @@ -0,0 +1,78 @@ +
+
+
+
+
+

+ old.aidxn.fun + + Do you prefer a retro design? Check out old.aidxn.fun! +

+ Go retro +
+
+ +
+
+
+ + +
\ No newline at end of file diff --git a/views/shards/music.ejs b/views/shards/music.ejs new file mode 100644 index 0000000..fe20c1b --- /dev/null +++ b/views/shards/music.ejs @@ -0,0 +1,21 @@ +
+

+
+
+
+
+ + +
+
\ No newline at end of file