Skip to content

Repository files navigation

🚀 Rakit Framework

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.

✨ Fitur Unggulan

  • 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 /pages akan 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.

📦 Struktur Folder

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

🚀 Panduan Memulai Cepat (Quick Start)

1. Rancang Skema Anda

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'
    ]
];

2. Jalankan Migrasi

Buka browser dan akses alamat berikut: 👉 http://localhost/folder-proyek-anda/migrate

Sistem akan memunculkan pesan "Migrasi Berhasil!".

3. Lihat Hasilnya

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)!

🤖 Integrasi AI (Konteks Prompt)

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.

📄 Lisensi

Dilisensikan secara terbuka untuk mempermudah pengembangan aplikasi Anda.

About

Micro-framework PHP ultra-ringan dengan fitur Auto-CRUD & File-Based Routing untuk pengembangan aplikasi kilat.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages