From 04aa748bc9369db17692ef76642dd3fa5f8ef1aa Mon Sep 17 00:00:00 2001 From: bakonpancakz Date: Thu, 28 May 2026 21:52:26 -0700 Subject: [PATCH] Swap to icon grid instead of individual icons saves like 3kb :p --- main.go | 25 +++++++------ private/directory.html | 22 ++++++----- private/icon_archive.png | Bin 653 -> 0 bytes private/icon_audio.png | Bin 906 -> 0 bytes private/icon_config.png | Bin 486 -> 0 bytes private/icon_document.png | Bin 487 -> 0 bytes private/icon_folder.png | Bin 571 -> 0 bytes private/icon_folder_open.png | Bin 695 -> 0 bytes private/icon_generic.png | Bin 496 -> 0 bytes private/icon_grid.png | Bin 0 -> 2944 bytes private/icon_photo.png | Bin 554 -> 0 bytes private/icon_program.png | Bin 389 -> 0 bytes private/icon_redirect.png | Bin 793 -> 0 bytes private/icon_script.png | Bin 510 -> 0 bytes private/icon_video.png | Bin 511 -> 0 bytes private/styles.css | 70 ++++++++++++++++++++++++++--------- 16 files changed, 79 insertions(+), 38 deletions(-) delete mode 100644 private/icon_archive.png delete mode 100644 private/icon_audio.png delete mode 100644 private/icon_config.png delete mode 100644 private/icon_document.png delete mode 100644 private/icon_folder.png delete mode 100644 private/icon_folder_open.png delete mode 100644 private/icon_generic.png create mode 100644 private/icon_grid.png delete mode 100644 private/icon_photo.png delete mode 100644 private/icon_program.png delete mode 100644 private/icon_redirect.png delete mode 100644 private/icon_script.png delete mode 100644 private/icon_video.png diff --git a/main.go b/main.go index ec4c058..7c6c48a 100644 --- a/main.go +++ b/main.go @@ -21,7 +21,7 @@ import ( var ( //go:embed private/* privateDirectory embed.FS - serveHash = fmt.Sprintf("%x", time.Now().Unix()) + serveHash = fmt.Sprintf("%X", time.Now().Unix()) serveDirectory = os.Getenv("HTTP_DIRECTORY") serveAddress = os.Getenv("HTTP_ADDRESS") tmpl = template.Must( @@ -83,32 +83,33 @@ func getEntrySizeHuman(b int64) string { func getEntryIcon(name string, isDir bool) string { if isDir { - return "icon_folder.png" + return "icon-directory" } switch strings.ToLower(path.Ext(name)) { // Custom Filetypes case ".redir": - return "icon_redirect.png" + return "icon-redirect" // Default Filetypes case ".mp3", ".flac", ".ogg", ".wav", ".aac", ".opus", ".m4a": - return "icon_audio.png" + return "icon-audio" case ".mp4", ".mkv", ".webm", ".avi", ".mov", ".m4v": - return "icon_video.png" + return "icon-video" case ".jpg", ".jpeg", ".png", ".gif", ".webp", ".avif", ".bmp", ".tiff": - return "icon_photo.png" + return "icon-photo" case ".zip", ".tar", ".gz", ".7z", ".rar", ".zst", ".xz", ".bz2": - return "icon_archive.png" + return "icon-archive" case ".exe", ".elf", ".bin", ".out", ".appimage", ".deb", ".rpm": - return "icon_program.png" + return "icon-program" case ".pdf", ".txt", ".md", ".srt", ".vtt", ".ass", ".log": - return "icon_document.png" + return "icon-document" case ".html", ".ts", ".js", ".go", ".rs", ".pug": - return "icon_script.png" + return "icon-script" case ".json", ".xml", ".yaml", ".toml", ".ini", ".cfg": - return "icon_config.png" + return "icon-config" + default: - return "icon_generic.png" + return "icon-generic" } } diff --git a/private/directory.html b/private/directory.html index aef3112..c369886 100644 --- a/private/directory.html +++ b/private/directory.html @@ -8,12 +8,16 @@ Browser: {{ .Path }} @@ -45,20 +49,20 @@ {{ if .Parent }} -
+
../
{{ end }} {{ range .Item }} {{ if .IsDir }} - -
+
+
{{ .Name }}
{{ else }} - - + +
{{ .Name }}
{{ end }} diff --git a/private/icon_archive.png b/private/icon_archive.png deleted file mode 100644 index 729e8e2dec01015797c20830ebf5a97a801a027c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 653 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7e6l0AZa85pY67#JE_7#My5g&JNk zFq9fFFuY1&V6d9Oz#v{QXIG#NP$DY8C&U#UED7=pW^j0R11QeGnB?v5!k53-z#qtAFY)wsWq-xW#Hhi1 zr^Es1GzQfY*NBpo#FA92CkWnggVj!O-S zhTQy=%(P0N2183-0~1{X!w>^gD`R6TLkoz8q7RZ9Kn)sj8%i>BQ;SOya|_TcF##HH z4AHZ9#a>V-|Mzrp46!&pb#h|yAqAec&M7n2Zdqz|_tm!l|IJk|gfV@zxzE4%^wZ2w zY#oN43MoK7mW=u`9)y?0bS0($`+n7UvO~q3xO^!+wZ&hQAZf zj7!dQ?Tr)m=>=vr7c;F}^Ir6a=2oWDo9^VLG1rx!l@?%ktYGN>U%ueW0fzSJOcUg$ za9wgXY<}lBbJ3>@ejk^yr*>U`&ajl-()HBl*0}xMJ8KTz%3b!y!iRD9a(})WjyR?w zZGn@)tbf*?pI7tY#jdi(Pme5Yj4m8yS(1Nq`z@PVM&X$sKfKpbek&BTO7MEqcebPm qX67f&9bu0IEOVm2-1I*GP*#vp`R3=Jm5+fz!QkoY=d#Wzp$PzA?DHZ3 diff --git a/private/icon_audio.png b/private/icon_audio.png deleted file mode 100644 index 82e9e8fd89291225e14efc8c7c6cad983d3f4075..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 906 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7e6l0AZa85pY67#JE_7#My5g&JNk zFq9fFFuY1&V6d9Oz#v{QXIG#NP~uO3Plzj!1_B2MhlU0QAX=~>VaXCtAj908;Q$Qu z_4Tb|3CphKffP8ems7B?D6BrMMXt2GBT@I7inv2&zUo4$&zfKIg1xBzIyfQ zjvYIWA3y%;)vI&oVzRTdKYskUdUfc>kI4-U4XanL?&~Z1|G#kOPVN8y`~Lqwwt96# zUmuWd`TzgpRjWd;UbVb>brl~UUuY;$OT*Qxg+G3@Z`!nJ=g!c_k3;X=$=2Exp&crj0FO|p)Cv%95aIdGi3Pwm3`sy zB9Kjh%QnT~#lc3#4?IgU*Ki*&=$v}Z;DNkY_mjqr7mw^%dU=~|?qieU0|w^XZzOb- zEfA5oz3!=_$KN%5-3iA_%5C{H<_EBBt*SlG>-1>3>8WGdGJ&)2+gsRhC9>s2&3Y(N z=6~t_yyc18nBCcSB}%Zg%ww{&c>O)L+(5yO{rS!24WAP%dKOuzMY*=Oc3;%!TfD+u zPgXM`Myh|kgo50q%gQR|JA2mU=RLOGwu!q_w$sKJSD)PhMhAnZtDnm{r-UW|bcl8A diff --git a/private/icon_config.png b/private/icon_config.png deleted file mode 100644 index 7b46843ba31acd113ad63c0f2756ba83c6f30641..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 486 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vO2U$sR$z3=CCj3=9n|3=F@3LJcn% z7)lKo7+xhXFj&oCU=S~uvn$XBC?Oi)6XFU|(9rPz|9>Fkz<~n|4Gci$i5?)F zK#IZ0z{pJ3z*N`3D8#_f%Gk`x)L7fVz{NTVi2lVhGVQW#ad5Ks|FkT^vI+&M&>- z&DZ20z;Zz`&SBYJhPy|;MyS5wj5{D;$__WZ8noI`)}~C?!x|p!pcK^dYX3_ Y)BoCS%9;I`2k1}+Pgg&ebxsLQ0I)crbN~PV diff --git a/private/icon_document.png b/private/icon_document.png deleted file mode 100644 index d57f5d483f857d22ceb07539f6ef58fecd619204..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 487 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vO2U$sR$z3=CCj3=9n|3=F@3LJcn% z7)lKo7+xhXFj&oCU=S~uvn$XBC?OHx6XFU|(9rPz|9>Fkz<~n{3?L?uGb>+XB2b92 zB*-tA!Qt7BG!Q4r+uemJjk_iV$YC$>^mS!_#mdB}$T2HLDH158TH+c}l9E`GYL#4+ z3Zxi}42;Zl4NP?nj6w_ytPCuy42-ow41=c?=MJH0$jwj5OsfQHFtpS)Fwr$I3^6dZ zGB&m{w18+R`XH$R)Sv;kp(HamwYVfPw*bWwLy#T=sGi!z?jSw0JzX3_G|n&WJIKjo zDB!yJM#FBwJ^y*nm>P&mFo`LwblAWU>+xIdCX2D7|GvkM&!$hA_3T)nsG7+ajkIXj zRi$F;u}3$xMT?z2YIZQD<)W|6yVNN+xfo}}X80+o%=!_uG0i2yee&5?|pdV Tc#S%MS13By^p1!W^kJu!{ z8HG73<0k{9g*{yyLo808oqU$}kO5EYX^z~Zdy|+$#2hx&JU_rT?YlhVZ_7+!;lgJt zvs&Zr{=52I=0AJklj#087iv!*^IF&wBX_hSFIhpEeZoXxj}u>OUzvvAoLDNK^*TtD z(^&uJ2L(<~GaZ*BOF9KME^wHcP<`XGD)aNRuQ>I)`*}F}Tx1X4n{57IURevngDaxp z!e!CS`z<%9g|a%meIldF=slTR%cWB})I_uAqs!%WXM*+DEjcUGm+){!Z1;2*IgW$w9AeBGio=7pC9>E_ zt+bK(?Uq>Pp&h7aGRH_EZGnXEM30N_O69U<<|WtuZT%l3zrO47* Tn@_5M8W=oX{an^LB{Ts5_sh{q diff --git a/private/icon_folder_open.png b/private/icon_folder_open.png deleted file mode 100644 index 5852574a757435f701e5405683dba1afd4ae2efd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 695 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sEa{HEjtmSN`?>!lvI6-E$sR$z z3=CCj3=9n|3=F@3LJcn%7)pT}UnMXwSj}Ky5HFasE6@fgVHw~P;tHhO+S-(ql>Yzz zaNxj!A3uIHG%)=CKl99)w3#y*o@M?NdG>=ji9gJH<@Ntw{?jF~{H3U2o!|P7 z4gaN;e&%;Rz4UayqL^3I*8ScU|4$WNyRVq_|68fI&er zxk80`ME=DZstPu?)o(Y|3HW6$ts}rz@c0;4*vIpqM4oc;?kG&Fl>Yz3HAID_!2gH~ z%bhO{M~)n1C}rJw@cRkVDuy>wEgVOrL>ZEwNGFOuS}xA16}Tghaf9jf58@MUZ)4~Z zH4Z5YdYLMbJwo--xB%4^}BnmMcuLX$aS5=KRbXWXiLtrs$UVxN9F{^wG+^-fvLRg11Le8~))m3C|PeEkPE z=g$m2P+)iIgZN*j$h&5V_mT{%fsvtF;u=wsl30>zm0Xkxq!^403@vmG%yf-RLX3>9 t42-Qzjdcx7tPBiJdf)X&(U6;;l9^VCTf+{q)X$*!_H^}gS?83{1OWcW3BCXT diff --git a/private/icon_generic.png b/private/icon_generic.png deleted file mode 100644 index 0cf0ebbafa2c113c6b72eec9524a998e94585857..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 496 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vO2U$sR$z3=CCj3=9n|3=F@3LJcn% z7)lKo7+xhXFj&oCU=S~uvn$XBD4`hO6XFU|(9rPz|9>Fkz<~oGssRXr03z1#TB)NM z$YU%C@(X5gcy=QV#7XjYcVSB7u1NuM*h@TpUD;o;GBIe1-zz^q87QP$;u=wsl30>z zm0Xkxq!^40jLdWmOmz*6LJSP73@oe+jI}`wgQpee4xwns%}>cps|0E=wA3{)(KRp( zF)+0B;Ln|YwC1-DPOabbd?djqeqH%ud z1w%e2MFG};bqijz%BU>7^QOOZ?L}z;zl2TVA2>|Dghf{evR^k~zI!a*ZpKOWADS~M}qHB&?p6TbR>05Eo(AA-_ z_~A+K)FVe5ws2I)?OgIy^+D|^sT0qqFg6CgSv!4N(j95vji2UaKCb`6+P?b<_XR`w Y>aA{?@7+7@ct$?PW>o@!fACQo! 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 Q7^A@2g3Wrk!}G#_0e19LBme*a literal 0 HcmV?d00001 diff --git a/private/icon_photo.png b/private/icon_photo.png deleted file mode 100644 index dd2e0f7869266cace59cfc3ad5d28600bbda3dfa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 554 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vO2U$sR$z3=CCj3=9n|3=F@3LJcn% z7)lKo7+xhXFj&oCU=S~uvn$XBD4`PI6XFU|(9rPz|9=pJf#E*`h;`t=frbV!3&?3; zcr@YeIiNISNswPKgTu2MX&_FLx4R2d8h1?!ki%Z$>Fdh=ij|2`Q&E85z!oT^TH+c} zl9E`GYL#4+3Zxi}42;Zl4NP?nj6w_ytxOE9j19C646F<8+(mJ^_+25X?gIT?-PWkxbusKJ#uD{3_Df)t})b76d0zWG6{Mi90x@N zcI}>7mdeGk>UBm`w8Mm3PZGIHmL6oi9bMEUxI?eaynfxnd3MXY5+8V;mpPG?Fh9iN z!HpX!0u5rj^JSZayknG`%vqB6q|1poo^3L>I&(Tcu-Ego!?p$06XXgMd4ISs|HJ<* fT%22=<($1{di)lDmmAhV-!XW)`njxgN@xNA%7L_$ diff --git a/private/icon_program.png b/private/icon_program.png deleted file mode 100644 index 4660f9ae2ec982f64660b873eb2d01cea254e7f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 389 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vO2U$sR$z3=CCj3=9n|3=F@3LJcn% z7)lKo7+xhXFj&oCU=S~uvn$XBC?OQ!6XFU|(9i%R4;(naz_9=S|NqC*8jb<^j3q&S z!3+-1Zlr-YN#5=*tUvN!g6v=~@$_|Nf5pngsK_xZMJW;}q*~${QIe8al4_M)lnSI6 zj0}v-bPY^(4U9qz46F<+tPG5`K@5YZ73U72Xvob^$xN#RYB03aH89aNFbpv;wK6ug zGPHnbDEc6&0o0%Yx1l66H?_DVF}DE45<`$41E`+b#qJhsn>&q2X+RNOWr>)1rkQ3Kby@8yKo)B)KdVk~+{)!|+un Vk6HiLL3f~044$rjF6*2UngE+HYn}iA diff --git a/private/icon_redirect.png b/private/icon_redirect.png deleted file mode 100644 index 3370282058af8adad67a4479c4c977f16367289e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 793 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vO2U$sR$z3=CCj3=9n|3=F@3LJcn% z7)lKo7+xhXFj&oCU=S~uvn$XBD4`YL6XFV_8UFu2aNxlI{|pTc4L}U!g9wI({~#eC z4@iLc@6Agu04c_jAirP+hi5m^K%69RcNfl&H# zmbgZgq$HN4S|t~y0x1R~10yqC15;fC;}9cbDnC}Q!>*k zff@`gbq!2(4GcpJOs$NKtqd(78j3zhY5+B8z-=hW%uOvWNz5%kx5UiK$QYu>wB|t! z(9yd+T^vI+&bv^X?X55Z;t1ZmP_t-N)CJVj%_;Ru=2d_0=A`o zzq@qmFNO5|-j^2Wb^0xzri3!@gB>>=oTnb))XbWqyklAXrfs)$B!rjhFuu9f&NtU5 zSdmlth*0_av+A>A_#PF0JEd{xUfN%tC5vS*#tUdqM_3pZ}ZMM=( zmPrfPrM5;*%$#*lMY*f_$ZL07p4{I79G(J-mo!Tk|K{mT{&_cHl8X3UjZK^N8hQ40 znA8?5zExm0=cFTNq@dEy7Z1N(mQ60)XQaqddf0yI{HLGZ*Q{*(aOK@Lc{ACvDeGge zNqqb4UQ_>f@#mr$56!=7-@aqKzW>?usM>!AWS)noUW=63Tv2ssMtrsRztt60pUv-_ by<Fkz<~n{Kt@AD2ZzrxAfK@$ z$S;_|;n|He5GTpo-GwQQyCwz5VK4FYb!C6W%EYL_e5b?#XexthiEBhjN@7W>RdP`( zkYX@0Ff!9MFx53M3NbLSGO(~RFxCb!44zh;JA|SkH$NpatrDog&{EgHMAyJD#K6?b z*x1U@0-~YlgQNyfg9hA&lFZ!H;*!MN0u)OOtxSN%LoM06VlOCwwtBiahG?A6?LWwS zSb>M3)5>uH4@1*F;Wc~#2U#?PL$rSP2lzA<2EMPHlcRiOlhC4#H~Ma-Elm4(OYPwm zl^pMYEwYyw4ruypyD1kC|41`M^XPHYl0fF{ep^?e{-Apw=LNl3#P-j9ixcCGzzX@> zn%Bi*x9>R6a%SoY7QUZbo(L(wY?`E}p}4U2D67zq>Z$xf6*F(oUwpwLeiM_s+u5`S v9@{tTs)dFml{+-Ydi@daY<$Ef^O3be#6$EuyZKX~2N*nE{an^LB{Ts5w>+q& diff --git a/private/icon_video.png b/private/icon_video.png deleted file mode 100644 index 34d2d4161d7c384832b7e587f375df7272cbc9fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 511 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnF3?v&v(vO2U$sR$z3=CCj3=9n|3=F@3LJcn% z7)lKo7+xhXFj&oCU=S~uvn$XBC?OZ%6XFU|(9rPz|9>Fkz<~omx}kvq!~qfw3`gw? zfu=ApmIV0)GdMiEkp|)p1!W^uUMHF6**?5C`AH=R7+eVN>UO_ zQmvAUQh^kMk%5t!u7Rnpfl-Koft7)Um4UG~h+*)w;@lw=4Y~O#nQ4_k4ThGw1}3@& zh9L%~R>sCwh87SFMIR(JfEqO5Hk4%MrWThZ<`$q>VhGY>0M%2w*d3&2t*47)h{pNe zi@tn^6a-iw7*;VP?s3TEDGm4X4~VQ_T>pSkO8EP-?sc{s`Su5g*$GYh&KkwRz@YS$ zLow)R0`H>r4ob|kQZA=EI8WZnS&;E}S$0djygJ(z+2%{k8{Ro?@Y`UW{8H{+M_Zdu zwA@<(Hzw&_lEOz;oBm6Y`*LUR)%M1!m0u4z+FuP?`(hdIi=W%_!b9pk^Cu+cI~z4v pTh8ZcmpZlk5C2E$DGbwC_pQ0)+V(j)bp_Dj44$rjF6*2UngA+Gq`d$D diff --git a/private/styles.css b/private/styles.css index 9cb59b0..703593f 100644 --- a/private/styles.css +++ b/private/styles.css @@ -1,3 +1,5 @@ +/* Layout */ + body { margin: 0; } @@ -26,13 +28,11 @@ div.foreground { } div.pattern { - background: url("/private/bg_pattern.png?v={{ .Version }}"); background-repeat: repeat-x; height: 152px; } div.graphic { - background: url("/private/bg_graphic.png?v={{ .Version }}"); width: 256px; height: 259px; position: absolute; @@ -56,12 +56,6 @@ div.directory { flex-wrap: wrap; } -a.entry[data-type="directory"] div.icon { - background-size: 32px 32px; - height: 32px; - width: 32px; -} - a.entry { display: inline-flex; flex-direction: column; @@ -73,7 +67,7 @@ a.entry { color: inherit; } -a.entry img.icon { +a.entry div.icon { height: 32px; width: 32px; } @@ -87,7 +81,6 @@ a.entry span.filename { } @media (max-width: 600px) { - a.entry { padding: 4px; width: 100%; @@ -96,14 +89,57 @@ a.entry span.filename { gap: 8px; } - a.entry img.icon, - a.entry[data-type="directory"] div.icon { - background-size: 1em 1em; - height: 1em; - width: 1em; - } - a.entry span.filename { font-size: 1em; } } + +/* Icons */ + +.icon-archive { + background-position: 0 0; +} + +.icon-audio { + background-position: -32px 0; +} + +.icon-config { + background-position: -64px 0; +} + +.icon-document { + background-position: -96px 0; +} + +a.entry[data-type="directory"] .icon-directory { + background-position: 0 -32px; +} + +a.entry[data-type="directory"]:hover .icon-directory { + background-position: -32px -32px; +} + +.icon-generic { + background-position: -64px -32px; +} + +.icon-photo { + background-position: -96px -32px; +} + +.icon-program { + background-position: 0 -64px; +} + +.icon-redirect { + background-position: -32px -64px; +} + +.icon-script { + background-position: -64px -64px; +} + +.icon-video { + background-position: -96px -64px; +}