Pembaruan Besar Framework Web Python 'Violit' yang Berawal sebagai Alternatif Streamlit (ORM/Auth Bawaan)
(github.com/violit-dev)Halo.
Sekitar 3 bulan lalu, saya adalah engineer yang memperkenalkan framework web Python 'Violit' yang saya buat sebagai hobi di GeekNews untuk mengatasi bottleneck full rerun pada Streamlit.
Syukurlah, berkat masukan positif dari komunitas luar negeri dan GeekNews di sini, jumlah bintang GitHub-nya baru-baru ini telah melampaui 400. Sambil melihat kenalan saya dan pengguna global benar-benar menerapkan framework ini ke proyek nyata, saya menyadari satu hal.
Yaitu bahwa setelah cepat membuat UI, orang-orang langsung mencari fitur penyimpanan DB dan login (Auth).
Awalnya, saya ingin mempertahankan framework ini tetap ringan dengan menjadikannya murni sebagai library frontend. Namun, setelah melihat pengguna kesulitan menyambungkan DB dan sistem autentikasi secara paksa, setelah banyak pertimbangan saya memutuskan untuk menambahkan fitur-fitur tersebut.
Melalui pembaruan besar kali ini, Violit diperluas dari sekadar tool UI menjadi framework full-stack batteries-included.
🚀 Poin utama pembaruan ini
- ORM bawaan (SQLModel): Cukup berikan satu baris
vl.App(db="./app.db"), maka query dan penyimpanan bisa langsung digunakan tanpa setup terpisah. - Auth bawaan: Autentikasi berbasis sesi, hashing password, dan perlindungan hak akses halaman (role-based) didukung secara native.
- Pekerjaan latar belakang asinkron: Saat menjalankan inferensi AI yang berat agar layar tidak macet, pekerjaan dapat dipindahkan dengan aman ke background menggunakan
app.background(). - Tailwind & Web Awesome: Styling modern kini dimungkinkan dengan menggunakan utility class Tailwind apa adanya melalui parameter
cls.
Tentu saja, engine inti signal-based fine-grained reactivity menjadi semakin kokoh. Kodenya ditulis dalam bentuk skrip yang intuitif seperti Streamlit (kompatibilitas API 90%), tetapi saat ada klik atau input, yang diperbarui bukan seluruh layar, melainkan hanya widget yang benar-benar memiliki dependensi.
Sekarang, hanya dengan satu skrip Python, Anda bisa menangani semuanya sekaligus, mulai dari UI modern yang reaktif hingga database dan autentikasi pengguna.
Saat Anda membuat tool internal, aplikasi data, atau MVP berikutnya, saya akan sangat berterima kasih jika Anda mencobanya sekali dan meninggalkan masukan serta saran tentang arsitekturnya! :)
- GitHub : https://github.com/violit-dev/violit
- Homepage : https://violit.cloud/
- Docs : https://doc.violit.cloud
Belum ada komentar.