100 días, 87 herramientas, cero servidores

Pasé 100 días construyendo ToolKnit. Es una suite de 87 herramientas basadas en el navegador.

La mayoría de los sitios de herramientas funcionan así:

  • Subes un archivo.
  • Un servidor lo procesa.
  • Descargas el resultado.

Esto significa que tus archivos PDF y fotos sensibles se quedan en el servidor de otra persona. Yo quería algo diferente. Cada herramienta en ToolKnit se ejecuta completamente en tu navegador. Ningún archivo sale de tu dispositivo.

Esto es lo que aprendí sobre construir sin un backend.

El Stack

  • HTML y Tailwind CSS.
  • Vanilla JavaScript.
  • PHP solo para estadísticas simples.
  • Cero frameworks. Sin React. Sin Vue.

¿Por qué HTML estático?

  1. El SEO es mejor. Google rastrea páginas estáticas al instante. No hay retrasos de hidratación.
  2. La velocidad es mayor. Los usuarios obtienen las herramientas de inmediato. No tienen que esperar a que se carguen grandes paquetes de JavaScript.
  3. Los costes son bajos. Casi no utilizo potencia de servidor.

Los desafíos Construir 87 páginas sin componentes es difícil. Si cambio un enlace del pie de página, tengo que editar 87 archivos. Tuve que escribir scripts de Python para gestionar esto.

Aprendí los límites del navegador:

  • La compresión de PDF es difícil. Requiere una manipulación compleja de flujos para evitar la corrupción de archivos.
  • La síntesis de audio es profunda. Crear un sonido de piano realista requiere múltiples osciladores y armónicos personalizados.
  • El vídeo es pesado. Usar ffmpeg.wasm funciona, pero la descarga de 32 MB es una carga para las conexiones lentas.

Mi mayor lección Elimina las funciones que casi funcionan.

Construí una herramienta para Live Photos de iPhone. Tenía tres fallos principales:

  • El cálculo matemático para las esquinas redondeadas era incorrecto en la Canvas API.
  • La transcodificación de vídeo tardaba demasiado.
  • Aplicaciones como WeChat eliminaban los datos que yo necesitaba.

Una herramienta que es un 90% funcional erosiona la confianza. Si no es excelente, no la lances.

¿Qué sigue? Ahora estoy construyendo una aplicación de escritorio usando Tauri y Rust. Seguirá la misma regla: todo el procesamiento se mantiene local.

Resumen de la construcción de 100 días: • 87 herramientas lanzadas. • 3 herramientas eliminadas. • 0 dependencias de frameworks. • Más de 3,000 usos totales.

¿Estás construyendo herramientas del lado del cliente? Cuéntame sobre tu arquitectura en los comentarios.

Fuente: https://dev.to/dngzihng114379/100-days-87-tools-zero-servers-what-i-learned-building-a-fully-client-side-utility-suite-1bh0