REST API untuk aplikasi manajemen keuangan pribadi yang dibangun menggunakan Laravel.
API ini menangani data seperti transaksi, budget, dan tabungan (pots).
Backend ini dirancang ringan untuk development lokal menggunakan SQLite, serta dapat di-deploy ke production menggunakan MySQL.
Base URL: https://personal-financeapp.up.railway.app/api
Contoh endpoint: GET /overview
- Laravel
- PHP 8.2+
- SQLite (Development)
- MySQL (Production - Railway)
- REST API (JSON)
Ikuti langkah berikut untuk menjalankan project di lokal:
- PHP 8.2+ (disarankan pakai Laragon)
- Composer
- SQLite extension aktif di
php.ini
composer installcp .env.example .env
php artisan key:generate# buat file database
touch database/database.sqlite
# jalankan migration + seeder
php artisan migrate --seedphp artisan serveAkses API di: http://127.0.0.1:8000
Project ini menggunakan:
- SQLite → untuk development lokal (ringan & hemat RAM)
- MySQL → untuk production di Railway
Semua response menggunakan format JSON
| Method | Endpoint | Deskripsi |
|---|---|---|
| GET | /api/overview | Ringkasan keuangan |
| GET | /api/transactions | Daftar transaksi |
| GET | /api/pots | Daftar tabungan |
| POST | /api/pots | Tambah tabungan |
| PATCH | /api/pots/{id}/balance | Update saldo tabungan |
| DELETE | /api/pots/{id} | Hapus tabungan |
| GET | /api/recurring-bills | Daftar tagihan rutin |
GET /api/transactions?search=dining&sort=latest{
"status": "success",
"data": {
"balance": {
"current": 32.7,
"income": 195.5,
"expenses": 162.8
}
}
}- ✅ REST API dengan struktur yang rapi
- ✅ Menggunakan Eloquent ORM
- ✅ Validasi dan keamanan (Mass Assignment Protection)
- ✅ Relasi antar model (Budget & Transactions)
- ✅ CORS aktif (siap untuk Flutter)
Gunakan tools seperti:
- Postman
- Insomnia
- Browser
Contoh: http://127.0.0.1:8000/api/overview
- Project ini hanya backend API (tanpa frontend)
- Data awal diisi menggunakan seeder
- Digunakan untuk integrasi dengan aplikasi Flutter
Dibuat untuk pembelajaran dan pengembangan aplikasi fullstack (Laravel + Flutter)