IDP – Intelligent Document Processing System
IDP (Intelligent Document Processing) is an enterprise-grade web application built to manage, store, index, and secure company documents in one central place. Powered by Tesseract OCR (Optical Character Recognition) and Elasticsearch, it turns physical scanned documents into indexed digital archives that can be searched in milliseconds. The system also connects directly to NAS (Network-Attached Storage) and provides a real-time monitoring dashboard for operational transparency across the company.
- Real-Time Monitoring & Analytics Dashboard
- Summary statistics for total documents, number of divisions/work units, and total active users.
- Charts showing how document storage is distributed across divisions.
- Monitoring of Elasticsearch document indexing status and background queues (background workers).
- A real-time user activity panel (recent activity log).
- Advanced Search (Full-Text Search, OCR & Hybrid Fallback)
- Fast Full-Text Search: An Elasticsearch 8 search engine based on BM25 with an Indonesian language analyzer (
indonesian_analyzer), fuzzy matching, and text highlighting. - Automatic Tesseract OCR: Automatic text reading and extraction from scanned PDF files and images.
- High-Availability Search: An automatic fallback to PostgreSQL Trigram (
pg_trgm) keeps search available 100% of the time without interruption. - File Explorer & NAS (Network-Attached Storage) Integration
- Interactive file navigation (Grid View and List View) with a modern layout.
- NAS Synchronization: Connects directly to the company's network storage folders (SMB/CIFS protocol).
- Automatic Metadata Propagation: Automatically syncs folder privacy and ownership metadata (
.folder_metadata.json) from the NAS into the system database. - Flexible User, Division & License Management
- Management of the work unit/division hierarchy and user accounts.
- Flexible operating modes: supports commercially licensed releases (License Key) as well as a free mode without activation.
- Tiered Access Rights & Data Security (Granular RBAC)
- Role-based access control (Super Admin, Division Admin, Employee).
- A matrix of 6 permission types (View, Upload, Edit, Delete, Download, Preview).
- Data Isolation: Strict security filtering so that non-admin users can only access their own documents or documents in public folders.
- Safety Confirmation Modal: Destructive actions are protected by a confirmation modal that requires typing an explicit word (such as
"HAPUS") before data is deleted. - Audit Log & Compliance Monitoring
- Complete recording of all user activity (Create, Read, Update, Delete, Download) for transparency and compliance audits.
- Recycle Bin (Trash & Soft Deletes)
- Temporary storage for deleted documents (soft delete) with restore and permanent deletion options.
- Multi-Language (i18n) & System Notifications
- Full multi-language localization (Indonesian and English) via
ngx-translate. - A user notification center for system status updates and document activity.
Business Benefits
- Efficient Archive Processing: Physical documents are digitized automatically, with no manual data entry thanks to OCR.
- Frictionless Information Retrieval: Find documents or specific text clauses in milliseconds.
- High-Level Security & Privacy: Precise access restrictions keep confidential company documents from leaking.
- Network Integration Without Complex Migration: Integrates directly with the company's existing NAS storage structure.
- Transparency & Audit Compliance: Every document's activity history is recorded neatly and ready for internal or external audits.
Technologies Used (Tech Stack)
- Frontend: Angular 21 (Standalone Components), PrimeNG 21 (Fluid API), TailwindCSS 4, RxJS,
ngx-translate(i18n). - Backend: FastAPI (Python 3.10+ Async), Clean Architecture (Presentation, Service, Repository), Pydantic v2, SQLAlchemy.
- Search & Database: Elasticsearch 8, PostgreSQL 15 (
uuid-ossp,pg_trgm), Redis 7. - Worker & OCR Engine: Celery (Asynchronous Task Queue & Beat Scheduler), Tesseract OCR Engine.
- Infrastructure & Security: Nginx Reverse Proxy, SSL HTTPS (SAN Extension), SMB/CIFS NAS, Systemd Daemons, Single Setup Manager (
setup.sh).
Project Metadata
- Role: Full Stack Developer
- Project Type: Intelligent Document Processing (IDP) System / Enterprise Document Management
- Target Users: Super Admin, Division Admin, and all company employees / work units.
