diff --git a/README.md b/README.md index 5614db31c485058c8277b93c72a82d02c6d04a21..c30454da8afa6d4e90dfb95390c798bb63cc5724 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,149 @@ -## Panduan Pengerjaan -Berikut adalah hal yang harus diperhatikan untuk pengumpulan tugas ini: -1. Buatlah grup pada Gitlab dengan format "IF3110-2023-01-XX", dengan XX adalah nomor kelompok (untuk K1 dan K2) atau kode kelompok (untuk K3). -2. Tambahkan anggota tim pada grup anda. -3. **Fork** pada repository ini dengan organisasi yang telah dibuat. -4. Ubah hak akses repository hasil Fork anda menjadi **private**. -5. Hal-hal yang harus diperhatikan. - * Silakan commit pada repository anda (hasil fork) - * Lakukan beberapa commit dengan pesan yang bermakna, contoh: “add register formâ€, “fix logout bugâ€, jangan seperti “finalâ€, “benerin dikitâ€, “fix bugâ€. - * Disarankan untuk tidak melakukan commit dengan perubahan yang besar karena akan mempengaruhi penilaian (contoh: hanya melakukan satu commit kemudian dikumpulkan). - * Commit dari setiap anggota tim akan mempengaruhi penilaian. - * Jadi, setiap anggota tim harus melakukan commit yang berpengaruh terhadap proses pembuatan aplikasi. - * Sebagai panduan bisa mengikuti [semantic commit](https://gist.github.com/joshbuchea/6f47e86d2510bce28f8e7f42ae84c716). -6. Buatlah file README yang berisi: - * Deskripsi aplikasi web - * Daftar requirement - * Cara instalasi - * Cara menjalankan server - * Screenshot tampilan aplikasi (tidak perlu semua kasus, minimal 1 per halaman), dan - * Penjelasan mengenai pembagian tugas masing-masing anggota (lihat formatnya pada bagian pembagian tugas). +# IF3110 - Tugas Besar WBD 1 + +## TicketKu: Ticket Management System + +## Kelompok 18: + +- 13521075 - Muhammad Rifko Favian +- 13521111 - Tabitha Permalla +- 13521151 - Vanessa Rebecca Wiyono + +## Deskripsi Aplikasi web + +Aplikasi web yang dibangun merupakan sebuah sistem informasi yang digunakan untuk melakukan manajemen / pengelolaan stok tiket. Dengan spesifikasi sebagai berikut: + +1. Implementasi client-side menggunakan Javascript, HTML, dan CSS. +2. Implementasi server-side menggunakan PHP murni tanpa framework +3. Implementasi basis data menggunakan MySQL +4. Sistem dibuat dengan struktur MVC + +Fitur yang dimiliki aplikasi antara lain: + +1. Atentikasi pengguna agar dapat mengakses seluruh fitur lainnya. + Pengguna dibedakan menjadi 2 kategori: user dan admin. +2. Admin dapat melakukan penambahan event +3. Admin dapat melakukan edit event +5. User dapat melihat daftar event +6. User dapat melakukan pembelian tiket suatu event +7. User dapat melihat history pembelian tiket +8. User dapat melakukan edit profile + +Spesifikasi bonus yang tersedia yaitu: + +1. Responsive Design +2. Docker + +## Daftar Requirement +- PHP 8 + +Untuk menjalankan server secara lokal tanpa Docker: +- XAMPP + +Untuk menjalankan dengan Docker: +- OS Ubuntu / Windows dengan WSL2 +- Docker +- Docker Compose + +## Cara Instalasi + +### XAMPP + +**Aktivasi MySQL pada PHP** + +1. Buka php.ini in C:\xampp\php +2. Tambahkan / uncomment kode ini +```bash +extension=mysqli +``` +3. Pastikan libmysql.dll dapat diakses. + +**Aktivasi PDO MySQL pada PHP** +1. Buka file php.ini di C:\xampp\php. +2. Tambahkan / uncomment kode ini +```bash +extension=pdo_mysql +``` + +## Cara Menjalankan server + +### XAMPP + +1. Clone repository ini pada directory htdocs XAMPP anda. Contohnya: `C:\xampp\htdocs\` +2. Buka XAMPP Control Panel dan Start service Apache +3. Aplikasi akan dijalankan pada `localhost/tugas-besar-1` + +### Docker + +1. Clone repository ini +2. Masuk ke directory utama (root) dari repository +3. Untuk menjalankan aplikasi: + +```bash +docker-compose up --build +``` + +4. Container akan berjalan dengan nama `tubes-1` +5. Aplikasi akan berjalan pada `localhost:8008` +7. Untuk menghentikan aplikasi, jalankan: + +```bash +docker-compose stop +``` + +## Akun Testing +Akun dapat dibuat melalui registrasi atau menggunakan akun yang sudah disediakan di bawah ini + +| Jenis | Username | Password | +| ----- | ---------- | ----------------- | +| Admin | admin_user | hashed_password_3 | +| User | bob | hashed_password_5 | + + +## Screenshot Tampilan Aplikasi + + +## Pembagian Tugas + +### Bonus + +| Item | NIM | +| ------------------------- | ------------------ | +| Bonus: Responsif | 13521151, 13521111 | +| Bonus: Docker | 13521151 | + +#### Server-side + +| Item | NIM | +| ---------------------- | ------------------ | +| Login | 13521111 | +| Register | 13521111 | +| Dashboard | 13521111, 13521151 | +| Pencarian Event | 13521151 | +| Daftar Event | 13521151 | +| Tambah Event | 13521151 | +| Edit Event | 13521151, 13521075 | +| Delete Event | 13521151 | +| Pembelian tiket | 13521111 | +| Setup Basis Data | 13521151 | +| History | 13521151 | +| Lihat profile | 13521151 | +| Navbar | 13521111, 13521151 | +| Footer | 13521111, 13521151 | + +#### Client-side + +| Item | NIM | +| ------------------------ | ---------------------------- | +| Init Directories, Styles | 13521111, 13521151 | +| Login | 13521111 | +| Register | 13521111 | +| Dashboard | 13521111, 13521151 | +| Pencarian Event | 13521111, 13521151 | +| Daftar Event | 13521111, 13521151 | +| Pembelian Tiket | 13521111 | +| Tambah Event | 13521111, 13521151 | +| Edit Event | 13521111, 13521151 | +| Lihat profile | 13521111, 13521151 | +| Edit profile | 13521111, 13521151 | +| Navbar | 13521111, 13521151 | +| Footer | 13521111, 13521151 |