tofufirme/readme.md
2023-04-20 12:58:13 -03:00

1.1 KiB

tofufirme justforfunnoreally.dev badge

un tofu firme

un proof of concept de un coso que guarda un sitio estático en una BD de sqlite3 con los archivos comprimidos con brotli, y otro coso que sirve el coso.

¿por qué?

porque la mayoría de los navegadores soportan brotli, y quizás no tiene tanto sentido guardar la versión descomprimida y la versión comprimida en gzip cuando la mayoría de los pedidos solo van a pedir la versión de brotli.

entonces si solo guardamos en brotli, podemos servir eso y descomprimir en vivo si lx usuarix no soporta brotli (que, creo que la descompresión es más rápida que la compresión).

¿funciona?

este PoC funciona. un sitio pesado en texto/HTML pero liviano en otros recursos pesa 79MB vs. 352MB (incluyendo .gz y .br).

a ver...

pnpm install
# el sitio tiene que estar en input/
node compress.js output.sqlite3
node server.js output.sqlite3