Penugasan Project Mata Kuliah Front-End Web Development

ITB STIKOM Bali

A. Deskripsi Umum

Project ini adalah website statis yang dikembangkan menggunakan teknologi front-end. Setiap tim akan mengembangkan sebuah website berdasarkan salah satu pilihan project yang tersedia. Website ini harus dibuat menggunakan HTML, CSS, serta JavaScript.


B. Tujuan

Project ini akan melatih mahasiswa dalam membangun front-end website yang profesional, mulai dari penggunaan HTML, CSS, dan JavaScript, hingga menggunakan GitHub untuk manajemen kode dan deployment GitHub Pages. Dengan struktur yang rapi dan kode yang bersih, project ini diharapkan mudah dikembangkan dan dipresentasikan.


C. Ketentuan Pengerjaan

1. Teknologi yang digunakan:

2. Kewajiban Meletakkan Kode di GitHub & Deploy di GitHub Pages

Referensi untuk Deploy GitHub Pages:

  1. Masuk ke repository di GitHub.
  2. Pergi ke Settings → Pages.
  3. Pilih Branch: main atau master → Save.
  4. Link website akan tersedia setelah beberapa saat.

3. Setiap Anggota Wajib Memiliki Akun GitHub & Berpartisipasi dalam Pembuatan Kode

Tip: Gunakan fitur Git seperti branch dan pull request untuk berkolaborasi dengan baik!

4. Manajemen Letak File & Struktur Kode yang Baik

Untuk memastikan project terstruktur dengan baik dan mudah dikelola, setiap tim harus mengikuti struktur file sebagai berikut:

/nama_project
│── index.html             # Halaman utama website (wajib ada)
│── README.md              # Dokumentasi project di GitHub
│── /css                   # Folder untuk file CSS
│   ├── styles.css         # File utama untuk styling (jika menggunakan CSS murni)
│   ├── bootstrap.min.css  # (Opsional) Bootstrap jika digunakan
│── /js                    # Folder untuk file JavaScript
│   ├── script.js          # File utama untuk interaktivitas
│   ├── jquery.min.js      # jQuery (jika digunakan)
│── /media                 # Folder untuk gambar dan aset media
│   ├── logo.png           # Contoh logo
│   ├── banner.jpg         # Contoh banner
│── /lib                   # Folder untuk library eksternal (jQuery plugins atau lainnya)
│   ├── datatables.min.js  # (Opsional) Library DataTables jika digunakan
│   ├── chart.min.js       # (Opsional) Library Chart.js jika digunakan

Penjelasan Struktur Folder & File:

  1. File index.html (Halaman Utama)

    • Halaman utama website yang berfungsi sebagai entry point utama.
    • Harus berisi tautan navigasi ke halaman lain.
  2. File README.md (Laporan dan Dokumentasi Project)

    • Wajib ada di GitHub untuk laporan dan dokumentasi project.
    • Sistematika laporan dijelaskan di bawah.
  3. Folder /css (Penyimpanan File CSS)

    • Berisi file CSS utama (styles.css) yang mengatur tampilan website jika menggunakan CSS murni.
    • Jika menggunakan Bootstrap, file Bootstrap bisa disertakan di folder ini.
  4. Folder /js (Penyimpanan File JavaScript)

    • Berisi file JS utama (script.js) yang menangani interaktivitas website.
    • File jquery.min.js dapat disertakan jika menggunakan jQuery.
  5. Folder /media (Penyimpanan Gambar & Aset Media)

    • Berisi gambar yang digunakan dalam project, seperti logo, ikon, banner dan gambar lainnya.
    • Aset media lainnya seperti audio dan video juga ditempatkan di folder ini.
    • File harus diberi nama yang deskriptif untuk memudahkan identifikasi.
  6. Folder /lib (Penyimpanan Library Eksternal - Opsional)

    • Digunakan jika project menggunakan library tambahan untuk fungsi spesifik.
    • Sangat disarankan menggunakan CDN.

5. Spesifikasi atau Syarat Lain yang Diperlukan


D. Pilihan Project

Setiap tim harus memilih salah satu dari 9 project berikut (klik nama project untuk melihat spesifikasi detail):

  1. Website Profil Sekolah

    Menampilkan informasi sekolah, termasuk visi misi, fasilitas, daftar guru, prestasi, galeri sekolah, dan kontak.
  2. Website Pameran Seni Digital

    Menampilkan karya seni digital seperti ilustrasi, lukisan digital, animasi, dan desain grafis. Dapat mencakup profil seniman, kategori karya, serta galeri interaktif.
  3. Website Wisata Kota

    Memberikan informasi tentang tempat wisata dalam suatu kota, termasuk deskripsi tempat, galeri foto, peta lokasi, rekomendasi wisata populer, serta informasi tiket atau transportasi.
  4. Website Toko Buku Online

    Menyediakan informasi tentang buku, termasuk kategori buku, deskripsi, harga, fitur pencarian, serta daftar rekomendasi buku.
  5. Website Panduan Memasak

    Berisi resep makanan lengkap, dengan daftar bahan, langkah-langkah memasak, gambar atau video, serta fitur timer memasak untuk membantu pengguna.
  6. Website Kursus Musik

    Menyediakan informasi tentang kursus musik, termasuk daftar kelas musik berdasarkan instrumen, informasi instruktur, jadwal kursus, serta pemutar audio untuk mendengar suara alat musik.
  7. Website Cafe Shop

    Menampilkan menu makanan dan minuman, daftar promo atau diskon, galeri interior cafe, serta fitur reservasi meja online.
  8. Website Villa Booking

    Menampilkan daftar villa yang bisa disewa, termasuk fasilitas, harga per malam, galeri foto, dan lokasi villa.
  9. Website Informasi Game

    Memberikan informasi tentang sebuah game (dengan genre RPG, RTS, atau MOBA), termasuk karakter/unit dalam game, strategi permainan, event turnamen, dan komunitas pemain.

