Platform & Data Systems / University & Government Systems
PUSTIPADA
PUSTIPADA, UINSU
- Year
- 2026
- Role
- Full-stack developer
Official portal for UINSU's IT centre and database (PUSTIPADA), fronted by a RAG chatbot that answers academic questions from a knowledge base the staff edits themselves.
The problem
Students could not find the schedules that matter (KRS, UKT, graduation) or the paperwork behind library clearance, study leave, and enrollment letters, because all of it lived in scattered announcements. The helpdesk answered the same questions every semester, and a rule-based bot would go stale the moment dates changed.
What I did
- Built the floating Livewire chat widget: suggestion chips for popular questions, a typing indicator, action buttons into official systems like SIAKAD, and clear-conversation.
- Implemented RAG retrieval over a MySQL knowledge base of categories and articles, fed to Gemini through an OpenAI-compatible gateway with a timeout, retry, and fallback message.
- Wrapped the prompt twice: an outer guardrail locking the bot to UINSU academic and IT topics with a strict refusal outside them, and inner grounding that forbids inventing dates, requirements, or links.
- Built the unanswered-query loop: questions with no supporting document are logged with frequency counts and convert into knowledge articles in one click from the admin dashboard.
- Seeded the knowledge base with real PUSTIPADA content and covered the fallback paths with Pest tests.
Impact
- 40
- commits
- RAG
- answers grounded in a staff-managed base
- 0
- invented dates, requirements, or links
Links
Stack
- Laravel 13
- PHP 8.5
- Octane
- FrankenPHP
- Livewire 4
- MySQL
- Gemini
- Tailwind v4
- Pest