
Build desktop applications using Go and web technologies.
The traditional way to provide a web interface to Go programs is through a built-in web server. Wells offers a different approach: it provides the ability to wrap both Go code and the web frontend into a single binary. Tools are provided to make this easy for you by handling project creation, compilation and bundling. You just have to be creative!
- Use standard Go for backend
- Use any frontend technology you’re already familiar with to create your UI
- Quickly create a rich frontend for your Go programs using pre-built templates
- Easily call Go methods from JavaScript
- Auto-generated TypeScript definitions for your Go structures and methods
- Basic dialogs and menus
- Native dark/light mode support
- Supports modern transparency and “Frosted Window” effects
- Integrated eventing system between Go and JavaScript
- Powerful CLI tools to quickly create and build your projects
- multi platform
- Uses native rendering engine – no embedded browser,
The project roadmap can be found here. Please consult this before creating an enhancement request.
Installation instructions are on the official website.
This project is supported by these types of people/companies:

-
Is it an alternative to Electron?
Depends on your needs. It is designed to make it easier for Go programmers to create lightweight desktop applications or add a frontend to their existing applications. Wells offers basic elements like menus and dialogue, so it can be considered a lightweight Electron alternative.
-
Who is this project intended for?
Become a programmer who wants to bundle a HTML/JS/CSS frontend with their application, without having to build a server and open a browser to view it.
-
What is in a name?
When I saw WebView, I thought “I’d really like to have tooling to build a WebView app, something like Rails for Ruby”. So initially it was a play on words (WebView on Rails). It just so happens to be a homophone of the English name of the country I’m from. So it stuck.
The list of contributors is getting too big for a readme! All the wonderful people who contributed to this project have their own pages here.
This project was primarily coded for the following albums:
<a href