# kreatiVortex - Platform Pembelajaran Tari Online Platform pembelajaran tari online yang menghubungkan pendidik, calon pendidik, dan masyarakat umum untuk melestarikan dan mempelajari tari tradisional Indonesia. ## 🌟 Fitur Utama ### 🎭 Manajemen Konten Pembelajaran - **Video Pembelajaran**: Upload dan tonton video tutorial tari (mendukung YouTube dan file lokal) - **Materi Teori**: Akses materi sejarah, filosofi, dan kostum tari - **Materi Praktik**: Panduan langkah demi langkah gerakan tari - **Template Makalah**: Download template tugas dan panduan observasi ### 🏫 Manajemen Kelas - **Sistem Kelas**: Pendidik dapat membuat kelas dan mengelola siswa - **Jadwal & Pengumuman**: Informasi terupdate mengenai jadwal latihan - **Penugasan**: Sistem pemberian dan pengumpulan tugas terintegrasi ### 💬 Kolaborasi & Komunitas - **Forum Diskusi**: Diskusi umum dan spesifik per kelas - **Komentar**: Interaksi pada video dan postingan forum - **Peran Pengguna**: Sistem 4 peran (Administrator, Pendidik, Calon Pendidik, Umum) ## 🚀 Teknologi - **Framework**: Next.js 16 (App Router) - **Bahasa**: TypeScript - **Database**: PostgreSQL dengan Prisma ORM - **Auth**: Better Auth - **Styling**: Tailwind CSS - **UI Components**: Custom components (Glassmorphism design) ## 🛠️ Instalasi & Menjalankan Project 1. **Clone repository** ```bash git clone https://github.com/yourusername/kreati-vortex.git cd kreati-vortex ``` 2. **Install dependencies** ```bash bun install ``` 3. **Setup Database** Pastikan PostgreSQL sudah berjalan, lalu konfigurasi `.env`: ```env DATABASE_URL="postgresql://user:password@localhost:5432/kreativortex?schema=public" ``` Jalankan migrasi database: ```bash bun prisma db push ``` 4. **Jalankan Development Server** ```bash bun dev ``` Buka [http://localhost:3000](http://localhost:3000) di browser Anda. ## 📂 Struktur Project ``` app/ ├── (app)/ # Halaman aplikasi (protected) │ └── dashboard/ # Dashboard utama │ ├── assignments/ # Manajemen tugas │ ├── classes/ # Manajemen kelas │ ├── forum/ # Forum diskusi │ ├── videos/ # Manajemen video │ ├── teori/ # Materi teori │ ├── praktik/ # Materi praktik │ └── template-makalah/ # Download template ├── api/ # API Endpoints │ ├── auth/ # Autentikasi │ ├── videos/ # CRUD Video │ ├── forums/ # CRUD Forum │ ├── classes/ # CRUD Kelas │ └── assignments/ # CRUD Tugas └── auth/ # Halaman autentikasi (public) ├── signin/ # Halaman login └── signup/ # Halaman registrasi components/ ├── ActionButton/ # Komponen tombol ├── Common/ # Komponen umum (Layout, Table, Form) └── Forms/ # Komponen form spesifik prisma/ └── schema.prisma # Skema database ``` ## 🔐 Hak Akses (Role) 1. **Administrator**: Akses penuh ke seluruh sistem 2. **Pendidik**: Manajemen kelas, video, tugas, dan forum 3. **Calon Pendidik**: Mengikuti kelas, akses materi, upload tugas 4. **Umum**: Akses materi publik dan forum umum ## 📝 Lisensi [MIT](LICENSE)