Flask
Pengenalan Flask
Apa itu Flask, cara instalasi, dan cara menjalankan server pertamamu.
Routing Dasar
Cara mendaftarkan URL ke fungsi Python menggunakan decorator @app.route.
URL Variables & Converters
Menangkap bagian dinamis dari URL, misalnya ID atau slug, langsung sebagai parameter fungsi.
Request Object
Membaca data yang dikirim client lewat query string, form, dan JSON menggunakan object request.
Template Jinja2 Dasar
Merender HTML dinamis memakai template engine Jinja2 bawaan Flask.
Template Inheritance
Menghindari duplikasi HTML dengan pola template dasar (base) yang di-extend halaman lain.
Redirect & url_for
Mengarahkan ulang request dan membuat URL secara dinamis tanpa hardcode path.
Flask-SQLAlchemy: Model & Migrasi
Menghubungkan Flask ke database relasional lewat ORM Flask-SQLAlchemy.
Query Database dengan SQLAlchemy
Membaca, menambah, mengubah, dan menghapus data lewat ORM query API.
Forms & Validasi dengan Flask-WTF
Membuat dan memvalidasi form HTML secara aman menggunakan extension Flask-WTF.
Session & Flash Messages
Menyimpan data antar request per pengguna dan menampilkan notifikasi sekali tampil.
Blueprints
Memecah aplikasi besar menjadi modul-modul route yang bisa didaftarkan terpisah.
Error Handling
Menangani halaman error kustom dan menghentikan request secara terkontrol dengan abort().
Application Factory & Config
Membungkus pembuatan aplikasi dalam fungsi create_app() untuk fleksibilitas konfigurasi dan testing.
REST API dengan jsonify
Membangun endpoint API yang mengembalikan dan menerima data JSON.
File Upload
Menerima dan menyimpan file yang diunggah pengguna lewat form multipart.
Autentikasi dengan Flask-Login
Mengelola sesi login pengguna memakai extension Flask-Login.
Testing dengan test_client
Menulis automated test untuk endpoint Flask memakai test client bawaan.
Tugas Akhir
Menggabungkan routing, database, dan API untuk membangun aplikasi Catatan (notes) sederhana.