Home Blog Saya Buka Akses Aplikasi Buatan Saya unt...
Saya Buka Akses Aplikasi Buatan Saya untuk Publik

Saya Buka Akses Aplikasi Buatan Saya untuk Publik

142 views 6 min read
6 Min Read • New Post

Saya Buka Akses Aplikasi Buatan Saya untuk Publik

Pernah mikir nggak, saat kita upload dokumen sensitif ke situs compress PDF atau gambar online, filenya lari ke mana?

Author
Debi Kurnia Putra
debikurnia.id

Jadi ceritanya beberapa bulan lalu saya lagi butuh tools buat kompres gambar. Sebenarnya simpel aja kan? Tinggal googling "compress image online", pilih situs yang muncul paling atas, upload, download, selesai. Tapi waktu itu saya malah kepikiran, "Eh tunggu, file saya ini sebenernya diapain ya sama mereka?"

Bayangin aja. Kalau seandainya saya upload foto yang mungkin ada di dalamnya data sensitif. Bisa jadi screenshot dokumen kerjaan, bisa jadi gambar yang ada informasi pribadi. Terus file itu ke-upload ke server yang entah dimana, diproses sama algoritma yang entah gimana, disimpen atau enggak juga saya ga tau sama pemilik tools. Yang lebih serem lagi, saya bahkan ga tau siapa yang operasiin situs itu.

Khawatir? Iya.

Sama kayak waktu saya butuh split PDF. Ada dokumen kerjaan yang lumayan penting, dan saya cuma butuh halaman 3 sampai 5 aja. Nah bingung kan. Masa harus upload 20 halaman dokumen ke situs aplikasi random di internet cuma buat ambil 3 halaman doang?

Saya bukan orang yang super paranoid banget soal privasi sampai pakai VPN kemana-mana atau nutupin webcam laptop pakai plester. Tapi untuk hal-hal yang berhubungan sama data sensitif, rasanya kok ya agak susah untuk percaya penuh sama tools gratisan yang bahkan ga jelas terms of service-nya gimana.

Ujung-ujungnya Bikin Sendiri Aja

Akhirnya saya mikir, "Ya udah deh, coba bikin sendiri aja." Awalnya cuma buat keperluan pribadi. Saya pengen tools yang bisa saya pakai tanpa harus khawatir file saya nongkrong di server orang lain. Tools yang prosesnya jelas, yang ga nge-track kemana-mana, yang beneran "gratis" dalam artian saya ga bayar pakai data pribadi saya.

Jadilah saya mulai bikin tools web sederhana. Satu, dua, tiga, eh kok ya lama-lama makin nambah, saat tulisan ini di posting, udah ada enam aplikasi. Sekarang semuanya udah bisa diakses di app.debikurnia.id, dan saya buka untuk umum. Siapa tau ada yang punya keresahan yang sama kayak saya.

Tools-nya ada apa aja?

  • Yang pertama ada KompresorX buat kompres gambar. Simpel, langsung pakai, ga ribet. Drag/pilih gambar dari device kamu, atur kualitas kompres, download hasil. File ga kemana-mana.
  • Terus ada CaptureX buat ambil frame dari video. Kadang saya butuh screenshot dari video, tapi males buka video editor segala. Nah ini tinggal drag/pilih video, pilih frame yang mau diambil, jadi deh gambar.
  • SplitPDF buat potong-potong halaman PDF tertentu. Misalnya dari PDF 20 halaman, saya cuma butuh halaman 5-10, bisa langsung ambil itu aja.
  • MergePDF kalau sebaliknya. Punya beberapa file PDF dan pengen dijadiin satu. Pilih beberapa file, atur urutannya, merge, selesai.
  • OCRX buat ekstrak teks dari gambar atau PDF. Pernah kan dapet dokumen yang isinya cuma scan-an doang, terus pengen copy paste teksnya tapi ga bisa? Nah ini dia solusinya.
  • MetaX ini agak beda. Buat yang jual foto di microstock kayak Shutterstock atau Adobe Stock, sering kan ribet bikin title sama keywords yang SEO friendly? Nah ini pakai AI buat generate metadata otomatis. Lumayan ngirit waktu.

Dan yang Paling Penting Soal Privasi dan Keamanan

Ini prinsip utama dari semua tools yang saya bikin. Bukan fiturnya yang wow banget (jujur aja, tools saya ini masih jauh dari sempurna), tapi gimana saya nge-handle data pengguna itu prinsip yang paling paripurna. Ehem.

Pertama, proses lokal. Untuk tools yang ga butuh AI seperti KompresorX, CaptureX, SplitPDF, MergePDF, semua proses terjadi di browser. File yang di-upload itu cuma ada di komputer pengguna, ga pernah nyentuh server saya sama sekali. Jadi misalnya internet tiba-tiba mati di tengah proses, tools-nya tetap akan jalan normal. Karena emang ga butuh koneksi.

Proses Kompres gambar dilakukan 100% di browser pakai Canvas API

