Loading...
Platform AI untuk guru yang otomatis menghasilkan soal pilihan ganda berkualitas dari materi yang diunggah. Dilengkapi admin panel monitoring, sistem billing, dan real-time job tracking.

RacikSoal adalah platform SaaS yang membantu guru menghasilkan soal pilihan ganda berkualitas secara otomatis menggunakan AI. Guru cukup mengunggah materi pelajaran — PDF, dokumen, atau teks — dan platform akan menghasilkan soal-soal yang sesuai tingkat kesulitan dan kurikulum, lengkap dengan kunci jawaban dan pembahasan.
Sebelum ini ada, guru harus membuat soal satu per satu secara manual di Word, atau copy-paste dari buku dan internet lalu memodifikasinya — proses yang bisa memakan waktu berjam-jam. RacikSoal mengkompresi proses itu menjadi beberapa menit.
Saya membangun RacikSoal sepenuhnya sendiri dari nol — mulai dari arsitektur sistem, backend FastAPI, dua aplikasi Next.js (teacher interface dan admin panel), infrastruktur Docker Compose 7 services, hingga deployment via Cloudflare Tunnel. Tidak ada anggota tim lain; setiap keputusan teknis, product, dan desain sistem ada di tangan saya.
Tiga bagian yang paling menarik secara teknis:
Real-time job tracking via SSE + Redis Pub/Sub. Ketika guru submit generate, proses berjalan async di Celery worker. Untuk memberi feedback real-time tanpa polling terus-menerus, saya implementasi SSE (Server-Sent Events) dengan Redis Pub/Sub sebagai channel — Celery publish status ke job:{id}, FastAPI stream ke client. EventSource di browser tidak bisa kirim Authorization header, jadi token dikirim via query param khusus di SSE endpoint. Fallback ke polling 3 detik jika SSE gagal.
3-layer LLM response parser. Output LLM tidak selalu valid JSON. Saya bangun fallback berlapis: parse langsung → token repair (handle None/True/False Python yang tidak valid di JSON) → object-by-object recovery jika array sebagian corrupt. Ini kritis karena satu soal yang gagal parse tidak boleh menggagalkan seluruh batch.
Prompt architecture yang scalable. Daripada hardcode satu prompt, saya desain sistem komposisi: SUBJECT_CORE + DIFFICULTY_OVERRIDE + ITEM_RULES + JSON_SUFFIX. Hasilnya 39 prompt (13 mata pelajaran × 3 kesulitan) yang bisa di-update via admin panel tanpa deploy ulang. LiteLLM dipakai sebagai abstraction layer sehingga model AI bisa diganti tanpa ubah kode aplikasi.
Platform sudah live di user.badakdev.site dan dalam tahap pengujian aktif. Fitur core — generate, edit soal, export PDF/DOCX, billing — sudah berjalan. Yang belum: password reset, self-registration, dan notifikasi email.
Bottleneck saat ini adalah operational cost: biaya VPS dan OpenAI API terus bertambah seiring penggunaan. Platform butuh pembiayaan untuk bisa scale dan tetap berjalan tanpa bergantung sepenuhnya pada kantong sendiri.
First real user onboarded (18 Mar). v0.16.0 — SSE real-time streaming, persistent question editing, 3-layer LLM response parser
Goal: Marketing, beta testing, dan operational cost
Prioritas utama funding adalah untuk marketing dan program beta testing — menjangkau lebih banyak guru, mendapatkan feedback nyata dari pengguna awal, dan memvalidasi product-market fit. Sebagian kecil untuk menutup biaya operasional (VPS dan OpenAI API) yang terus bertambah seiring penggunaan.