Mulai dari Sini
Panduan lengkap setup development environment untuk laptop baru. Semua yang dibutuhkan untuk productive dalam hitungan menit.
DevKit
"Mesin yang bisa di-setup ulang dalam 30 menit adalah mesin yang benar-benar kamu kuasai."
Dokumentasi ini dirancang agar setiap kali berganti laptop (yang terjadi setiap bulan), setup bisa dilakukan secara effortless dan reproducible. Pendekatan yang digunakan adalah Executable Documentation — bukan hanya "baca lalu ketik", tapi dokumentasi yang bisa langsung dieksekusi.
⚡ Quick Start
Clone Repository
git clone git@gitlab.com:faisal-affan/demo/news.git news_faisal
cd news_faisalJalankan Setup Script
chmod +x scripts/setup.sh && ./scripts/setup.shScript ini akan otomatis install: Homebrew, Git, Node.js, pnpm, Bun, VSCode + extensions, dan semua project dependencies.
Setup Environment
cp .env.example .env
# AUTH_SECRET sudah auto-generated oleh setup scriptRun Development Server
pnpm dev
# Buka http://localhost:3000Untuk setup manual atau pemahaman mendalam, baca setiap section di bawah secara berurutan.
🏗️ Arsitektur Setup (4 Phase)
Setup dibagi menjadi 4 fase berurutan, dari level OS hingga level project:
graph LR
A[Phase 1\nBase System] --> B[Phase 2\nIDE & Editor]
B --> C[Phase 3\nLanguage & SDKs]
C --> D[Phase 4\nInfrastructure]
style A fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px
style B fill:#e3f2fd,stroke:#1565c0,stroke-width:2px
style C fill:#fff3e0,stroke:#e65100,stroke-width:2px
style D fill:#fce4ec,stroke:#c62828,stroke-width:2pxPhase 1: Base System
macOS preferences, Homebrew, Brewfile, dan core CLI tools. Fondasi utama yang harus diinstall pertama kali.
Phase 2: IDE & Editor
Visual Studio Code, extensions, settings.json, profiles, dan keyboard shortcuts.
Phase 3: Language & SDKs
Node.js, pnpm, Bun, TypeScript, dan version management. Setup runtime untuk development.
Phase 4: Infrastructure
Docker, deployment, CI/CD, dan container management untuk production.
Maintenance & Cleanup
Prosedur uninstall, teardown, dan cleanup. Agar mesin tetap bersih saat software tidak lagi digunakan.
📊 Version Matrix
Tabel kompatibilitas tools yang digunakan di project ini:
| Tool | Minimum | Recommended | Current di Project |
|---|---|---|---|
| Node.js | 18.0.0 | 18.x LTS | >= 18 |
| pnpm | 10.28.2 | 10.28.2 | 10.28.2 |
| Bun | latest | latest | latest |
| Next.js | 16.0.0 | 16.0.10 | 16.0.10 |
| React | 19.0.0 | 19.2.0 | 19.2.0 |
| TypeScript | 5.0.0 | 5.9.3 | 5.9.3 |
| Tailwind CSS | 4.0.0 | 4.1.16 | 4.1.16 |
| Docker Engine | 20.0.0 | latest | opsional |
✅ Verifikasi Setup
Jalankan command ini untuk memastikan semua tools terinstall:
make checkOutput yang diharapkan:
Checking required tools...
✓ Node.js v22.x.x
✓ pnpm 10.28.2
✓ Bun 1.x.x
✓ Git 2.x.x
✓ Docker 28.x.x (optional)📦 Project Repository
| Key | Value |
|---|---|
| GitLab | git@gitlab.com:faisal-affan/demo/news.git |
| Branch Utama | dev |
| Production | https://news.faisalaffan.com |
| Localhost | http://localhost:3000 |
Last updated on