#Desktop

20 posts

Building Desktop Apps with Wails #7 Adding a Frontend Framework — Svelte, Vue, React
4 min read

Building Desktop Apps with Wails #7 Adding a Frontend Framework — Svelte, Vue, React

Swap the vanilla front half from the main series for a framework, for a real app whose state grows. Covers what it means that Wails is frontend-agnostic, starting Svelte/Vue/React with wails init templates, that the generated bindings are the same regardless of framework, and connecting binding results to framework state.

Wails in Practice #1 Designing a Real Project — What to Build and How to Split It
5 min read

Wails in Practice #1 Designing a Real Project — What to Build and How to Split It

The first post of the Wails practice series. Going beyond the in-memory to-do app of the intro, we design a local notes app worth shipping: deciding what to build, drawing the boundary that splits the Go backend into a service layer, choosing a frontend state approach, and mapping the final form we complete across six posts.

Build a Desktop App with Wails #6: Build and Distribution — Packaging per Platform
5 min read

Build a Desktop App with Wails #6: Build and Distribution — Packaging per Platform

Build a single binary with wails build and package it as a Windows installer, a macOS app bundle, and a Linux binary. The final part of the series, covering the cross-compilation constraint, GitHub Actions matrix builds, and the outlook for v3.

Build a Desktop App with Wails #5: Real-World Features — Persisting Settings and Error Handling
6 min read

Build a Desktop App with Wails #5: Real-World Features — Persisting Settings and Error Handling

Persist the todo data as JSON under os.UserConfigDir and wire it into the startup and shutdown hooks. We also cover the flow where a Go error becomes a frontend notification, file logging, and why external API calls belong on the Go side.

Build a Desktop App with Wails #4: System Integration — Dialogs, Menus, and Window Control
6 min read

Build a Desktop App with Wails #4: System Integration — Dialogs, Menus, and Window Control

Native file dialogs, application menus with shortcuts, window control, and the clipboard — integrating with the OS through the Wails runtime API. This is where a web frontend starts to feel like a desktop app.

Build a Desktop App with Wails #3: Connecting Go and the Frontend — Method Bindings and Events
5 min read

Build a Desktop App with Wails #3: Connecting Go and the Frontend — Method Bindings and Events

Pinning down the binding rules in a table, building a todo-list backend in Go, and wiring it to a React frontend. Covers auto-generated TypeScript models for structs and the event system that pushes data from Go to the UI.

Build a Desktop App with Wails #2: Project Structure and the Dev Loop — wails dev and Bindings
6 min read

Build a Desktop App with Wails #2: Project Structure and the Dev Loop — wails dev and Bindings

Walking through what each of main.go, app.go, frontend, and wails.json does in a project created by wails init. Covers the hot-reload dev loop and how the auto-generated binding code flows.

Build a Desktop App with Wails #1: What Wails Is — Lightweight Desktop Apps in Go
5 min read

Build a Desktop App with Wails #1: What Wails Is — Lightweight Desktop Apps in Go

Getting started with Wails, the framework for building desktop apps with Go and a web frontend. From how it differs from Electron and Tauri, through installation and the wails doctor check, to running your first app.