Portfolio/RRI Digital Archive System
🟢 CompletedFull-StackAI-PoweredMicroservice

RRI Digital Archive System

A digital archive management system for RRI Banjarmasin featuring automatic OCR and AI-based document classification. Built with a microservice architecture combining Laravel, React, and Python FastAPI.

15+
Controllers
10+
Models
32+
Permissions
3 Layer
Tech Stack

Screenshots

Application Preview

rri-arsip.banjarmasin.go.id
Dashboard Analytics

Dashboard AnalyticsDashboard with monthly trend charts, status distribution, top classifications, and OCR statistics

Capabilities

Key Features

📄

Archive Unit Management

Full CRUD for archive documents with file upload, comprehensive metadata, and multi-stage verification workflow (pending → accepted/rejected → published).

📁

Archive File Management

Group archive units into archive files with retention and disposal information tracking.

🔍

OCR (Optical Character Recognition)

Automatic text extraction from PDF/image documents using Tesseract via Python microservice with OpenCV preprocessing.

🤖

AI Classification

Automatic document category prediction using TF-IDF + Multinomial Naive Bayes (scikit-learn).

🔐

Role-Based Access Control

3 access levels: Admin, Operator, User with 32+ granular permissions for data security.

📊

Dashboard Analytics

Real-time monthly trend charts, status distribution, top classifications, and OCR statistics.

📋

Activity Logging

Complete audit trail with before/after value comparison for every data change.

🛡️

Two-Factor Authentication

Enhanced security with TOTP (Time-based One-Time Password) and recovery codes.

📑

Reports & PDF Export

Disposal reports, verification status, handover documents, and processing unit summaries.

Architecture

System Architecture

A microservice architecture that separates frontend, backend, and OCR service for scalability and maintainability.

Frontend

React 19 + TypeScriptInertia.js (SSR)Tailwind CSS v4shadcn/ui

Backend

Laravel 12Fortify AuthQueue WorkerDomPDF

OCR Microservice

FastAPITesseractOpenCVscikit-learn

Database

SQLite / MySQL 8+

Technologies

Tech Stack

Backend

Laravel 12PHP Framework
Laravel FortifyAuthentication & 2FA
DomPDFPDF Generation
Queue (Database)Background Processing

Frontend

React 19UI Framework
TypeScriptType Safety
Inertia.jsSPA without API
Tailwind CSS v4Utility-first Styling
shadcn/uiUI Components
RechartsData Visualization
Vite 7Build Tool

OCR Microservice

PythonProgramming Language
FastAPIWeb Framework
Tesseract OCROCR Engine
OpenCVImage Preprocessing
scikit-learnML (TF-IDF + Naive Bayes)
pypdfium2PDF to Image Conversion

Database

SQLiteDevelopment
MySQL 8+Production

CI/CD

GitHub ActionsLint & Tests

Interested in this project?

Check out the full source code on GitHub or get in touch to discuss more about this project.