E. Laporan dan Dokumentasi Project

Setiap tim diwajibkan membuat laporan dan dokumentasi project dalam file README.md menggunakan Markdown.

Panduan Markdown

Sistematika dokumen

  1. Judul Project
  2. Deskripsi Singkat - Penjelasan umum tentang project.
  3. Daftar Anggota - Nama, NIM, username akun GitHub, dan peran/tugas setiap anggota tim.
  4. Teknologi yang Digunakan - HTML, CSS, JavaScript, serta library tambahan jika ada.
  5. Fitur Utama - Daftar fitur yang ada di dalam website.
  6. Struktur Folder - Penjelasan tentang susunan file dan folder dalam project.
  7. Cara Menjalankan Website - Instruksi untuk mengakses project melalui GitHub Pages.
  8. Tautan GitHub Pages - Link untuk mengakses website yang telah dibuat.

F. Penilaian

Project ini akan dinilai berdasarkan:

Rubrik Penilaian Kelompok

Penilaian ini diberikan kepada tim secara keseluruhan berdasarkan kualitas dan kesesuaian project yang dikerjakan.

No Kriteria Penilaian Skor 0-3 Skor 4-6 Skor 7-9 Skor 10-12
1 Kesesuaian dengan ketentuan pengerjaan Tidak sesuai dengan ketentuan, banyak fitur tidak diterapkan. Beberapa ketentuan dipenuhi, namun masih ada banyak kekurangan. Hampir semua ketentuan terpenuhi dengan baik. Seluruh ketentuan telah dipenuhi dengan sangat baik.
2 Kualitas kode HTML, CSS, dan JavaScript Kode berantakan, banyak error, dan tidak terstruktur. Kode cukup rapi tetapi masih banyak kesalahan dalam penulisan. Kode cukup baik, terstruktur, dan hanya ada sedikit kesalahan. Kode sangat rapi, bersih, dan mengikuti praktik terbaik.
3 Responsif untuk desktop dan mobile Tidak responsif, hanya bisa digunakan di satu jenis perangkat. Beberapa elemen responsif, namun masih kurang optimal. Hampir seluruh elemen responsif, tetapi masih ada yang perlu diperbaiki. Website sepenuhnya responsif dan nyaman digunakan di berbagai perangkat.
4 Manajemen kode menggunakan GitHub Tidak menggunakan GitHub atau hanya satu orang yang berkontribusi. Menggunakan GitHub, tetapi hanya beberapa anggota yang berkontribusi. Semua anggota tim berkontribusi dengan commit yang cukup baik. Manajemen GitHub sangat baik, commit terorganisir, dan kolaborasi jelas.
5 Kualitas dokumentasi proyek (README.md) Tidak ada dokumentasi atau sangat minim. Dokumentasi ada tetapi kurang jelas atau tidak sesuai format. Dokumentasi cukup baik dan mencakup poin-poin penting. Dokumentasi lengkap, terstruktur dengan baik, dan mudah dipahami.

Range Skor Kelompok: 0-60

Rubrik Penilaian Personal

Penilaian ini diberikan kepada individu berdasarkan kontribusi dan pemahaman terhadap project.

No Kriteria Penilaian Skor 0-5 Skor 6-10 Skor 11-15 Skor 16-20
1 Keaktifan partisipasi pada GitHub (commit kode dan dokumentasi) Tidak berkontribusi atau hanya sekali melakukan commit. Kontribusi sedikit dan tidak mencerminkan peran yang jelas. Kontribusi cukup banyak dan terlihat aktif dalam pengembangan. Sangat aktif dalam menulis kode dan dokumentasi, memiliki commit yang signifikan.
2 Nilai tanya jawab lisan saat presentasi Tidak bisa menjawab pertanyaan dengan baik atau tidak memahami proyek. Menjawab beberapa pertanyaan tetapi masih banyak yang kurang tepat. Bisa menjawab sebagian besar pertanyaan dengan cukup baik. Menjawab pertanyaan dengan sangat baik dan menunjukkan pemahaman mendalam.

Range Skor Personal: 0-40


G. Referensi