Proyek Netflixai
Netflixai adalah aplikasi yang terinspirasi Netflix yang meniru tampilan dan nuansa Netflix, memberikan antarmuka pengguna yang serupa dan pengalaman pengguna dengan fitur tambahan AI. Aplikasi ini mengintegrasikan Firebase untuk otentikasi yang efisien dan memanfaatkan API untuk data film dan rekomendasi bertenaga AI. Netflixai mendukung fungsionalitas multibahasa, komponen yang dapat digunakan kembali, dan terstruktur dengan manajemen negara ditangani melalui Redux.
Fitur utama
- Otentikasi: Menggunakan SaaS firebase untuk otentikasi pengguna yang mudah.
- Database Film: Mengambil data film dari API Database Film (TMDB) , yang memungkinkan akses ke berbagai informasi film.
- Rekomendasi bertenaga AI: Karena algoritma rekomendasi Netflix adalah hak milik, Netflixai menggunakan GPT-3.5 Turbo API untuk menghasilkan rekomendasi film yang dipersonalisasi berdasarkan interaksi pengguna.
- Dukungan multibahasa: Menyediakan fungsionalitas multibahasa untuk meningkatkan aksesibilitas bagi audiens yang beragam.
- Komponen yang dapat digunakan kembali: Dibangun dengan komponen yang dapat digunakan kembali untuk pemeliharaan dan skalabilitas yang lebih mudah.
- Manajemen Negara: Dikelola oleh Redux dengan beberapa irisan untuk menangani berbagai negara dan interaksi di seluruh aplikasi.
- Kait Kustom: Menerapkan kait khusus untuk mengoptimalkan penggunaan kembali kode dan merampingkan pengambilan dan pemrosesan data.
API utama digunakan
- TMDB API: Berfungsi sebagai basis data film utama, memungkinkan Netflixai untuk mengambil informasi terperinci tentang berbagai film, termasuk genre, judul tren, dan banyak lagi.
- GPT-3.5 Turbo API: Digunakan untuk mensimulasikan sistem rekomendasi film, karena algoritma rekomendasi Netflix sendiri tidak tersedia. Solusi yang digerakkan AI ini memberikan saran film yang disesuaikan berdasarkan petunjuk dan interaksi pengguna.
Struktur proyek
1. Komponen otentikasi
- Komponen Masuk/Mendaftar: Komponen tunggal yang menangani fungsi masuk dan pendaftaran pengguna, terintegrasi dengan Firebase untuk otentikasi yang mulus.
2. Area konten utama
- Komponen utama: Menampilkan konten film utama setelah login pengguna, terdiri dari:
- MainContainer: Menampilkan video film di latar belakang dengan judul video overlaid.
- Komponen Pindah: Secara dinamis memuat daftar film menggunakan data yang diambil dari TMDB API.
3. Pencarian dan saran GPT
- Komponen Halaman GPT: Area khusus di mana pengguna dapat mencari film dan mendapatkan rekomendasi bertenaga AI. Halaman ini termasuk:
- Bilah Pencarian GPT: Memungkinkan pengguna untuk mengetikkan prompt untuk mendapatkan saran film yang disesuaikan.
- Komponen saran film: Menampilkan film yang disarankan oleh GPT-3.5 Turbo API, dengan data yang diambil dari TMDB API berdasarkan kueri pengguna.
Teknologi dan Perpustakaan
- Firebase: Untuk otentikasi pengguna.
- API TMDB: Untuk mengakses data film.
- GPT-3.5 Turbo API: Untuk menghasilkan rekomendasi film.
- Redux: Untuk mengelola keadaan aplikasi global dengan irisan yang berbeda untuk kontrol negara terorganisir.
- Bereaksi dengan kait khusus: Untuk mempromosikan penggunaan kembali kode dan menyederhanakan logika kompleks.
- Dukungan multibahasa: Mengaktifkan antarmuka pengguna yang lebih mudah diakses dan dapat diadaptasi secara global.
Contoh penggunaan
Berikut adalah contoh aliran bagaimana fungsi Netflixai:
- Pengguna Masuk/Mendaftar: Log Pengguna masuk atau mendaftar melalui Firebase.
- Konten film utama: Setelah masuk, pengguna disajikan dengan MainContainer, menampilkan film dan judul unggulan, bersama dengan daftar film populer lainnya.
- Pencarian GPT: Pengguna dapat berinteraksi dengan bilah pencarian GPT untuk menerima rekomendasi film berdasarkan inputnya.
- Saran yang dipersonalisasi: Saran bertenaga AI ditampilkan dalam komponen saran film, menarik data dari TMDB API berdasarkan kueri pengguna.
Netflixai menggabungkan estetika Netflix dengan fitur AI canggih untuk memberikan pengalaman menjelajah dan pengalaman rekomendasi yang kuat.
Konfigurasi proyek
create-react-app [Scaffold of React App]
Konfigurasikan tailwindcss
npm install -D tailwindcss
npx tailwindcss init
File baru akan dibuat sebagai tailwind.config.css -> cukup tambahkan kode berikut di file ini
/** @type {import('tailwindcss').Config} */
module.exports = {
content: [
"./src/**/*.{js,jsx,ts,tsx}", // js,tsx,tx,tsx is nothing but the language support
],
theme: {
extend: {},
},
plugins: [],
}
Tambahkan ini ke index.css
@tailwind base;
@tailwind components;
@tailwind utilities;
Tambahkan Firebase ke proyek untuk otentikasi dan hosting api untuk penyebaran