RESTForge

Mini Inventory App

Seri tutorial lengkap membuat aplikasi inventory dari database, backend, hingga frontend menggunakan RESTForge dan AppForge.

Seri tutorial ini memandu pembangunan aplikasi Mini Inventory secara lengkap menggunakan RESTForge sebagai backend framework dan AppForge sebagai frontend code generator. Seluruh proses pembangunan dilakukan secara bertahap mulai dari pembuatan database, backend API, hingga frontend yang siap digunakan.

Gambaran Aplikasi (Overview)

Mini Inventory adalah aplikasi manajemen inventori berbasis web dengan cakupan berikut:

  • Master data — pengelolaan kategori produk, gudang, supplier, customer, dan item produk
  • Transaksi — pencatatan penerimaan barang dari supplier (stock inbound) dan pengiriman barang ke customer (stock outbound) dengan struktur header-detail

Teknologi (Technology Stack)

KomponenTeknologi
FrontendHTML, CSS, JavaScript (Vanilla JS), Bootstrap 5
BackendRESTForge (Node.js)
DatabasePostgreSQL
AutentikasiJWT (JSON Web Token)
Code GeneratorAppForge CLI dengan plugin vanilla-js-auth

Modul Aplikasi (Application Modules)

Master Data

ModulFungsi
CategoryPengelompokan produk berdasarkan jenis (Elektronik, Fashion, Makanan, Kesehatan, Rumah Tangga, Olahraga)
WarehouseLokasi penyimpanan dengan tipe gudang: main, transit, consignment, external
SupplierData pemasok beserta informasi kontak dan tracking hutang
CustomerData pelanggan beserta informasi kontak dan tracking piutang
Item ProductData produk lengkap dengan harga beli, harga jual, stok, satuan ukur, dan lokasi rak

Transaksi

ModulFungsi
Stock InboundPencatatan penerimaan barang dari supplier ke gudang, dengan detail item per baris
Stock OutboundPencatatan pengiriman barang dari gudang ke customer, dengan detail item per baris

Struktur Database

Aplikasi menggunakan 10 tabel yang terbagi dalam tiga kelompok:

Tabel Master

TabelFungsiKolom Utama
categoryKategori produkcategory_code, category_name, is_active
warehouseLokasi gudangwarehouse_code, warehouse_name, warehouse_type, capacity
supplierData pemasoksupplier_code, supplier_name, contact_person, phone, email
customerData pelanggancustomer_code, customer_name, contact_person, phone, email
item_productData produk dan stokproduct_code, sku, product_name, purchase_price, selling_price, current_stock

Tabel Transaksi

TabelFungsiKolom Utama
stock_inboundHeader barang masukinbound_number, inbound_date, supplier_id, warehouse_id, status
stock_inbound_itemDetail item barang masukitem_product_id, qty_received, unit_price, total_amount
stock_outboundHeader barang keluaroutbound_number, outbound_date, customer_id, warehouse_id, status
stock_outbound_itemDetail item barang keluaritem_product_id, qty_shipped, unit_price, total_amount

Tabel Referensi

TabelFungsiKolom Utama
stock_beginning_balanceSaldo awal stok per periodeitem_product_id, warehouse_id, period_date, qty_beginning

Seluruh tabel menggunakan UUID sebagai primary key dan dilengkapi kolom audit (created_at, created_by, updated_at, updated_by) untuk pelacakan perubahan data.

Alur Pembelajaran (Learning Path)

Tutorial disusun secara berurutan dan setiap bagian membangun di atas hasil dari bagian sebelumnya.

TahapBagianHasil Akhir
PersiapanKebutuhan SistemLingkungan development siap digunakan
Database10 tabel beserta data awal tersedia di PostgreSQL
Membuat Backend7 endpoint API berjalan di port 3032
Membuat FrontendProject frontend dengan halaman login berfungsi
Master DataCategory sampai Item Product5 halaman CRUD lengkap dengan form, tabel, dan filter
TransaksiStock Inbound dan Stock Outbound2 halaman transaksi master-detail dengan kalkulasi otomatis

Seri tutorial ini bersifat sekuensial. Setiap bagian memerlukan hasil dari bagian sebelumnya. Disarankan untuk mengikuti urutan yang ditetapkan agar seluruh langkah dapat berjalan dengan benar.

On this page