RESTForge

RESTForge Apps

Dokumentasi RESTForge Apps - Membangun aplikasi frontend siap pakai dari konfigurasi JSON

RESTForge Apps

Forge Frontend Applications from JSON

RESTForge Apps adalah produk untuk membangun aplikasi frontend siap pakai dari konfigurasi JSON. Produk ini menjadi pelengkap sisi frontend untuk RESTForge Server yang beroperasi di sisi backend.

Peran dalam Ekosistem (Role in Ecosystem)

RESTForge Apps melengkapi ekosistem RESTForge dengan menyediakan kemampuan code generation di sisi frontend. Jika RESTForge Server mengubah konfigurasi menjadi REST API, RESTForge Apps mengubah konfigurasi menjadi aplikasi frontend yang mengkonsumsi API tersebut.

┌─────────────────┐        ┌─────────────────┐
│ RESTForge Server │        │  RESTForge Apps  │
│   (Backend)      │        │   (Frontend)     │
│                  │        │                  │
│  Konfigurasi     │        │  Konfigurasi     │
│  JSON Backend    │        │  JSON Frontend   │
│       │          │        │       │          │
│       ▼          │        │       ▼          │
│  REST API        │◄──────►│  Aplikasi Web    │
│  Siap Jalan      │  HTTP  │  Siap Jalan      │
└─────────────────┘        └─────────────────┘

Karakteristik Utama (Key Characteristics)

KarakteristikPenjelasan
Konfigurasi SederhanaSatu file konfigurasi mendefinisikan halaman, form, validasi, dan tata letak aplikasi secara lengkap
Pilihan Gaya TampilanGaya tampilan aplikasi yang dihasilkan dapat berganti tanpa mengubah konfigurasi, melalui sistem plugin dan tema
Aplikasi Siap JalanAplikasi hasil generate dapat langsung dipakai tanpa proses build tambahan yang rumit
Sinkron dengan BackendKonfigurasi backend dari RESTForge Server dapat dikonversi otomatis menjadi konfigurasi frontend, sehingga tidak perlu menyusun ulang definisi dari awal

Kemampuan Generate (Generation Capabilities)

RESTForge Apps men-generate komponen frontend berikut dari konfigurasi JSON:

KomponenDeskripsi
Halaman CRUDHalaman lengkap dengan tabel data, form input, dan operasi create/update/delete
DataTableTabel data dengan sorting, searching, pagination, dan filter toolbar secara otomatis
Form InputForm dengan berbagai tipe field (text, number, date, select, checkbox) dan validasi client-side
Master-DetailHalaman transaksi dengan pola header-detail, inline editing pada tabel detail, dan kalkulasi otomatis
AutentikasiHalaman login dengan JWT authentication, token refresh, idle timeout, dan permission-based access control
NavigasiSidebar navigation yang di-generate otomatis berdasarkan daftar halaman dalam konfigurasi

Arsitektur Plugin (Plugin Architecture)

RESTForge Apps menggunakan arsitektur plugin untuk memisahkan konfigurasi aplikasi dari implementasi tampilan. Satu konfigurasi JSON yang sama dapat menghasilkan output yang berbeda dengan mengganti plugin yang digunakan.

AspekPenjelasan
KonfigurasiMendefinisikan apa yang ditampilkan: field, tabel, validasi, layout
PluginMenentukan bagaimana tampilan dihasilkan: framework CSS, komponen UI, pola interaksi

Dengan pemisahan ini, perpindahan dari satu tema ke tema lain tidak memerlukan perubahan pada konfigurasi aplikasi. Cukup ganti plugin, lalu generate ulang.

Kompatibilitas Frontend (Frontend Compatibility)

Aplikasi yang dihasilkan RESTForge Apps dirancang untuk bekerja dengan REST API yang dibangun oleh RESTForge Server. Keduanya dirancang sebagai pasangan, sehingga tim yang menggunakan keduanya mendapatkan pengalaman terpadu dari backend sampai frontend.

Meskipun demikian, masing-masing produk dapat digunakan secara independen:

SkenarioDeskripsi
Apps + ServerPengalaman terpadu. Konfigurasi backend dapat dikonversi langsung menjadi konfigurasi frontend
Apps + Backend LainAplikasi frontend yang di-generate dapat diarahkan ke REST API manapun selama format response sesuai
Server + Frontend LainREST API dari RESTForge Server dapat dikonsumsi oleh React, Vue, Flutter, atau platform apapun yang mendukung HTTP

Platform-Agnostic di Sisi Konsumsi (Platform-Agnostic Consumption)

REST API yang dihasilkan oleh RESTForge Server bersifat platform-agnostic. Ini berarti API tersebut dapat dikonsumsi oleh platform frontend manapun yang mendukung HTTP request:

  • Vanilla JavaScript dengan fetch API
  • React.js dengan axios atau fetch
  • Vue.js dengan integrasi langsung
  • Next.js / Nuxt.js dengan server-side atau client-side fetching
  • Flutter untuk aplikasi mobile dan web
  • Angular dengan HttpClient bawaan
  • Laravel dengan Guzzle HTTP client
  • Platform lain yang mendukung HTTP

RESTForge Apps menyediakan jalur tercepat untuk men-generate frontend, namun tim tetap bebas memilih platform frontend sesuai kebutuhan project tanpa kehilangan akses ke backend API.

On this page