Panduan lengkap untuk menjalankan aplikasi BROWSTIME dari awal hingga berjalan sempurna.
- Spesifikasi Aplikasi
- Tech Stack
- Persyaratan Sistem
- Instalasi
- Konfigurasi Environment
- Menjalankan Aplikasi
- Data Seeder
- Akun Demo
- Troubleshooting
BROWSTIME adalah sistem e-commerce berbasis Make-to-Order untuk UMKM yang memproduksi makanan sesuai pesanan. Fitur utama:
- 🏪 Katalog Produk dengan filter kategori dan pencarian
- 🛒 Keranjang Belanja (session-based)
- 📦 Checkout (Guest & Member)
- 💳 Multi Payment: Transfer Bank, QRIS Static, Midtrans
- 🚚 Kalkulasi Ongkir via RajaOngkir API
- 📍 Tracking Pesanan via kode booking
- ⭐ Review & Rating
- 📊 Dashboard Analytics
- 📦 Manajemen Produk & Kategori
- 📝 Bill of Material (BOM) / Resep
- 📉 Mutasi Stok (pemakaian, masuk, rusak, penyesuaian)
- 🧾 Manajemen Pesanan
- 📈 Laporan dengan Export Excel
| Role | URL Panel | Akses |
|---|---|---|
| Admin | /admin |
Full access: Produk, Kategori, Bahan Baku, BOM, Satuan, Mutasi Stok, Pesanan, Akun Bank, Wilayah Pengiriman, Pengaturan Midtrans & QRIS |
| Produksi | /produksi |
Pesanan siap produksi (status: paid/produksi/dikirim/selesai), Mutasi Stok, Dashboard statistik |
| Keuangan | /keuangan |
Laporan Keuangan, Laporan Penjualan, Laporan Stok (dengan Export Excel), Dashboard statistik |
| Pelanggan | / |
Customer frontend (katalog, keranjang, checkout, tracking) |
| Kategori | Teknologi |
|---|---|
| Framework | Laravel 12 |
| PHP Version | 8.2+ |
| Admin Panel | Filament 4.2 |
| Frontend | Livewire 3.7, Alpine.js 3.4 |
| Styling | TailwindCSS 4.0 |
| Build Tool | Vite 7.0 |
| Database | MySQL |
| Authentication | Laravel Breeze |
| Authorization | Spatie Laravel Permission 6.23 |
| Media Library | Spatie Media Library (Filament Plugin) |
| Payment Gateway | Midtrans PHP SDK 2.6 |
| Shipping API | RajaOngkir API |
| Export | Maatwebsite Excel 3.1 |
- PHP >= 8.2 dengan extensions: BCMath, Ctype, cURL, DOM, Fileinfo, JSON, Mbstring, OpenSSL, PCRE, PDO, Tokenizer, XML, GD/Imagick
- Composer >= 2.0
- Node.js >= 18.x
- NPM >= 9.x
- MySQL >= 8.0 atau MariaDB >= 10.6
- Git
- Laragon (Windows)
- Laravel Valet (macOS)
- Docker dengan Laravel Sail
git clone https://github.com/Faathir81/E-Commerce-Browstime.git
cd E-Commerce-Browstimecomposer installnpm installcp .env.example .env
php artisan key:generateBuat database MySQL:
CREATE DATABASE browstime_ecommerce;Edit .env:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=browstime_ecommerce
DB_USERNAME=root
DB_PASSWORD=php artisan migrate
php artisan db:seedAtau sekaligus:
php artisan migrate:fresh --seedphp artisan storage:linknpm run buildEdit .env sesuai kebutuhan:
# Aplikasi
APP_NAME=BROWSTIME
APP_URL=http://127.0.0.1:8000
# Database
DB_DATABASE=browstime_ecommerce
DB_USERNAME=root
DB_PASSWORD=
# RajaOngkir API
RAJAONGKIR_API_KEY=your_api_key_here
RAJAONGKIR_BASE_URL=https://rajaongkir.komerce.id/api/v1
RAJAONGKIR_ORIGIN_SUBDISTRICT_ID=763
RAJAONGKIR_COURIER=jnecomposer devIni menjalankan secara paralel:
- PHP Server (
php artisan serve) - Queue Worker (
php artisan queue:listen) - Log Viewer (
php artisan pail) - Vite Dev Server (
npm run dev)
# Terminal 1
php artisan serve
# Terminal 2
npm run dev
# Terminal 3 (opsional)
php artisan queue:listen| URL | Deskripsi |
|---|---|
| http://127.0.0.1:8000 | Landing Page / Customer Frontend |
| http://127.0.0.1:8000/login | Login (semua role) |
| http://127.0.0.1:8000/register | Register Customer baru |
| http://127.0.0.1:8000/admin | Panel Admin |
| http://127.0.0.1:8000/produksi | Panel Staf Produksi |
| http://127.0.0.1:8000/keuangan | Panel Bagian Keuangan |
php artisan db:seed# Main seeder (roles, users, produk, bahan baku, BOM)
php artisan db:seed --class=BrowstimeSeeder
# Pesanan dummy untuk testing
php artisan db:seed --class=DummyOrderSeederphp artisan migrate:fresh --seed| Data | Jumlah | Keterangan |
|---|---|---|
| Roles | 4 | admin, produksi, keuangan, pelanggan |
| Users | 4 | 1 per role |
| Kategori | 2 | Cookies, Brownies |
| Satuan | 3 | Gram, Pcs, Milligram |
| Bahan Baku | 14 | Matcha, Butter, Telur, dll |
| Produk | 10 | 8 Cookies + 2 Brownies |
| BOM/Resep | 10 | 1 resep per produk |
| Metode Pembayaran | 3 | Transfer, QRIS, Midtrans |
| Akun Bank | 1 | BCA - Browstime |
Semua user login di satu tempat yang sama:
/login
Setelah login berhasil, sistem akan otomatis redirect ke panel sesuai role:
Login (/login) → Cek Role → Redirect ke Dashboard sesuai role
| Role | Redirect setelah Login |
|---|---|
| Admin | /admin |
| Produksi | /produksi |
| Keuangan | /keuangan |
| Pelanggan | / (Landing Page) |
Setelah menjalankan seeder, gunakan akun berikut untuk testing:
| Role | Password | Redirect ke | |
|---|---|---|---|
| Admin | admin@demo.com | password | /admin |
| Produksi | produksi@demo.com | password | /produksi |
| Keuangan | keuangan@demo.com | password | /keuangan |
| Pelanggan | pelanggan1@demo.com | password | / (landing) |
mysql -u root -e "CREATE DATABASE browstime_ecommerce"composer dump-autoload
php artisan optimize:clearnpm run buildphp artisan storage:linkDeveloped by Silver Capybara