Flask: Kerangka kerja web mikro yang ringan dan fleksibel.
Python telah lama menjadi bahasa pemrograman favorit untuk berbagai bidang, mulai dari analisis data hingga kecerdasan buatan. Namun, kemampuan Python untuk membangun aplikasi web yang kuat dan efisien tidak boleh diabaikan. Salah satu alat paling populer untuk tujuan ini adalah Flask. Flask dikenal sebagai kerangka kerja web mikro (micro web framework) karena ia menyediakan inti yang sangat sederhana namun dapat diperluas dengan berbagai ekstensi sesuai kebutuhan proyek.
Berbeda dengan kerangka kerja yang lebih besar seperti Django yang menyediakan banyak komponen bawaan (seperti ORM dan sistem admin), Flask memberikan kebebasan penuh kepada pengembang untuk memilih komponen mana yang akan digunakan. Filosofi ini menjadikannya pilihan ideal untuk proyek-proyek kecil hingga menengah, API, atau ketika Anda membutuhkan kontrol penuh atas arsitektur aplikasi Anda.
Keunggulan utama Flask meliputi:
Sebelum mulai membuat web, pastikan Anda sudah menginstal Python. Langkah pertama yang paling krusial adalah menggunakan lingkungan virtual (virtual environment) untuk mengisolasi dependensi proyek Anda.
Di terminal Anda, navigasikan ke direktori proyek dan jalankan perintah berikut:
# Untuk Linux/macOS
python3 -m venv venv
source venv/bin/activate
# Untuk Windows (Command Prompt)
python -m venv venv
venv\Scripts\activate
Setelah aktif, prompt terminal Anda akan menampilkan nama lingkungan virtual (misalnya, (venv) $).
Dengan lingkungan virtual aktif, instal Flask menggunakan pip:
pip install Flask
Sekarang saatnya membuat file utama aplikasi Anda, biasanya bernama app.py. Kode di bawah ini akan menyiapkan server dasar yang merespons permintaan ke halaman utama (root '/').
from flask import Flask
# Inisialisasi aplikasi Flask
app = Flask(__name__)
# Definisikan rute (route) untuk halaman utama
@app.route('/')
def hello_world():
return 'Halo Dunia! Saya sedang belajar membuat web dengan Python Flask.
'
# Menjalankan aplikasi
if __name__ == '__main__':
app.run(debug=True)
Simpan kode di atas sebagai app.py, lalu jalankan dari terminal (pastikan (venv) masih aktif):
python app.py
Flask akan memberitahu Anda di mana server berjalan, biasanya di http://127.0.0.1:5000/. Buka tautan tersebut di browser Anda. Jika Anda melihat teks yang dikembalikan, selamat! Anda telah berhasil menjalankan server Flask pertama Anda.
Mengembalikan string HTML secara langsung dalam fungsi Python tidak efisien untuk proyek yang lebih kompleks. Flask menggunakan Jinja2 sebagai mesin template bawaan untuk memisahkan logika Python dari presentasi HTML.
Untuk menggunakan template, Anda harus membuat folder bernama templates di direktori yang sama dengan app.py.
Buat file index.html di dalam folder templates:
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<title>Halaman Template Flask</title></head>
<body>
<h1>Selamat Datang, {{ nama_pengguna }}!</h1>
<p>Waktu saat ini: {{ waktu }}</p>
</body>
</html>
Ubah kode app.py untuk merender file template ini, sambil meneruskan variabel:
from flask import Flask, render_template
from datetime import datetime
app = Flask(__name__)
@app.route('/')
def index():
# Ambil waktu saat ini
sekarang = datetime.now().strftime("%H:%M:%S")
# Render template dan kirimkan variabel
return render_template('index.html',
nama_pengguna='Pengembang Hebat',
waktu=sekarang)
# ... (bagian lain tetap sama)
Flask menawarkan fondasi yang kuat tanpa memaksakan struktur tertentu. Dengan memahami konsep dasar routing, request handling, dan template rendering, Anda sudah siap untuk membangun API RESTful atau situs web dinamis yang sederhana menggunakan Python dan ekosistem Flask yang kaya. Lanjutkan eksplorasi Anda dengan menambahkan database seperti SQLite atau PostgreSQL melalui ekstensi seperti Flask-SQLAlchemy untuk membuat aplikasi yang benar-benar fungsional.