> For the complete documentation index, see [llms.txt](https://learn.devlabss.my.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.devlabss.my.id/php/bab-10-proyek-akhir/tugas-aplikasi-kasir-to-do-list-mandiri.md).

# Tugas: Aplikasi Kasir / To-Do List Mandiri

Tugas akhir memberi ruang untuk menerapkan seluruh materi dalam proyek pilihan.

Pilih aplikasi kasir atau to-do list, lalu bangun versi sederhana secara mandiri.

### Tujuan tugas akhir

Tugas ini menjadi bukti bahwa Anda sudah mampu menggabungkan materi modul menjadi satu proyek utuh.

Fokusnya bukan pada proyek yang besar, tetapi pada proyek yang selesai, rapi, dan bisa dijelaskan.

### Pilihan proyek

Anda bisa memilih salah satu:

* aplikasi kasir sederhana
* aplikasi to-do list sederhana

### Pilihan 1 — Aplikasi kasir

Fitur minimal yang disarankan:

* menambah barang ke daftar belanja
* menghitung total harga
* menampilkan ringkasan belanja

Jika ingin dikembangkan, Anda bisa menambah:

* diskon sederhana
* jumlah barang
* data transaksi ke database

### Pilihan 2 — To-do list

Fitur minimal yang disarankan:

* menambah tugas
* menampilkan daftar tugas
* menghapus tugas

Jika ingin dikembangkan, Anda bisa menambah:

* status selesai
* edit tugas
* penyimpanan ke database

### Materi yang sebaiknya muncul di proyek

Usahakan proyek Anda memakai beberapa materi berikut:

* variabel dan operator
* percabangan atau perulangan
* array atau database
* form input
* validasi sederhana

Jika sudah kuat, Anda bisa menambah:

* login
* session
* struktur OOP dasar

### Kriteria hasil yang baik

Proyek akhir yang baik biasanya:

* fiturnya jelas
* alurnya bisa dijalankan
* datanya diproses dengan benar
* penjelasannya mudah dipahami

### Cara mengerjakan dengan aman

Ikuti pola ini:

1. tentukan proyek
2. tentukan fitur inti
3. kerjakan fitur satu per satu
4. uji setiap fitur
5. rapikan dan siapkan presentasi

### Tantangan tambahan

Jika proyek dasar sudah selesai, coba tambahkan satu fitur pengembangan.

Contohnya:

* pencarian data
* login admin
* validasi input yang lebih baik

### Poin evaluasi tugas akhir

Pastikan proyek Anda menunjukkan hal berikut:

* Saya bisa membangun program PHP sederhana secara utuh.
* Saya bisa menggabungkan materi dari beberapa bab.
* Saya bisa menguji hasil program saya sendiri.
* Saya bisa menjelaskan alur kerja proyek saya ke orang lain.

### Penutup

Jika Anda bisa sampai tahap ini, berarti fondasi PHP Anda sudah terbentuk dengan baik.

Langkah berikutnya adalah terus berlatih, memperbanyak proyek kecil, lalu naik ke proyek yang lebih nyata.

Jika proyek Anda sudah selesai, lanjut ke [10.5 Penutup: Refleksi & Langkah Lanjut](/php/bab-10-proyek-akhir/10.5-penutup-refleksi-and-langkah-lanjut.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.devlabss.my.id/php/bab-10-proyek-akhir/tugas-aplikasi-kasir-to-do-list-mandiri.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
