Skip to content

v1.1.5 — Landing Page, Students Domain Migration & Multi-Channel News Broadcaster

Choose a tag to compare

@Curzyori Curzyori released this 29 Sep 01:42
· 335 commits to main since this release

Ringkasan Rilis v1.1.5

Rilis v1.1.5 menghadirkan ekspansi besar pada ekosistem UBSI API: peluncuran resmi frontend landing page Next.js 15, migrasi upstream domain SIAKAD ke students.bsi.ac.id, fitur broadcast berita multi-channel (Discord, Telegram, Custom Webhook), penambahan tim inti, panduan operasional AI Agent (AGENT.md), dan peningkatan test suite menjadi 78 automated tests.


🌟 Fitur & Pembaruan Utama

1. 🌐 Landing Page Modern Next.js 15 (/web)

  • Arsitektur Monorepo: Subfolder /web independen berbasis Next.js 15 App Router, React 19, Tailwind CSS, shadcn/ui, dan Anime.js.
  • Live Production: Terhubung dengan domain resmi https://ubsi-api.muaraai.com (dan backup ubsi-api-web.vercel.app).
  • Deep Water Theme: Palet warna Midnight Oceanic Navy (#0A1220) dengan aksen Teal (#2DD4BF).
  • Zero External CDN: 100% font mandiri (.woff2) di web/public/fonts/ (Space Grotesk, Inter, JetBrains Mono).
  • Interactive Code Showcase: Terminal interaktif dengan tab cURL, Python, TypeScript, dan response JSON 6 mata kuliah aktif MyBest Elearning.
  • Dynamic OpenGraph: Pembuatan banner sosial 1200x630 dinamis via @vercel/og Edge runtime (/opengraph-image).
  • Anti-Slop & Taste Quality Gate: Lolos audit ketat (zero em-dash, zero horizontal overflow 360px, drawer Escape listener, skip-to-content link, kontras WCAG AAA 15.86:1).

2. 📡 Migrasi Upstream SIAKAD ke students.bsi.ac.id

  • Memperbarui upstream target dari domain lama studentv2.bsi.ac.id (yang kini me-return 302 redirect dan menghilangkan data form login) ke domain baru https://students.bsi.ac.id.
  • Seluruh endpoint /v1/studentv2/* (Jadwal, Nilai, Berita, Pengumuman, Dashboard) kembali berfungsi normal dan terverifikasi 100%.

3. 📢 Multi-Channel News Broadcaster & Webhooks

  • Background Worker: Pemantauan otomatis artikel baru di news.bsi.ac.id setiap 10 menit (NEWS_WEBHOOK_INTERVAL).
  • Cold-Start Anti-Spam: Redis set ubsi:news:seen_ids (TTL 30 hari) mencegah banjir notifikasi saat server baru pertama kali dihidupkan.
  • 3 Channel Pengiriman Sekaligus:
    • Discord Webhook (DISCORD_WEBHOOK_URL): Rich Embed warna Teal dengan banner cover, author, dan link artikel.
    • Telegram Bot API (TELEGRAM_BOT_TOKEN & TELEGRAM_CHAT_ID): Pesan berformat HTML (tersanitasi dari error parsing &, <, >) beserta foto artikel via sendPhoto.
    • Custom Webhook (NEWS_WEBHOOK_URL): Payload JSON terstandarisasi untuk bot WhatsApp Ciel atau sistem kustom.
  • Endpoint Uji Coba: POST /v1/news/webhook/test?channel=all|discord|telegram|custom.

4. 👥 Tim Inti, Komunitas & Tata Kelola AI Agent

  • Repositori resmi berstatus PUBLIC di bawah organisasi MuaraAI/UBSI-API.
  • Profil kontributor inti di README & Web: Yuken Velino (@Curzyori), Verzio (@MyKineID), dan Muhammad Raffli Aldiansyah (@Seeyaa77).
  • Berkas AGENT.md (dan symlink AGENTS.md) sebagai panduan etika, aturan isolasi credential, dan alur kontribusi wajib untuk AI Coding Agent.
  • Peningkatan scripts/deploy.sh dengan aturan exclude rsync (web/, anti-slop/, graphify-out/).

5. 🧪 Kualitas & Pengujian Backend

  • Test suite diperluas menjadi 78 automated tests (semuanya berjalan 100% offline terhadap fixture snapshot HTML kampus di tests/fixtures/).
  • Waktu eksekusi pengujian super cepat (~2.8 detik).