export function compressImageToBlob(img, quality, outputFormat) {
    return new Promise((resolve, reject) => {
        const canvas = document.createElement('canvas');
        const ctx = canvas.getContext('2d');

        canvas.width = img.naturalWidth;
        canvas.height = img.naturalHeight;

        ctx.drawImage(img, 0, 0, canvas.width, canvas.height);

        canvas.toBlob((blob) => {
            if (!blob) {
                reject(new Error('Gagal membuat blob'));
                return;
            }
            resolve(blob);
        }, outputFormat, quality);
    });
}

See? Ga ada fetch() ke server mana pun. Semua pakai Canvas API browser. Jadi misalnya internet tiba-tiba mati di tengah proses, tools-nya tetap jalan normal. Karena emang ga butuh koneksi.

Kedua, tanpa tracking pengguna. Saya ga track siapa yang pakai, dari mana, atau lagi ngapain selama di halaman aplikasi. Analitik yang saya pasang cuma hitung jumlah klik secara agregat. Itu pun cuma buat tau "oh ternyata yang paling sering dipake aplikasi ini ya", bukan yang buat stalking perilaku individual itu ya.

// Track the click - ANONYMOUS only (privacy-first analytics)
$clickData = [
    'timestamp' => date('c')
];

track_click($appId, $clickData);

Yang disimpan cuma timestamp. Titik. Ga ada $_SERVER['REMOTE_ADDR'] buat ambil IP address, ga ada $_SERVER['HTTP_USER_AGENT'] buat tau browser apa yang dipake, ga ada session atau cookie tracking. Saya literally ga tau siapa yang pakai tools ini. Dan ini dari sisi JavaScript yang ngirim data ke server:

/**
 * Privacy-Friendly Analytics Tracker
 *
 * Tracks feature usage and errors anonymously
 * NO user identification, NO personal data
 */

export async function trackFeature(app, feature, value = null) {
    try {
        await fetch(API_ENDPOINT, {
            method: 'POST',
            headers: { 'Content-Type': 'application/json' },
            body: JSON.stringify({
                type: 'feature',
                app: app,
                feature: feature,
                value: value
            })
        });
    } catch (error) {
        console.debug('[Analytics] Feature tracking failed:', error);
    }
}

Body yang dikirim cuma type, app, feature, value. Ga ada cookies, ga ada fingerprinting, ga ada identifikasi user sama sekali.

Ketiga, mekanisme AI yang aman. Nah untuk tools yang pakai AI seperti MetaX dan OCR, ini agak tricky. Karena proses AI kan butuh server. Solusinya gimana? Pengguna pakai API Key yang bisa di dapat dari Google AI Studio milik kalian sendiri. Jadi bukan saya yang nyediain API Key AI-nya, pengguna yang input API Key-nya sendiri ke tools saya. Key-nya cuma disimpen di memori browser pengguna secara sementara, dan hilang begitu tab ditutup. Saya sendiri ga pernah liat atau nyimpen key orang/pengguna.

Intinya saya cuma nyediain "wadah" buat proses. Data tetap di tangan pengguna.

Gratis Sampe Puyeng

Semua tools ini gratis. Ga ada paywall, ga ada "upgrade to premium", ga ada batasan jumlah pemakaian. Boleh dipake sesuka hati. Sampe puyeng. Syukur-syukur bisa sampe kalian kaya-raya. Aamiin.

Tapi saya juga harus jujur, tools ini masih jauh dari sempurna, penanganan error kadang masih nge-bug, dan mungkin ada corner case yang belum saya handle. Makanya saya bilang tools ini masih terus di kembangkan/diperbaiki, namun fungsi utamanya udah jalan dengan baik kok.

Kalau ada yang mau coba dan nemuin bug atau punya saran, saya bakal seneng banget denger feedback-nya. Ga perlu bayar, ga perlu apa-apa. Cukup doain aja semoga tools ini bermanfaat dan terus bisa dikembangin.

Saya bikin tools ini awalnya karena saya sendiri butuh. Tapi ternyata pas saya sharing ke beberapa temen, mereka juga ngerasa "wah iya juga ya, selama ini kita asal upload aja". Dan saya rasa itu cukup jadi alasan buat saya buka akses tools ini ke publik.

Mungkin ga semua orang separtai sama saya soal privasi. Mungkin banyak yang fine-fine aja pakai tools gratisan manapun. Dan itu ga masalah. Tapi buat yang merasa lebih nyaman pakai tools yang jelas prosesnya, yang ga nge-upload data ke server asing, atau yang emang kerjaannya sering nge-handle dokumen sensitif, mungkin tools ini bisa jadi alternatif.

Sekali lagi, ini ada dan sudah bisa diakses di app.debikurnia.id. Coba aja kalau mau. Kalau berguna, alhamdulillah. Kalau ada masukan, kabarin. Kalau cuma bisa doain, ya makasih banyak juga.

Salam,

Debi Kurnia Putra.


Komentar (0)

Tinggalkan Komentar

0/1000 karakter

Belum ada komentar. Jadilah yang pertama berkomentar!


Baca blog Debi di sini / Kontak Debi kontak@debikurnia.id, atau

WhatsApp