TECH STACK : GO, POSTGRESQL, REDIS
Penerapan Clean Architecture pada aplikasi ini betujuan untuk menghasilkan code tertata, rapih, dan sesuai dengan scope masing masing. Saya membaginya menjadi 4 Layer, yaitu
1. Model / Entity
Pendefinisian entitas yang ada dalam aplikasi
2. Repository
Bagian dimana aplikasi melakukan operasi ke db, redis atau yang lainya.
3. Service / Usecase
Tempat dimana Business Logic ditulis
4. Handler / Controller
Pengecekan request yang masuk dan handling yang akan di lakukan
1. Buat sebuah database postgresql baru yang bernama "product_service"
2. Ubah credensial database dan redis pada file .env, gunakan "localhost" jika service db / redis berjalan pada sistem lokal dan maka jalankan aplikasi dengan menggunakan perintah "make run dev", jika anda menjalankan aplikasi dengan "docker compose up" dan service db / redis anda berjalan di lokal sistem juga maka ganti "localhost" dengan "host.docker.internal"
3. pastikan package "go-migare" telah terinstall di komputer anda , jalankan "make migrate up"
4. Jika migration berhasil, maka anda bisa menjalankan aplikasi dengan "make run dev" atau "docker compose up" yang akan langsung membuild dan menjalankan aplikasi diatas docker.
5. Port yang digunakan oleh aplikasi ini adalah port 8088