TEKNOLOGI
Stack yang menjalankan LETRIV.
LETRIV dibangun sebagai monorepo web desktop-first: antarmuka Next.js, backend Supabase, layanan NLP FastAPI, serta paket bersama untuk taksonomi dan pemrosesan Arab โ dengan human-in-the-loop wajib di setiap rilis diagnosis.
- Next.js
- TypeScript
- Tailwind CSS
- Supabase
- FastAPI
- Python
- Tesseract
- npm
LAPISAN PLATFORM
Teknologi, fungsi, dan output.
- Frontend
Next.js + TypeScript
- Next.js
- TypeScript
Fungsi
Menyajikan App Router, UI RTL Arab, Writing Workspace, OCR Review, Diagnostic Map, Annotation Studio, dan Admin Console.
Output
- Halaman peran mahasiswa, dosen, pakar, peneliti, admin
- Alur unggah โ verifikasi โ diagnosis โ revisi di browser
- Antarmuka marketing & i18n (ID / EN / AR)
- Presentasi
Tailwind CSS + UI Kit
- Tailwind CSS
Fungsi
Menyeragamkan komponen, tipografi, dan palet merek agar interaksi diagnostik tetap jelas di desktop.
Output
- Komponen tombol, kartu, dan formulir konsisten
- Tampilan span diagnosis dan status review
- Layout responsif desktop-first
- Backend & data
Supabase (Postgres, Auth, Storage)
- Supabase
Fungsi
Menyimpan institusi, kelas, submission, versi naskah, diagnosis, dan berkas gambar; menegakkan RBAC serta RLS per tenant.
Output
- Sesi pengguna & lima peran (RBAC)
- Tabel submission, diagnosis, audit, pseudonim
- Bucket penyimpanan gambar tulisan tangan
- Trigger gate E-03 / V-01 tanpa bypass
- Diagnosis AI
FastAPI NLP Service
- FastAPI
- Python
Fungsi
Menjalankan mesin diagnosis span-level (morfologi, sintaksis, leksikal/ortografis) dengan versi model dan taksonomi tercatat.
Output
- Daftar temuan span (start, end, teks)
- Kategori & subkategori taksonomi
- Skor keyakinan + model_version
- Draft diagnosis siap moderasi dosen
- Examine
OCR (Tesseract / Vision API)
- Tesseract
- Vision API
Fungsi
Mengubah gambar tulisan tangan Arab menjadi transkripsi awal yang wajib diverifikasi manusia sebelum diagnosis.
Output
- Teks OCR draft + metadata akurasi
- Status ocr_pending โ ocr_verified (E-03)
- Jejak koreksi manual pada transkripsi
- Kontrak data
@letriv/taxonomy & arabic-utils
- npm
Fungsi
Menyediakan taksonomi interlanguage v1 dan pra-pemrosesan teks Arab (normalisasi, offset span) yang konsisten antara web dan NLP.
Output
- Skema kategori morfologi ยท sintaksis ยท leksikal/ortografis
- text_normalized untuk analisis
- Offset codepoint yang selaras JSโPython
- Research output
Ekspor PDF / CSV (Puppeteer, SheetJS)
- Puppeteer
- SheetJS
Fungsi
Menghasilkan artefak evaluasi dan dataset riset dengan provenance (versi model, taksonomi, keputusan manusia).
Output
- Laporan PDF per mahasiswa
- CSV/Excel korpus span + label
- Metadata provenance untuk reproduktifitas
ALUR TEKNIS
Bagaimana komponen saling terhubung.
Setiap langkah menghasilkan artefak yang menjadi input langkah berikutnya โ tanpa melewati gate verifikasi.
- 01
Browser Next.js mengunggah naskah/teks ke Supabase DB + Storage.
- 02
OCR (jika gambar) menghasilkan draft transkripsi; mahasiswa memverifikasi (E-03).
- 03
arabic-utils menormalisasi teks; web memanggil FastAPI /diagnose.
- 04
NLP mengembalikan span draft; status submission โ pending_moderation.
- 05
Dosen mereview di Annotation Studio (V-01) lalu merilis temuan yang disetujui.
- 06
Mahasiswa melihat span terverifikasi; revisi membuat versi baru dan dapat mengulang diagnosis.
- 07
Peneliti/admin mengekspor PDF/CSV dengan jejak model dan keputusan manusia.
Lihat stack bekerja di alur nyata.
Buka workflow evaluasi diagnostik, atau masuk ke platform untuk mencoba workspace penelitian.