ROut adalah platform streaming modern yang dirancang untuk memberikan pengalaman menonton yang bersih, cepat, dan personal. Proyek ini dibangun dengan Nuxt 4 dan terintegrasi dengan berbagai layanan eksternal untuk menyajikan konten secara efisien.
- Streaming Dashboard: Antarmuka modern yang dioptimalkan untuk navigasi cepat.
- Integrasi Wikipedia: Menampilkan informasi pemain (cast) dan data variety show secara real-time.
- Pencarian Episode: Sistem pencarian pintar untuk menemukan episode berdasarkan nomor atau kategori.
- Firebase Authentication: Login aman menggunakan Google Auth.
- Responsive Design: UI yang dioptimalkan untuk perangkat mobile dengan konsep "Center Menu Island".
- Abyss.to Integration: Integrasi backend yang kuat untuk pengelolaan resource video dan subtitle.
- Framework: Nuxt 4 & Vue 3
- State Management: Vue Composition API (Composables)
- Backend Service: Firebase (Auth, Admin, Functions)
- Styling: Vanilla CSS dengan sistem variabel desain modern
- External API: Abyss.to API & Wikipedia API (via scraping with Cheerio)
- Icons: @nuxt/icon (Material Symbols)
├── app/ # Frontend logic & UI components
│ ├── assets/ # Global styles & CSS modules
│ ├── components/ # Reusable UI components
│ └── pages/ # Nuxt pages (Restructured under /users)
├── server/ # API routes & server-side utilities
│ ├── api/ # Endpoint API (Episodes, Folders, Wiki)
│ └── utils/ # Server-side helper functions
├── composables/ # Shared client-side logic (Auth, etc.)
└── public/ # Static assets (Favicon, robots.txt)
Pastikan kamu memiliki Node.js versi terbaru.
-
Instalasi Dependensi:
npm install -
Konfigurasi Environment: Buat file
.envdi root direktori dan tambahkan kredensial Firebase:# Firebase Public Config (Penting, jangan dihapus) FIREBASE_API_KEY=Web_API_Key_dari_Project_Settings FIREBASE_AUTH_DOMAIN=your-project-id.firebaseapp.com FIREBASE_DATABASE_URL=https://your-project-id.firebaseio.com FIREBASE_PROJECT_ID=ID_Project_Firebase_Anda FIREBASE_STORAGE_BUCKET=your-project-id.appspot.com FIREBASE_MESSAGING_SENDER_ID=Sender_ID_9_Digit FIREBASE_APP_ID=1:Mojo_App_ID_Anda FIREBASE_MEASUREMENT_ID=G-Measurement_ID # Abyss API (Penting, jangan dihapus) ABYSS_API_KEY=API_Key_dari_Dashboard_Abyss -
Mode Pengembangan: Jalankan server lokal di
http://localhost:3000:npm run dev
Membangun aplikasi untuk produksi:
# Build
npm run build
# Preview hasil build
npm run preview
Proyek ini menggunakan ESLint untuk menjaga konsistensi gaya penulisan kode. Kamu bisa menjalankannya dengan:
# Cek kesalahan (check)
npx eslint .
# Perbaiki otomatis (fix)
npx eslint . --fix
- Node.js: Gunakan Node.js versi 20.x atau yang lebih baru untuk performa terbaik.
- API Key: Pastikan
ABYSS_API_KEYyang kamu gunakan memiliki akses yang cukup untuk membaca resource folder dan file. - Firebase: Pastikan kamu sudah mengaktifkan Google Auth di console Firebase agar fitur login tidak error.
Dibuat dengan ❤️ untuk pengalaman streaming yang lebih baik.