Bangkah Launcher

Dokumentasi / Installation

Installation

Prerequisites

Before installing Bangkah, ensure your system has:

Required

Verify Installation

# Check PHP version
php -v
# Output: PHP 8.2.x atau lebih tinggi

# Check Composer
composer --version
# Output: Composer 2.x.x

# Check Node.js
node -v
v20.x.x

# Check NPM
npm -v
9.x.x atau lebih tinggi

# Check Docker (if installed)
docker --version
Docker version 20.10+

docker compose version
Docker Compose v2.0+

👉 See Requirements for full system specs →


Installation Methods

Best untuk project baru dari nol.

# Step 1: Create Laravel project
composer create-project laravel/laravel my-awesome-project

# Step 2: Navigate to project
cd my-awesome-project

# Step 3: Add Bangkah
composer require bangkah/bangkah

# Step 4: Run scaffolding
php artisan bangkah:create

Total waktu: ~2-3 menit (tergantung internet speed)

Method 2: Existing Laravel Project

Untuk project Laravel yang sudah ada.

# Step 1: Navigate to project
cd my-existing-project

# Step 2: Add Bangkah
composer require bangkah/bangkah

# Step 3: Run scaffolding
php artisan bangkah:create

⚠️ Important: Bangkah akan memodifikasi beberapa file:

Backup otomatis dibuat:

Anda bisa revert kapan saja jika perlu.

Method 3: With Git (For Teams)

# Clone starter template
git clone https://github.com/bangkah/bangkah-starter my-project
cd my-project

# Install dependencies
composer install
npm install

# Run setup wizard
php artisan bangkah:create

Post-Installation Setup

Step 1: Verify Installation

# List Bangkah commands
php artisan list bangkah

Expected output:

Available commands for the "bangkah" namespace:
  bangkah:create  Create a new starter project with Bangkah
  bangkah:reset   Reset to original state (undo scaffolding)

Step 2: Generate App Key

php artisan key:generate

Ini membuat APP_KEY unik untuk encryption.

Step 3: Setup Database

With Docker:

# Start containers
docker compose up -d

# Run migrations
docker compose exec app php artisan migrate

# Seed sample data (optional)
docker compose exec app php artisan db:seed

Without Docker:

# Update .env dengan database credentials
# DB_CONNECTION=mysql
# DB_HOST=127.0.0.1
# DB_DATABASE=laravel
# DB_USERNAME=root
# DB_PASSWORD=

# Run migrations
php artisan migrate

# Seed sample data (optional)
php artisan db:seed

Step 4: Build Frontend Assets

# Install frontend dependencies
npm install

# Build development assets
npm run dev

# OR build production assets
npm run build

Step 5: Start Development

With Docker:

docker compose up -d
# Access http://localhost

Without Docker:

# Terminal 1: Start PHP dev server
php artisan serve

# Terminal 2: Watch frontend assets
npm run dev

# Access http://localhost:8000

Troubleshooting Installation

Composer require fails

Error: “Could not find package bangkah/bangkah”

Solution:

  1. Update Composer repositories:

    composer config repositories.bangkah vcs https://github.com/bangkah/bangkah.git
  2. Clear cache dan retry:

    composer clear-cache
    composer require bangkah/bangkah
  3. Atau gunakan path repository (development):

    composer require --repository="{\"type\":\"path\",\"url\":\"/path/to/bangkah\"}" bangkah/bangkah

PHP version mismatch

Error: “Your PHP version (8.1.0) does not satisfy requirement (>=8.2.0)”

Solution:

# Update PHP ke 8.2+
# Windows: Update via PHP installer atau XAMPP
# macOS: brew upgrade php
# Linux: apt-get install php8.2 atau upgrade binary

# Verify after update
php -v

Permission denied (Linux/macOS)

Error: “The ”./storage” directory does not have write permissions”

Solution:

# Set correct permissions
chmod -R 775 storage bootstrap/cache

# Or if using Docker:
docker compose exec app chmod -R 775 storage bootstrap/cache

Docker port conflict

Error: “Port 80 is already allocated”

Solution: Edit docker-compose.yml dan ubah port:

services:
  nginx:
    ports:
      - "8080:80"  # Use 8080 instead of 80

Then access http://localhost:8080

Database connection failed

With Docker:

# Check if db container is running
docker compose ps

# Check logs
docker compose logs db

# Verify .env settings match docker-compose.yml

Without Docker:

# Test database connection
mysql -u [username] -p [database_name]

# Or verify in PHP:
php artisan tinker
>>> DB::connection()->getPdo();

Node/NPM issues

Error: “node_modules is empty” atau npm install fails

Solution:

# Clean and reinstall
rm -rf node_modules package-lock.json
npm install

# Or use npm ci (recommended for CI/CD)
npm ci

Clear Laravel Cache

Jika ada issues setelah install:

php artisan cache:clear
php artisan config:clear
php artisan view:clear
php artisan route:clear

Verify Everything Works

# 1. Check database connection
php artisan tinker
>>> DB::connection()->getPdo();
>>> // Should return PDO object, no error

# 2. Check migrations ran
php artisan migrate:status

# 3. Check app running
php artisan serve
# Visit http://localhost:8000

# 4. Check frontend assets
node -e "console.log('Node works')"
npm run build

Semua OK? You’re ready to go!


Next Steps

✅ Installation complete!

On This Page