CoolFace
Apppublic

snickerdust/PLN-summary

sourceHugging Faceapache-2.0updated 3mo agoView on Hugging Face
0likes
App README

๐Ÿ“š CurricuLens-PLN

<div align="center"> <img alt="Status" src="https://img.shields.io/badge/Status-Active-brightgreen?style=for-the-badge"> <img alt="License" src="https://img.shields.io/badge/License-Apache_2.0-blue.svg?style=for-the-badge"> <img alt="Python" src="https://img.shields.io/badge/Python-3.10-blue?style=for-the-badge&logo=python"> <img alt="Firebase" src="https://img.shields.io/badge/Firebase-Hosting-yellow?style=for-the-badge&logo=firebase"> </div>

<p align="center"> <strong>Sistem Analisis Kurikulum Berbasis Model Pembelajaran Mesin (MLM Fine-Tuned IndoBERT + BERTopic)</strong> </p>

๐ŸŒŸ Tentang Proyek

CurricuLens-PLN adalah aplikasi modern berbasis web yang dirancang khusus untuk menganalisis dokumen kurikulum kelistrikan PLN. Sistem ini dapat memproses berbagai format dokumen pembelajaran (PDF, DOCX, PPTX), mengekstrak topik utama, membuat ringkasan ekstraktif yang komprehensif, serta menganalisis tingkat tumpang tindih (overlap) materi antar kurikulum.

โœจ Fitur Utama

  • โ€”๐Ÿ“‚ Manajemen Dokumen Kurikulum: Unggah dan kelola silabus, materi tayang, dan handout dengan drag-and-drop. Dukungan multi-format (PDF, DOCX, PPTX).
  • โ€”๐Ÿง  Topic Modeling (BERTopic): Mengekstrak klaster topik dan kata kunci penting secara otomatis dari dokumen menggunakan model snickerdust/FT-PLN-IndoBERT.
  • โ€”๐Ÿ“ Extractive Summarization: Menghasilkan ringkasan kalimat terbaik menggunakan metode Centroid-Cosine Similarity dengan Trigram Blocking untuk mencegah repetisi.
  • โ€”๐Ÿ”„ Analisis Tumpang Tindih (Overlap): Secara otomatis mendeteksi persentase kemiripan materi antar kurikulum berdasarkan Jaccard Index dan kesamaan konsep semantik.
  • โ€”๐ŸŽจ Antarmuka Modern & Responsif: Dibangun dengan Vanilla JavaScript dan Tailwind CSS, memberikan pengalaman pengguna yang mulus dengan fitur pencarian cerdas, Dark Mode, dan Auto-Wakeup Server Overlay.

๐Ÿ› ๏ธ Teknologi yang Digunakan

Frontend

  • โ€”HTML5, Vanilla JavaScript (ES6+)
  • โ€”Tailwind CSS
  • โ€”Firebase Hosting & Firestore

Backend

  • โ€”Python (Flask)
  • โ€”Sentence-Transformers (snickerdust/FT-PLN-IndoBERT)
  • โ€”BERTopic & UMAP & HDBSCAN
  • โ€”Docker & Hugging Face Spaces

๐Ÿš€ Panduan Memulai Cepat

Prasyarat

  • โ€”Node.js & Firebase CLI
  • โ€”Docker (Opsional, untuk menjalankan backend secara lokal)
  • โ€”Akun Firebase (untuk database Firestore)

Menjalankan Frontend

  1. 1.Clone repositori ini:
bash
   git clone https://github.com/snickerdust/CurricuLens-PLN.git
  1. 1.Buka folder proyek dan jalankan server statis lokal (misal menggunakan Live Server di VSCode).

Menjalankan Backend Lokal

  1. 1.Masuk ke direktori backend:
bash
   cd backend
  1. 1.Install dependensi (disarankan menggunakan virtual environment):
bash
   pip install -r requirements.txt
  1. 1.Tambahkan firebase_credentials.json ke dalam folder backend.
  2. 2.Jalankan aplikasi Flask:
bash
   python app.py

๐Ÿ“„ Lisensi

Proyek ini dilisensikan di bawah lisensi Apache-2.0.