Lewati ke konten

Ikhtisar Teknis

Selamat Datang di Dokumentasi Teknis Wails v3

Section titled “Selamat Datang di Dokumentasi Teknis Wails v3”

Bagian ini bukan tentang panduan komunitas atau cara membuka pull-request. Sebaliknya, bagian ini membahas bagaimana Wails v3 dibangun agar Anda dapat dengan cepat berorientasi di codebase dan mulai hacking dengan percaya diri.

Baik Anda berencana mem-patch runtime, memperluas CLI, membuat template baru, atau sekadar memahami internal, halaman-halaman berikut memberikan konteks teknis yang Anda butuhkan.


Backend Go

Jantung setiap aplikasi Wails adalah kode Go yang dikompilasi menjadi executable native. Backend ini memiliki logika aplikasi, integrasi sistem, dan operasi kritis performa.

Frontend Web

UI ditulis dengan teknologi web standar (React, Vue, Svelte, Vanilla, …) dirender oleh WebView sistem yang ringan (WebKit di Linux/macOS, WebView2 di Windows).

Lapisan Bridge

Bridge zero-copy in-memory memungkinkan panggilan Go⇄JavaScript dengan konversi tipe otomatis, propagasi event, dan penerusan error.

CLI & Tooling

wails3 mengorkestrasi pembuatan proyek, dev server live-reload, bundling asset, cross-compilation, dan packaging (deb, rpm, AppImage, msi, dmg…).


Wails v3 – Alur End-to-End

[Placeholder Diagram Alur End-to-End]

Diagram menunjukkan alur end-to-end:

  1. CLI menggerakkan generasi, dev server, kompilasi, dan packaging.
  2. Binding System menghasilkan kode glue yang memungkinkan Web Frontend memanggil Go Backend.
  3. Selama development Asset Server mem-proxy ke dev server framework; di production melayani file yang di-embed.
  4. Saat runtime Desktop Runtime mengelola window dan API OS, sementara Bridge mengantar pesan antara Go dan JavaScript.

TopikMengapa Penting
Tata Letak CodebasePeta direktori /v3 dan interaksi modul.
Internal RuntimeManajemen window, API sistem, message processor, dan shim platform.
Asset & Dev ServerCara asset web dilayani di dev dan di-embed di production.
Pipeline Build & PackagingAlur kerja berbasis Taskfile, kompilasi lintas platform, dan generasi installer.
Binding SystemPipeline analisis statis yang menghasilkan binding Go⇄TS type-safe.
Template SystemArsitektur generator yang menggerakkan wails3 init -t <framework>.
Testing & CIHarness tes unit/integrasi, GitHub Actions, panduan race detector.
Memperluas WailsMenambahkan service, template, atau sub-perintah CLI.

Setiap halaman berikutnya membahas area-area ini dengan contoh kode konkret, diagram, dan referensi ke file sumber yang relevan.


Selamat menjelajah — dan selamat datang di internal Wails v3!