SnapConv

Catatan teknis SnapConv

SnapConv adalah toolkit file lokal yang kebetulan berbentuk situs web. Berikut keputusan teknis yang membuatnya privat, jujur, dan cepat.

  • Statis sejak awal

    Produk ini situs yang di-export statis. Tidak ada route handler, server action, atau API pemrosesan, jadi tidak ada server yang bisa menerima file bahkan karena keliru.

  • Satu registry, satu sumber kebenaran

    Format, operasi, halaman alat, rute konversi, rekomendasi, dan entri sitemap dihasilkan dari registry metadata bertipe yang serializable.

  • Ukur dulu sebelum menjanjikan

    Setiap alat menguji dukungan decode dan encode browser secara nyata — termasuk encoding canvas dan codec WebAssembly yang dimuat malas — dan hanya menampilkan format yang lulus. Codec yang tidak tersedia dijelaskan, bukan diganti diam-diam.

  • Verifikasi setiap hasil

    File hasil diperiksa dari tipe MIME, signature magic byte, dan uji decode atau buka ulang sebelum ditawarkan untuk diunduh.

  • Batasi beban kerja

    Scheduler bersama mengatur concurrency, menurunkan resolusi saat halaman atau gambar melewati anggaran memori, membatalkan secara deterministik, dan membuang canvas, worker, serta buffer transferable.

  • Uji untuk browser yang kamu punya

    Kontrak dan pemroses diuji di unit dan suite browser nyata, dan alur end-to-end berjalan di Chromium, Firefox, serta WebKit — termasuk uji tanpa egress yang gagal jika file terpilih memicu permintaan jaringan.

Komponen penyusun

  • Static export Next.js dengan React dan TypeScript ketat
  • Zustand untuk antrean pemrosesan di memori
  • Decoding gambar native, encoding canvas, Web Crypto, dan pipeline Blob bertahap
  • PDF.js untuk parsing dan rendering, pdf-lib untuk manipulasi halaman
  • client-zip untuk pengemasan ZIP lokal tanpa perjalanan ke server

Batasan yang jujur

Dukungan browser tidak seragam. Encoding AVIF, format animasi, dan codec media berat berbeda antar engine, jadi kemampuan itu tetap eksperimental sampai lulus uji fixture, memori, dan lintas browser. Melaporkan batasan lebih dipilih daripada berpura-pura semua format universal.