Rakit adalah sebuah micro-framework PHP ultra-ringan yang mengusung filosofi "Rancang databasenya, biarkan sistem yang menulis kodenya."
Framework ini dirancang secara khusus untuk pengembang pemula maupun profesional yang menginginkan kecepatan (Rapid Application Development). Dengan sistem Auto-CRUD dan File-Routing yang cerdas, Anda dapat membangun aplikasi fungsional dalam hitungan detik tanpa harus menulis boilerplate berulang-ulang.
- ⚡ Auto-CRUD & Smart Migrations: Cukup definisikan skema tabel di
migrate.php, dan Rakit akan membuatkan tabel, antarmuka (form tambah/edit/hapus), serta memunculkan menu di dasbor admin secara otomatis. - 🔗 Smart Relational Dropdowns: Jika kolom Anda berakhiran
_id(contoh:divisi_id), sistem secara otomatis akan merendernya sebagai<select>dropdown yang mengambil data dari tabel referensi. - 🛡️ Built-in RBAC (Role-Based Access Control): Batasi akses menu/tabel tertentu hanya untuk role tertentu (misal: admin) hanya dengan satu baris konfigurasi.
- 🗂️ File-Based Routing: Tidak perlu mengatur routes secara rumit. Setiap file yang Anda tambahkan di folder
/pagesakan langsung menjadi URL yang dapat diakses (mirip dengan Next.js). - 🔒 Keamanan Default: Dilengkapi dengan perlindungan CSRF otomatis di setiap request POST dan fungsi pembungkus keamanan bawaan.
Rakit didesain seramping mungkin agar mudah dipahami:
/
├── assets/ # File CSS, JS, dan gambar statis
├── components/ # Potongan UI (Header, Footer, Sidebar, dll)
├── config/ # Konfigurasi database dan routing kustom
├── core/ # Mesin utama framework (Jangan diubah jika tidak perlu)
├── pages/ # Halaman aplikasi (Auto-routed)
├── migrate.php # Pusat skema database & Auto-CRUD
├── index.php # Entry point aplikasi
└── config.php # Pengaturan variabel global
Buka file migrate.php di root direktori. Sesuaikan array $skema dengan kebutuhan aplikasi Anda.
$skema = [
'table' => 'karyawan',
'akses' => ['admin'], // Hanya role 'admin' yang bisa mengakses menu ini
'columns' => [
'id' => 'INT AUTO_INCREMENT PRIMARY KEY',
'nama' => 'VARCHAR(255)',
'divisi_id' => 'INT', // Otomatis menjadi dropdown yang mengambil data dari tabel 'divisi'
'alamat' => 'TEXT'
]
];Buka browser dan akses alamat berikut:
👉 http://localhost/folder-proyek-anda/migrate
Sistem akan memunculkan pesan "Migrasi Berhasil!".
Buka dasbor admin Anda pada alamat:
👉 http://localhost/folder-proyek-anda/login
Menu yang baru saja Anda definisikan akan muncul di panel sebelah kiri, lengkap dengan fungsionalitas Tambah, Edit, dan Hapus (CRUD)!
Framework ini juga sudah dilengkapi panduan untuk asisten AI. Jika Anda menggunakan AI (ChatGPT, Claude, Cursor) untuk menulis kode tambahan pada proyek ini, berikan file ai-context.md kepada AI tersebut agar ia dapat menulis kode yang selaras dengan arsitektur Rakit.
Dilisensikan secara terbuka untuk mempermudah pengembangan aplikasi Anda.