Website Course Management adalah sebuah aplikasi web sederhana yang dirancang khusus untuk membantu seorang admin platform online course, dalam mengelola kursus dan materi. Aplikasi ini dilengkapi dengan fitur CRUD (Create, Read, Update, Delete) yang memungkinkan untuk membuat, melihat, mengedit, dan menghapus kursus serta materi dengan mudah.
- Pastikan Anda telah mempersiapkan lingkungan pengembangan yang sesuai, termasuk menginstal PHP, Composer dan Node.js.
- Setelah mengunduh atau mengklon proyek aplikasi, buka terminal atau command prompt dan arahkan ke direktori proyek.
- Jalankan perintah 'composer install' di terminal untuk menginstal dependensi PHP yang diperlukan oleh proyek.
- Buka file '.env' pada proyek Anda dan temukan baris yang mengatur koneksi database. Biasanya baris ini memiliki format 'DB_CONNECTION=mysql'. Ganti mysql dengan sqlite agar koneksi database menggunakan SQLite.
- Selanjutnya, jalankan perintah 'php artisan migrate --seed' di terminal. Perintah ini akan menjalankan migrasi database dan memasukkan data awal yang diperlukan untuk aplikasi. Pastikan Anda telah mengkonfigurasi file '.env' dengan benar untuk koneksi database.
- Setelah migrasi selesai, jalankan perintah 'php artisan key:generate' di terminal untuk menghasilkan kunci aplikasi yang unik.
- Jalankan perintah 'npm install' di terminal untuk menginstal dependensi Node.js yang diperlukan oleh proyek.
- Selanjutnya, jalankan perintah 'npm run dev' di terminal untuk mengkompilasi aset JavaScript dan CSS yang diperlukan oleh aplikasi.
- Sekarang Anda dapat menjalankan server lokal Laravel dengan perintah 'php artisan serve'. Anda akan melihat URL lokal yang dapat Anda akses (misalnya, http://localhost:8000).
- Buka browser web dan akses URL lokal yang ditampilkan setelah menjalankan perintah php artisan serve. Misalnya, buka 'http://localhost:8000' di browser.
- Di halaman utama aplikasi, Anda akan melihat opsi untuk masuk (login) atau mendaftar (register). Jika Anda belum memiliki akun, klik tautan "Register" dan ikuti langkah-langkah untuk membuat akun baru. Jika Anda ingin menggunakan akun pengguna yang telah disediakan, gunakan informasi berikut: Username: [email protected] Password: test123
- Setelah masuk, Anda akan diarahkan ke halaman dashboard. Di sini, Anda dapat melihat informasi sederhana tentang kursus, materi, dan link materi yang ada dalam sistem.
- Navigasi aplikasi akan memberikan akses ke fitur-fitur seperti manajemen kursus, materi, dan link materi. Anda dapat menambahkan, mengedit, atau menghapus data sesuai kebutuhan.
- Menampilkan daftar kursus: GET /kursus (KursusController@index)
- Membuat kursus baru: GET /kursus/create (KursusController@create)
- Menyimpan kursus baru: POST /kursus (KursusController@store)
- Menampilkan detail kursus: GET /kursus/{id} (KursusController@show)
- Mengedit informasi kursus: GET /kursus/{id}/edit (KursusController@edit)
- Memperbarui informasi kursus: PUT /kursus/{id} (KursusController@update)
- Menghapus kursus: DELETE /kursus/{id} (KursusController@destroy)
- Mengedit relasi materi dalam kursus: GET /kursus/{id}/edit-materi-relationship (KursusController@editMateriRelationship)
- Memperbarui relasi materi dalam kursus: PUT /kursus/{id}/materi (KursusController@updateMateriRelationship)
- Menampilkan daftar materi: GET /materi (MateriController@index)
- Membuat materi baru: GET /materi/create (MateriController@create)
- Menyimpan materi baru: POST /materi (MateriController@store)
- Menampilkan detail materi: GET /materi/{id} (MateriController@show)
- Mengedit informasi materi: GET /materi/{id}/edit (MateriController@edit)
- Memperbarui informasi materi: PUT /materi/{id} (MateriController@update)
- Menghapus materi: DELETE /materi/{id} (MateriController@destroy)
- Mengedit relasi link materi dalam materi: GET /materi/{id}/edit-link-materi-relationship (MateriController@editLinkMateriRelationship)
- Memperbarui relasi link materi dalam materi: PUT /materi/{id}/link-materi (MateriController@updateLinkMateriRelationship)
- Menampilkan daftar link materi: GET /link-materi (LinkMateriController@index)
- Membuat link materi baru: GET /link-materi/create (LinkMateriController@create)
- Menyimpan link materi baru: POST /link-materi (LinkMateriController@store)
- Menampilkan detail link materi: GET /link-materi/{id} (LinkMateriController@show)
- Mengedit informasi link materi: GET /link-materi/{id}/edit (LinkMateriController@edit)
- Memperbarui informasi link materi: PUT /link-materi/{id} (LinkMateriController@update)
- Menghapus link materi: DELETE /link-materi/{id} (LinkMateriController@destroy)
Aplikasi Ardi Course Management menggunakan arsitektur berbasis web dengan komponen-komponen berikut:
- Template Engine: Aplikasi menggunakan Blade Template dari framework Laravel sebagai template engine untuk menghasilkan tampilan dinamis berbasis server-side.
- Styling: Aplikasi menggunakan Tailwind CSS sebagai framework CSS untuk mengatur tampilan antarmuka dengan komponen-komponen yang sudah ada.
- Interaksi Klien: Dalam hal ini, JavaScript tidak digunakan secara eksplisit berdasarkan kode yang diberikan. Namun, jika diperlukan, JavaScript dapat digunakan untuk meningkatkan interaksi klien di sisi front-end.
Aplikasi menggunakan Laravel sebagai framework back-end untuk mengatur rute (routing), mengelola logika bisnis, dan menghubungkan antarmuka pengguna dengan database.
Aplikasi menggunakan bahasa pemrograman PHP yang disediakan oleh Laravel.
- Database Management System: Aplikasi menggunakan SQLite sebagai basis data untuk menyimpan dan mengelola data kursus dan materi.
- Bahasa Query: Aplikasi menggunakan SQL (Structured Query Language) untuk melakukan operasi database seperti pembuatan, pembacaan, pembaruan, dan penghapusan data. Antarmuka Aplikasi:
- Aplikasi Ardi Course Management menyediakan antarmuka yang responsif dan mudah digunakan untuk melakukan manajemen kursus dan materi. Pengguna yang telah terautentikasi (melalui middleware 'auth') dapat mengakses fitur-fitur aplikasi yang disediakan.
Pengguna dapat melakukan berbagai operasi terkait dengan kursus sebagai berikut:
- Registrasi Pengguna: Pengguna yang belum terdaftar dapat mengakses halaman registrasi untuk membuat akun baru dengan mengisi formulir yang diperlukan.
- Login Pengguna: Pengguna yang telah terdaftar dapat menggunakan fitur ini untuk melakukan login dengan memasukkan email dan password mereka.
Halaman ini menampilkan informasi sederhana tentang seluruh data yang ada dalam sistem. Informasi yang ditampilkan termasuk jumlah kursus, jumlah materi, dan jumlah link materi. Halaman ini hanya dapat diakses oleh pengguna yang telah login dan sudah memverifikasi email mereka.
Pengguna dapat melakukan berbagai operasi terkait dengan kursus sebagai berikut:
- Melihat Daftar Kursus: Pengguna dapat melihat daftar kursus yang tersedia. Setiap kursus akan ditampilkan dalam daftar yang mencakup informasi seperti judul, deskripsi, dan durasi kursus. Daftar ini membantu pengguna untuk melihat secara keseluruhan kursus yang telah dibuat.
-Tampilkan Detail Kursus: Fitur ini memungkinkan pengguna untuk melihat detail dari suatu kursus. Pengguna dapat mengklik pada judul atau tombol yang sesuai untuk membuka halaman yang menampilkan informasi lengkap tentang kursus tersebut, termasuk judul, deskripsi, dan durasi.
-Tampilkan Halaman yang berisi untuk menghubungkan kursus dengan tabel Materi: Fitur ini memungkinkan pengguna untuk mengelola hubungan antara kursus dan tabel Materi. Ketika pengguna mengakses halaman ini, mereka dapat melihat daftar materi yang terhubung dengan kursus tertentu. Halaman ini biasanya menampilkan daftar materi dengan opsi untuk menambahkan, mengedit, atau menghapus materi yang terkait dengan kursus.
- Membuat Kursus Baru: Pengguna dapat membuat kursus baru dengan mengisi informasi yang diperlukan, seperti judul kursus, deskripsi, dan durasi kursus. Dalam antarmuka, pengguna akan melihat formulir yang memungkinkan mereka untuk memasukkan informasi kursus yang baru.
- Mengedit Kursus: Pengguna dapat mengedit informasi kursus yang sudah ada. Dalam antarmuka, pengguna akan melihat formulir yang sudah terisi dengan informasi kursus yang ada dan mereka dapat memperbarui informasi tersebut, seperti judul kursus, deskripsi, dan durasi kursus.
- Menghapus Kursus: Pengguna dapat menghapus kursus yang tidak relevan atau sudah tidak diperlukan. Dalam antarmuka, pengguna akan melihat tombol hapus di samping judul kursus yang ada pada halaman detail. Jika pengguna mengklik tombol hapus, kursus tersebut akan dihapus dari sistem.
Pengguna dapat melakukan berbagai operasi terkait dengan materi sebagai berikut:
- Melihat Daftar Materi: Pengguna dapat melihat daftar materi yang telah ditambahkan ke dalam kursus. Setiap materi akan ditampilkan dalam daftar yang mencakup informasi seperti judul, deskripsi, dan link/embed materi. Daftar ini membantu pengguna untuk melihat dan mengakses materi-materi yang ada.
- Tampilkan Detail Materi: Fitur ini memungkinkan pengguna untuk melihat detail dari suatu materi. Pengguna dapat mengklik pada judul atau tombol yang sesuai untuk membuka halaman yang menampilkan informasi lengkap tentang materi tersebut, seperti judul, deskripsi, dan link/embed materi.
- Tampilkan Halaman yang berisi untuk menghubungkan kursus dengan tabel Link Materi: Fitur ini memungkinkan pengguna untuk mengelola hubungan antara kursus dan tabel Link Materi. Ketika pengguna mengakses halaman ini, mereka dapat melihat daftar link materi yang terhubung dengan kursus tertentu. Halaman ini menampilkan daftar link materi dengan opsi untuk menambahkan, mengedit, atau menghapus link materi yang terkait dengan kursus.
- Membuat Materi Baru: Pengguna dapat membuat materi baru dengan mengisi informasi yang diperlukan, seperti judul materi dan deskripsi. Dalam antarmuka, pengguna akan melihat formulir yang memungkinkan mereka untuk memasukkan informasi materi yang baru.
- Mengedit Materi: Pengguna dapat mengedit informasi materi yang sudah ada. Dalam antarmuka, pengguna akan melihat formulir yang sudah terisi dengan informasi materi yang ada dan mereka dapat memperbarui informasi tersebut, seperti judul materi, deskripsi.
- Menghapus Materi: Pengguna dapat menghapus materi yang tidak relevan dalam sebuah kursus. Dalam antarmuka, pengguna akan melihat tombol hapus di samping judul materi. Jika pengguna mengklik tombol hapus, materi tersebut akan dihapus dari sistem.
Pengguna dapat melakukan berbagai operasi terkait dengan link materi sebagai berikut:
- Melihat Daftar Link Materi: Pengguna dapat melihat daftar link materi yang telah ditambahkan. Setiap link materi akan ditampilkan dalam daftar yang mencakup informasi seperti judul dan link. Daftar ini membantu pengguna untuk melihat dan mengakses link materi yang ada.
- Membuat Link Materi Baru: Pengguna dapat membuat link materi baru dengan mengisi informasi yang diperlukan, seperti judul link materi dan link. Dalam antarmuka, pengguna akan melihat formulir yang memungkinkan mereka untuk memasukkan informasi link materi yang baru.
Tampilkan Halaman Detail Link Materi: Fitur ini memungkinkan pengguna untuk melihat detail dari suatu link materi. Pengguna dapat mengklik pada judul atau tombol yang sesuai untuk membuka halaman yang menampilkan informasi lengkap tentang link materi tersebut, seperti judul, dan link.
- Mengedit Link Materi: Pengguna dapat mengedit informasi link materi yang sudah ada. Dalam antarmuka, pengguna akan melihat formulir yang sudah terisi dengan informasi link materi yang ada dan mereka dapat memperbarui informasi tersebut, seperti judul link materi, deskripsi, dan link.
- Menghapus Link Materi: Pengguna dapat menghapus link materi yang tidak relevan. Dalam antarmuka, pengguna akan melihat tombol hapus di samping judul link materi. Jika pengguna mengklik tombol hapus, link materi tersebut akan dihapus dari sistem.