Project Detail
Backend API + dashboard untuk upload media ke Cloudflare R2 dengan presigned URL pattern. Dibuat untuk UAS Golang - integrasi Object Storage pihak ke-3.
uas/
├── main.go # entry point + routing
├── koneksi.go # MySQL connection
├── controllers/
│ ├── auth.go # register + login
│ └── media.go # presigned URL, upload, list, delete
├── middleware/
│ └── auth.go # JWT middleware
├── models/
│ └── models.go # User, Media structs
├── web/
│ └── index.html # dashboard HTML/JS
├── schema.sql # MySQL schema
└── .env.example
uas.envponytail: Presigned URL expire 15 menit (upload) & 1 jam (view). Cukup untuk demo, tambah waktu jika production.Clone & install dependencies
cd uas
go mod tidy
Buat database
mysql -u root -p < schema.sql
Setup R2
Copy .env
cp .env.example .env
# Isi semua nilai sesuai setup R2 & MySQL kamu
Run
go run .
Server jalan di http://localhost:8080