MayClass adalah sistem informasi bimbingan belajar (e-learning) berbasis website yang dirancang untuk mendigitalkan dan mengelola proses bisnis di Bimbel MayClass.
Proyek ini dikembangkan oleh Tim 1 3SD2 sebagai bagian dari pemenuhan tugas mata kuliah Rekayasa Perangkat Lunak di Politeknik Statistika STIS.
Client (Bimbel MayClass) saat ini mengelola seluruh operasional secara manual. Informasi seperti jadwal, materi, dan data siswa masih tersebar dalam bentuk file PDF atau tautan Google Drive. Proses ini tidak efisien, menyulitkan siswa dan orang tua untuk mendapatkan informasi terpusat, dan menghambat pendokumentasian progres belajar untuk siswa.
Website MayClass ini hadir sebagai platform terintegrasi yang berfungsi sebagai:
- Pusat Informasi: Menyediakan informasi resmi mengenai profil, paket harga, jadwal, dan profil tentor.
- Manajemen Akademik: Mengelola data siswa, tentor, materi pembelajaran, dan bank soal secara terstruktur.
- Platform E-Learning: Memfasilitasi siswa untuk mengakses materi, mengerjakan kuis/tugas, dan melihat progres belajar.
- Alat Branding: Menampilkan testimoni dan foto kegiatan untuk meningkatkan kepercayaan calon siswa.
Sistem ini memiliki 5 peran pengguna utama:
-
Pengunjung (Publik):
- Melihat halaman informasi: profil bimbel, paket belajar, dan profil tentor.
- Melihat kontak dan testimoni.
- Melakukan registrasi untuk menjadi siswa.
-
Siswa:
- Login ke sistem.
- Mengakses materi pembelajaran dan bank soal.
- Mengerjakan tugas atau kuis.
- Melihat progres belajar.
-
Tentor:
- Login ke sistem.
- Mengelola (mengunggah, update, hapus) materi dan bank soal.
-
Admin Utama:
- Mengelola seluruh data pengguna (siswa, tentor, admin lainnya).
-
Admin Keuangan:
- Mengelola tagihan siswa.
- Memverifikasi pembayaran yang masuk.
- Backend: Laravel (PHP Framework)
- Frontend: Vue.js & Blade Templates
- Styling: Tailwind CSS
- Database: MySQL
Rancangan antarmuka (UI/UX) dan prototipe interaktif untuk proyek ini dibuat menggunakan Figma.
- Tautan Utama Desain: Lihat Desain Lengkap di Figma
- Prototipe Alur Siswa: Coba Alur Siswa
- Prototipe Alur Tentor: [Coba Alur Tentor](https://www.figma.com/proto/FYcvU8p4W8qNuyghlN4VFk/WIREFRAME?node-id=134-1161&p=f&t=2VXB CyG9sHr6oUd-1&scaling-min-zoom&content-scaling=fixed&page-id=134%3A348)
Untuk menjalankan proyek ini secara lokal, ikuti langkah-langkah berikut:
-
Clone repositori:
git clone [https://github.com/viersss/MayClass.git](https://github.com/viersss/MayClass.git) cd MayClass -
Install dependensi Backend (Composer):
composer install
-
Install dependensi Frontend (NPM):
npm install
-
Setup file
.env:- Salin file
.env.examplemenjadi.env. -
cp .env.example .env
- Buka file
.envdan konfigurasikan koneksi database Anda (DB_DATABASE, DB_USERNAME, DB_PASSWORD). Untuk Laragon, gunakan usernamerootdengan password kosong kecuali Anda sudah menentukannya secara manual.
- Salin file
-
Generate Kunci Aplikasi Laravel:
php artisan key:generate
-
Jalankan Migrasi Database:
- (Pastikan Anda sudah membuat database di MySQL sesuai nama di file
.env)
php artisan migrate
- (Pastikan Anda sudah membuat database di MySQL sesuai nama di file
-
(Opsional) Jalankan Database Seeder (jika ada):
php artisan db:seed
-
Jalankan server pengembangan:
- Terminal 1 (Vite/NPM):
npm run dev
- Terminal 2 (Laravel/PHP):
php artisan serve
- Terminal 1 (Vite/NPM):
-
Buka aplikasi di
http://localhost:8000.
Pesan Access denied for user 'root'@'localhost' akan muncul jika kredensial MySQL Anda tidak cocok dengan konfigurasi
server lokal. Terkadang phpMyAdmin menampilkan variasi pesan seperti (using password: YES) ataupun (using password: NO).
Ikuti panduan berikut supaya aplikasi dapat terhubung kembali:
-
Coba login di phpMyAdmin menggunakan username
rootdan password kosong terlebih dahulu. Laragon secara bawaan tidak memberikan password pada akunroot. Pastikan opsi "Remember me" dinonaktifkan ketika mencoba. -
Jika login masih gagal, buka Laragon → Menu → Database → mysql → Reset/Change password kemudian atur password baru untuk akun
root. -
Perbarui file
.envagar menggunakan kredensial terbaru:DB_USERNAME=root DB_PASSWORD=kata_sandi_baru_anda
-
Restart layanan MySQL melalui Laragon agar pengaturan baru aktif.
-
Uji kembali login via phpMyAdmin dengan username dan password yang sama seperti di
.env. -
Jika Anda hanya ingin menjalankan proyek secara cepat, biarkan password di
.envtetap kosong. Aplikasi kini akan secara otomatis mencoba ulang koneksi MySQL tanpa password ketika mendeteksi Anda menggunakan akunrootdi lingkungan lokal. -
Jalankan kembali migrasi aplikasi apabila sebelumnya gagal:
php artisan migrate
Apabila Anda tidak ingin menggunakan akun root, buat pengguna baru di MySQL dengan hak akses yang dibutuhkan dan masukkan
credential tersebut ke dalam file .env.
Laravel MayClass dikonfigurasi menggunakan database session driver, sehingga tabel sessions wajib ada di database Anda.
Jika Anda melihat error di atas ketika menjalankan php artisan serve, lakukan langkah-langkah berikut:
-
Pastikan database yang dirujuk di
.envsudah dibuat di MySQL/Laragon Anda. -
Jalankan migrasi terbaru untuk membuat tabel
sessionsdan tabel lainnya yang mungkin tertinggal:php artisan migrate
-
Apabila Anda mengimpor
database/schema.sqlsecara manual, pastikan skrip tersebut berhasil membuat tabelsessions. Anda dapat mengeceknya melalui phpMyAdmin atau menjalankan query berikut di MySQL:SHOW TABLES LIKE 'sessions';
-
Setelah tabel tersedia, restart server dengan perintah
php artisan servedan muat ulang halaman aplikasi.
Catatan: Mulai sekarang MayClass akan secara otomatis menggunakan file session driver sementara apabila tabel
sessions belum ada atau pemeriksaan tabel gagal akibat kredensial database yang salah. Hal ini membuat aplikasi tetap
dapat dijalankan, namun pastikan Anda tetap menjalankan migrasi agar session kembali tersimpan di database.
Fitur Manajemen Tentor menambahkan kolom baru is_active di tabel users. Jika Anda menarik pembaruan terbaru tapi belum
menjalankan migrasi, perintah provisioning akun demo pada saat php artisan serve akan gagal dengan error di atas. Solusinya:
-
Pastikan koneksi database di
.envsudah benar dan database yang dimaksud tersedia. -
Jalankan migrasi terbaru untuk membuat kolom tersebut:
php artisan migrate
-
Setelah migrasi selesai, jalankan ulang
php artisan serve. Aplikasi akan berjalan normal dan kolomis_activesiap digunakan untuk mengatur status aktif/nonaktif tentor dari panel admin.
Proyek ini dikerjakan oleh:
| Nama | NIM |
|---|---|
| Ahmad Husein Nasution | 222312952 |
| Henny Merry Astutik | 222313120 |
| Johana Putri Natasya Sitorus | 222313150 |
| Lisa Fajrianti | 222313174 |
| Triangga Hafid Rifa'i | 222313408 |
| Xavier Yubin Raditio | 222313427 |
| Yudha Putra Tiara | 222313433 |