Goal :

Peserta dapat membuat API yang dapat di gunakan oleh platform lain (web, mobile, dll) mulai dari tahapan analisis , implementasi (coding) sampai dengan deployment ke server.

Syarat mengikuti training :

  1. Laptop/Komputer
  2. Database sudah terinstall di local atau cloud
  3. Server (TBD)
  4. Basic programming

Materi :

  1. Analisis tampilan yang akan dibuat API, ex (https://moyaeduhexagon.netlify.app/)
    1. Database design
      • Table dan Field
      • Relationship
  2. GO
    1. Pengenalan dan setup framework GO yang akan digunakan (Gin)
    2. Membuat Structure Project
      • Clean Architecture
      • Konsep Dependency Injection (DI) dan Menggunakan Wire untuk DI
      • Konsep Layer Service dan Repository
    3. Pengenalan Gorm
      • Pengenalan ORM
      • Pengenalan hubungan relasi (Belongs To, Has One, Has Many & Many To Many)
      • Setup koneksi database MySQL
      • Membuat Migration dan Seeder Database
    4. Feature: Register & Login
      • Oauth2 (Resource Owner Password Flow)
      • JWT
    5. Feature: Email Verification dan Forgot Password
      • Send email menggunakan third party, ex sendgrid
    6. Implementasi Middleware API Authentication & Authorization
    7. Feature: Profile
      • Get Profile
      • Update Profile
      • Deactive Profile
      • Logout
    8. Feature: CRUD Master Data
      • Product Category
      • Product
      • Discount
      • Admin
      • User
    9. Feature: Cart
    10. Feature: Checkout Product
    11. Feature: Payment gateway
      • Integration
      • Webhook
    12. Feature: Dashboard
      • Total User
      • Total Order
      • Total Transaction
      • Total Product
    13. Feature: Class Room
    14. Feature: Order History
  3. Unit Test
    1. Feature: Profile
  4. Stress Test
    1. Feature: Profile
  5. Membuat dokumentasi dalam bentuk Postman Collection
  6. Deployment ke dalam server

Sesi :