` is tagged as being not draggable.
```
:::info Fullscreen
- If you allow your application to go fullscreen, this drag functionality will be disabled.
+If you allow your application to go fullscreen, this drag functionality will be disabled.
:::
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/frontend.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/frontend.mdx
similarity index 99%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/frontend.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/frontend.mdx
index 6c9d0cf2..7b94345a 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/frontend.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/frontend.mdx
@@ -1,4 +1,3 @@
-
# Frontend
## Script Injection
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/ides.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/ides.mdx
similarity index 99%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/ides.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/ides.mdx
index 5e47152b..14adde0d 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/ides.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/ides.mdx
@@ -1,4 +1,3 @@
-
# IDEs
Wails aims to provide a great development experience. To that aim, we now support generating IDE specific configuration
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/linux-distro-support.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/linux-distro-support.mdx
similarity index 99%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/linux-distro-support.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/linux-distro-support.mdx
index 36649fc1..a050ccc5 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/linux-distro-support.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/linux-distro-support.mdx
@@ -1,4 +1,3 @@
-
# Linux Distro Support
## Overview
@@ -11,6 +10,7 @@ manager. Currently, we support the following package managers:
- dnf
- emerge
- eopkg
+- nixpkgs
- pacman
- zypper
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/manual-builds.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/manual-builds.mdx
similarity index 95%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/manual-builds.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/manual-builds.mdx
index e3be40d0..4594e527 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/manual-builds.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/manual-builds.mdx
@@ -1,4 +1,3 @@
-
# Manual Builds
The Wails CLI does a lot of heavy lifting for the project, but sometimes it's desirable to manually build your project.
@@ -24,10 +23,10 @@ When either `wails build` or `wails dev` are used, the Wails CLI performs a comm
- If there is, it checks if `package.json` exists in the frontend directory. If it doesn't exist, it skips this step
- An MD5 sum is generated from the `package.json` file contents
- It checks for the existence of `package.json.md5` and if it exists, will compare the contents of it (an MD5 sum)
- with the one generated to see if the contents have changed. If they are the same, this step is skipped
+with the one generated to see if the contents have changed. If they are the same, this step is skipped
- If `package.json.md5` does not exist, it creates it using the generated MD5 sum
- If a build is now required, or `node_modules` does not exist, or the `-f` flag is given, the install command is
- executed in the frontend directory
+executed in the frontend directory
#### Manual Steps
@@ -75,7 +74,7 @@ This step could be done from the command line or a script with `npm run build` o
- If the `-clean` flag is provided, the `build` directory is deleted and recreated
- For `wails dev`, the following default Go flags are used: `-tags dev -gcflags "all=-N -l"`
- For `wails build`, the following default Go flags are used: `-tags desktop,production -ldflags "-w -s"`
- - On Windows, `-ldflags "-w -h -H windowsgui"`
+- On Windows, `-ldflags "-w -h -H windowsgui"`
- Additional tags passed to the CLI using `-tags` are added to the defaults
- Additional ldflags passed to the CLI using `-ldflags` are added to the defaults
- The `-o` flag is passed through
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/migrating.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/migrating.mdx
similarity index 74%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/migrating.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/migrating.mdx
index 1474131f..c391596a 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/migrating.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/migrating.mdx
@@ -1,4 +1,3 @@
-
# Migrating from v1
## Overview
@@ -184,23 +183,25 @@ The format of the file is slightly different. Here is a comparison:
-| v1 | v2 | Notes |
-| ------------------ | ---------------- | --------------------------------------------------- |
-| name | name | |
-| description | | Removed |
-| author / name | author / name | |
-| author / email | author / email | |
-| version | version | |
-| binaryname | outputfilename | Changed |
-| frontend / dir | | Removed |
-| frontend / install | frontend:install | Changed |
-| frontend / build | frontend:build | Changed |
-| frontend / bridge | | Removed |
-| frontend / serve | | Removed |
-| tags | | Removed |
-| | wailsjsdir | The directory to generate wailsjs modules |
-| | assetdir | The directory of the compiled frontend assets for `dev` mode. This is normally inferred and could be left empty. |
-| | reloaddirs | Comma separated list of additional directories to watch for changes and to trigger reloads in `dev` mode. This is only needed for some more advanced asset configurations. |
+ | v1 | v2 | Notes |
+ | ------------------ | ---------------- | --------------------------------------------------- |
+ | name | name | |
+ | description | | Removed |
+ | author / name | author / name | |
+ | author / email | author / email | |
+ | version | version | |
+ | binaryname | outputfilename | Changed |
+ | frontend / dir | | Removed |
+ | frontend / install | frontend:install | Changed |
+ | frontend / build | frontend:build | Changed |
+ | frontend / bridge | | Removed |
+ | frontend / serve | | Removed |
+ | tags | | Removed |
+ | | wailsjsdir | The directory to generate wailsjs modules |
+ | | assetdir | The directory of the compiled frontend assets for `dev` mode. This is normally inferred and could be
+ left empty. |
+ | | reloaddirs | Comma separated list of additional directories to watch for changes and to trigger reloads in `dev`
+ mode. This is only needed for some more advanced asset configurations. |
diff --git a/website/versioned_docs/version-v2.0.0-beta.39/guides/mouse-buttons.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/mouse-buttons.mdx
new file mode 100644
index 00000000..570f45c7
--- /dev/null
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/mouse-buttons.mdx
@@ -0,0 +1,28 @@
+# Mouse Buttons
+
+The Wails runtime intercepts mouse clicks to determine whether a frameless window needs resizing or a window needs to be moved.
+It has been asked how to detect when a mouse click has occurred, because `window.onclick` doesn't report the mouse buttons correctly.
+The following code shows how to detect mouse clicks:
+
+```javascript
+
+window.addEventListener('mousedown', handleMouseButtonDown);
+
+function handleMouseButtonDown(event) {
+ if (event.button === 0) {
+ // left mouse button
+ } else if (event.button === 1) {
+ // middle mouse button
+ } else if (event.button === 2) {
+ // right mouse button
+ } else if (event.button === 3) {
+ // back mouse button
+ } else if (event.button === 4) {
+ // forward mouse button
+ } else {
+ // other mouse button
+ }
+}
+
+```
+Reference: https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/overscroll.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/overscroll.mdx
similarity index 99%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/overscroll.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/overscroll.mdx
index bbe593bc..e5f5edb6 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/overscroll.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/overscroll.mdx
@@ -1,4 +1,3 @@
-
# Overscroll
[Overscroll](https://developer.mozilla.org/en-US/docs/Web/CSS/overscroll-behavior) is the "bounce effect" you sometimes
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/routing.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/routing.mdx
similarity index 99%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/routing.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/routing.mdx
index 3e1f255d..d4a55ee6 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/routing.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/routing.mdx
@@ -1,4 +1,3 @@
-
# Routing
Routing is a popular way to switch views in an application. This page offers some guidance around how to do that.
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/signing.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/signing.mdx
similarity index 94%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/signing.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/signing.mdx
index 3da981df..b8a5b70d 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/signing.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/signing.mdx
@@ -10,11 +10,11 @@ Please note that an EV certificate is not required unless you need to write kern
software such as device drivers. For signing your Wails app, a standard code signing
certificate will do just fine.
-It may be a good idea to check with your certificate provider
-how to sign your binaries on your local machine before targeting automated build systems, just so you know if there
-are any special requirements. For instance, [here](https://www.ssl.com/how-to/using-your-code-signing-certificate/) is SSL.com's code signing guide for Windows.
+It may be a good idea to check with your certificate provider
+how to sign your binaries on your local machine before targeting automated build systems, just so you know if there
+are any special requirements. For instance, [here](https://www.ssl.com/how-to/using-your-code-signing-certificate/) is SSL.com's code signing guide for Windows.
If you know how to sign locally, it will be easier to
-troubleshoot any potential issues in a CI environment.
+troubleshoot any potential issues in a CI environment.
For instance, SSL.com code signing certificates require the `/tr` flag for [SignTool.exe](https://docs.microsoft.com/en-us/windows/win32/seccrypto/signtool)
while other providers may only need the `/t` flag for providing the timestamping server. Popular GitHub Actions for signing
Windows binaries like [this one](https://github.com/Dana-Prajea/code-sign-action) does not support the `/tr` flag on SignTool.exe.
@@ -66,13 +66,13 @@ jobs:
```
Next we need to give the GitHub workflow access to our signing certificate. This is done by encoding your .pfx or .p12 certificate
-into a base64 string. To do this in PowerShell, you can use the following command assuming your certificate is called 'my-cert.p12':
+into a base64 string. To do this in PowerShell, you can use the following command assuming your certificate is called 'my-cert.p12':
```PowerShell
certutil -encode .\my-cert.p12 my-cert-base64.txt
```
You should now have your .txt file with the base64 encoded certificate. It should start with *-----BEGIN CERTIFICATE-----* and
-end with *-----END CERTIFICATE-----*. Now you need to make two action secrets on GitHub. Navigate to *Settings -> Secrets -> Actions* and create the
+end with *-----END CERTIFICATE-----*. Now you need to make two action secrets on GitHub. Navigate to *Settings -> Secrets -> Actions* and create the
two following secrets:
* **WIN_SIGNING_CERT** with the contents of your base64 encoded certificate text.
* **WIN_SIGNING_CERT_PASSWORD** with the contents of your certificate password.
@@ -220,8 +220,8 @@ jobs:
path: build/bin/*
```
-For code signing on macOS, [gon](https://github.com/mitchellh/gon) is a very handy tool for code signing and communicating with Apple servers, also written in Go, and
-will be used in this guide.
+For code signing on macOS, [gon](https://github.com/mitchellh/gon) is a very handy tool for code signing and communicating with Apple servers, also written in Go, and
+will be used in this guide.
After the `Build Wails app` step, add the following to the workflow:
```yaml
@@ -247,8 +247,8 @@ Now we need to configure some gon config files in our `build/darwin` directory:
}
}
```
- Where `source` is your Wails binary, `bundle_id` is your bundle ID, `apple_id` contains your Apple ID username and App-Specific password
- which you created earlier, and `sign.application_identity` is your identity which you can find by running the following command:
+Where `source` is your Wails binary, `bundle_id` is your bundle ID, `apple_id` contains your Apple ID username and App-Specific password
+which you created earlier, and `sign.application_identity` is your identity which you can find by running the following command:
```bash
security find-identity -v -p codesigning
```
@@ -271,9 +271,9 @@ Now we need to configure some gon config files in our `build/darwin` directory:
```
- In this file you configure the entitlements you need for you app, e.g. camera permissions if your app uses the camera. Read more about entitlements [here](https://developer.apple.com/documentation/bundleresources/entitlements).
+In this file you configure the entitlements you need for you app, e.g. camera permissions if your app uses the camera. Read more about entitlements [here](https://developer.apple.com/documentation/bundleresources/entitlements).
-Make sure you have updated your `Info.plist` file with the same bundle ID as you entered in `gon-sign.json`.
+Make sure you have updated your `Info.plist` file with the same bundle ID as you entered in `gon-sign.json`.
Here's an example `Info.plist` file:
```plist
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/templates.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/templates.mdx
similarity index 97%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/templates.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/templates.mdx
index 090cf8a9..d2517423 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/templates.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/templates.mdx
@@ -1,4 +1,3 @@
-
# Templates
Wails generates projects from pre-created templates. In v1, this was a difficult to maintain set of projects that were
@@ -61,7 +60,7 @@ the template. We will now walk through how to create a Vue 3 template:
- Install the vue cli: `npm install -g @vue/cli`
- Create the default project: `vue create vue3-base`
- - Select `Default (Vue 3) ([Vue 3] babel, eslint)`
+- Select `Default (Vue 3) ([Vue 3] babel, eslint)`
- After the project has been generated, run:
```shell
@@ -81,7 +80,7 @@ Renaming package-lock.json -> package-lock.tmpl.json...
- You should have a fully functioning Vue3 application:
-

+
## Publishing Templates
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/troubleshooting.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/troubleshooting.mdx
similarity index 52%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/troubleshooting.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/troubleshooting.mdx
index 1ab08d6f..90c7d78d 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/troubleshooting.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/troubleshooting.mdx
@@ -1,8 +1,14 @@
-
# Troubleshooting
An assortment of troubleshooting tips.
+## The `wails` command appears to be missing?
+
+If your system is reporting that the `wails` command is missing, make sure you have followed the Go installation guide
+correctly. Normally, it means that the `go/bin` directory in your User's home directory is not in the `PATH` environment
+variable. You will also normally need to close and reopen any open command prompts so that changes to the environment
+made by the installer are reflected at the command prompt.
+
## My application is displaying a white/blank screen
Check that your application includes the assets from the correct directory. In your `main.go` file, you will have
@@ -14,6 +20,20 @@ var assets embed.FS
```
Check that `frontend/dist` contains your application assets.
+### Mac
+
+If this happens on Mac, try adding the following to your `Info.plist`:
+
+```xml
+
NSAppTransportSecurity
+
+ NSAllowsLocalNetworking
+
+
+```
+
+Reference: https://github.com/wailsapp/wails/issues/1504#issuecomment-1174317433
+
## Mac application not valid
If your built application looks like this in finder:
@@ -22,7 +42,7 @@ If your built application looks like this in finder:

-it's likely that your application's `info.plist` is invalid. Update the file in `build/
.app/Contents/info.plist`
+it''s likely that your application''s `info.plist` is invalid. Update the file in `build/.app/Contents/info.plist`
and check if the data is valid, EG check the binary name is correct. To persist the changes, copy the file back to
the `build/darwin` directory.
@@ -56,7 +76,7 @@ window.go.main.App.TestFunc(msg, args).then((result) => { //without the 3 dots
```
Credit: https://github.com/wailsapp/wails/issues/1186
-## I'm having getting proxy errors when trying to install Wails
+## I''m having getting proxy errors when trying to install Wails
If you are getting errors like this:
```
@@ -68,4 +88,24 @@ The solution is to set up the proxy manually, eg:
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
```
-Source: https://github.com/wailsapp/wails/issues/1233
\ No newline at end of file
+Source: https://github.com/wailsapp/wails/issues/1233
+
+## The generated Typescript doesn''t have the correct types
+
+Sometimes the generated Typescript doesn''t have the correct types. To mitigate this,
+it is possible to specify what types should be generated using the `ts_type` struct tag. For
+more details, please read [this](https://github.com/tkrajina/typescriptify-golang-structs#custom-types).
+
+## When I navigate away from `index.html`, I am unable to call methods on the frontend
+
+If you navigate away from `index.html` to a new html file, the context will be lost. This can be fixed by adding
+the following imports to the `` section of any new page you navigate to:
+
+```html
+
+
+
+
+```
+
+Source: https://github.com/wailsapp/wails/discussions/1512
\ No newline at end of file
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/windows-installer.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/windows-installer.mdx
similarity index 95%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/windows-installer.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/windows-installer.mdx
index f6a5b2f3..76f91dd7 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/windows-installer.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/windows-installer.mdx
@@ -1,7 +1,7 @@
# NSIS installer
- 
+ 
Wails supports generating Windows installers using the [NSIS installer](https://nsis.sourceforge.io/).
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/guides/windows.mdx b/website/versioned_docs/version-v2.0.0-beta.39/guides/windows.mdx
similarity index 70%
rename from website/versioned_docs/version-v2.0.0-beta.37/guides/windows.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/guides/windows.mdx
index e0ec17d5..e3c2ee02 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/guides/windows.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/guides/windows.mdx
@@ -1,4 +1,3 @@
-
# Windows
This page has miscellaneous guides related to developing Wails applications for Windows.
@@ -35,3 +34,20 @@ up to the user.
### Error
If no suitable runtime is found, an error is given to the user and no further action taken.
+
+## Fixed version runtime
+
+Another way of dealing with webview2 dependency is shipping it yourself.
+You can download [fixed version runtime](https://developer.microsoft.com/ru-ru/microsoft-edge/webview2/#download-section) and bundle or download it with your application.
+
+Also, you should specify path to fixed version of webview2 runtime in the `windows.Options` structure when launching wails.
+
+```go
+ wails.Run(&options.App{
+ Windows: &windows.Options{
+ WebviewBrowserPath: "",
+ },
+ })
+```
+
+Note: When `WebviewBrowserPath` is specified, `error` strategy will be forced in case of minimal required version mismatch or invalid path to a runtime.
\ No newline at end of file
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/howdoesitwork.mdx b/website/versioned_docs/version-v2.0.0-beta.39/howdoesitwork.mdx
similarity index 97%
rename from website/versioned_docs/version-v2.0.0-beta.37/howdoesitwork.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/howdoesitwork.mdx
index a66e8cb9..c22aada7 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/howdoesitwork.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/howdoesitwork.mdx
@@ -11,7 +11,7 @@ version of the runtime library. Finally, it is possible to bind Go methods to th
Javascript methods that can be called, just as if they were local Javascript methods.
-

+
## The Main Application
@@ -130,7 +130,7 @@ by the frontend code.
:::info Note
- Wails requires that you pass in an *instance* of the struct for it to bind it correctly
+Wails requires that you pass in an *instance* of the struct for it to bind it correctly
:::
@@ -215,8 +215,8 @@ the frontend and your Go code are:
- Calling runtime methods
[^1]:
- There is a very small subset of libraries that use features unsupported in WebViews. There are often alternatives and
- workarounds for such cases.
+There is a very small subset of libraries that use features unsupported in WebViews. There are often alternatives and
+workarounds for such cases.
### Calling bound Go methods
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/introduction.mdx b/website/versioned_docs/version-v2.0.0-beta.39/introduction.mdx
similarity index 100%
rename from website/versioned_docs/version-v2.0.0-beta.37/introduction.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/introduction.mdx
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/_category_.json b/website/versioned_docs/version-v2.0.0-beta.39/reference/_category_.json
similarity index 100%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/_category_.json
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/_category_.json
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/cli.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/cli.mdx
similarity index 89%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/cli.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/cli.mdx
index 4dcc5593..14081ca9 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/reference/cli.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/reference/cli.mdx
@@ -24,7 +24,7 @@ The Wails CLI has a number of commands that are used for managing your projects.
| -f | Force build application | false |
Example:
- `wails init -n test -d mytestproject -g -ide vscode -q`
+`wails init -n test -d mytestproject -g -ide vscode -q`
This will generate a a project called "test" in the "mytestproject" directory, initialise git,
generate vscode project files and do so silently.
@@ -36,15 +36,15 @@ More information on using IDEs with Wails can be found [here](../guides/ides.mdx
Remote templates (hosted on GitHub) are supported and can be installed by using the template's project URL.
Example:
- `wails init -n test -t https://github.com/leaanthony/testtemplate[@v1.0.0]`
+`wails init -n test -t https://github.com/leaanthony/testtemplate[@v1.0.0]`
A list of community maintained templates can be found [here](../community/templates.mdx)
:::warning Attention
- **The Wails project does not maintain, is not responsible nor liable for 3rd party templates!**
+**The Wails project does not maintain, is not responsible nor liable for 3rd party templates!**
- If you are unsure about a template, inspect `package.json` and `wails.json` for what scripts are run and what packages are installed.
+If you are unsure about a template, inspect `package.json` and `wails.json` for what scripts are run and what packages are installed.
:::
@@ -68,8 +68,10 @@ A list of community maintained templates can be found [here](../community/templa
| -v int | Verbosity level (0 - silent, 1 - default, 2 - verbose) | 1 |
| -webview2 | WebView2 installer strategy: download,embed,browser,error | download |
| -u | Updates your project's `go.mod` to use the same version of Wails as the CLI | |
-| -debug | Retains debug information in the application | false |
+| -debug | Retains debug information in the application. Allows the use of the devtools in the application window | false |
| -trimpath | Remove all file system paths from the resulting executable. | false |
+| -race | Build with Go's race detector | false |
+| -windowsconsole | Keep the console window for Windows builds | false |
For a detailed description of the `webview2` flag, please refer to the [Windows](../guides/windows.mdx) Guide.
@@ -82,13 +84,13 @@ Example:
:::info UPX on Apple Silicon
- There are [issues](https://github.com/upx/upx/issues/446) with using UPX with Apple Silicon.
+There are [issues](https://github.com/upx/upx/issues/446) with using UPX with Apple Silicon.
:::
:::info UPX on Windows
- Some Antivirus vendors false positively mark `upx` compressed binaries as virus, see [issue](https://github.com/upx/upx/issues/437).
+Some Antivirus vendors false positively mark `upx` compressed binaries as virus, see [issue](https://github.com/upx/upx/issues/437).
:::
@@ -153,8 +155,8 @@ Your system is ready for Wails development!
- A webserver is started on `http://localhost:34115` which serves your application (not just frontend) over http. This allows you to use your favourite browser development extensions
- All application assets are loaded from disk. If they are changed, the application will automatically reload (not rebuild). All connected browsers will also reload
- A JS module is generated that provides the following:
- - Javascript wrappers of your Go methods with autogenerated JSDoc, providing code hinting
- - TypeScript versions of your Go structs, that can be constructed and passed to your go methods
+- Javascript wrappers of your Go methods with autogenerated JSDoc, providing code hinting
+- TypeScript versions of your Go structs, that can be constructed and passed to your go methods
- A second JS module is generated that provides a wrapper + TS declaration for the runtime
| Flag | Description | Default |
@@ -168,6 +170,7 @@ Your system is ready for Wails development!
| -tags "extra tags" | Build tags to pass to compiler (quoted and space separated) | |
| -loglevel "loglevel"| Loglevel to use - Trace, Debug, Info, Warning, Error | Debug |
| -noreload | Disable automatic reload when assets change | |
+| -nogen | Disable generate module | |
| -v | Verbosity level (0 - silent, 1 - standard, 2 - verbose) | 1 |
| -wailsjsdir | The directory to generate the generated Wails JS modules | Value in `wails.json` |
| -debounce | The time to wait for reload after an asset change is detected | 100 (milliseconds) |
@@ -176,6 +179,7 @@ Your system is ready for Wails development!
| -appargs "args" | Arguments passed to the application in shell style | |
| -platform "platform" | Platform/Arch to target | `runtime.GOOS` |
| -save | Saves the given `assetdir`, `reloaddirs`, `wailsjsdir`, `debounce`, `devserver` and `frontenddevserverurl` flags in `wails.json` to become the defaults for subsequent invocations. | |
+| -race | Build with Go's race detector | false |
Example:
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/menus.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/menus.mdx
similarity index 97%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/menus.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/menus.mdx
index bab62358..94f08b2e 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/reference/menus.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/reference/menus.mdx
@@ -18,6 +18,10 @@ An example of how to create a menu:
FileMenu.AddText("Quit", keys.CmdOrCtrl("q"), func(_ *menu.CallbackData) {
runtime.Quit()
})
+
+ if runtime.GOOS == "darwin" {
+ AppMenu.Append(menu.EditMenu()) // on macos platform, we should append EditMenu to enable Cmd+C,Cmd+V,Cmd+Z... shortcut
+ }
err := wails.Run(&options.App{
Title: "Menus Demo",
@@ -254,7 +258,7 @@ using radio groups that may share a callback.
:::info Roles
- Roles are currently supported on Mac only.
+Roles are currently supported on Mac only.
:::
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/options.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/options.mdx
similarity index 84%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/options.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/options.mdx
index eb317763..4e8b43cc 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/reference/options.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/reference/options.mdx
@@ -15,30 +15,31 @@ import "github.com/wailsapp/wails/v2/pkg/options"
func main() {
err := wails.Run(&options.App{
- Title: "Menus Demo",
- Width: 800,
- Height: 600,
- DisableResize: false,
- Fullscreen: false,
- Frameless: true,
- MinWidth: 400,
- MinHeight: 400,
- MaxWidth: 1280,
- MaxHeight: 1024,
- StartHidden: false,
- HideWindowOnClose: false,
- RGBA: &options.RGBA{R: 0, G: 0, B: 0, A: 255},
- AlwaysOnTop: false,
- Assets: assets,
- AssetsHandler: assetsHandler,
- Menu: app.applicationMenu(),
- Logger: nil,
- LogLevel: logger.DEBUG,
- OnStartup: app.startup,
- OnDomReady: app.domready,
- OnShutdown: app.shutdown,
- OnBeforeClose: app.beforeClose,
- WindowStartState: options.Maximised,
+ Title: "Menus Demo",
+ Width: 800,
+ Height: 600,
+ DisableResize: false,
+ Fullscreen: false,
+ Frameless: true,
+ MinWidth: 400,
+ MinHeight: 400,
+ MaxWidth: 1280,
+ MaxHeight: 1024,
+ StartHidden: false,
+ HideWindowOnClose: false,
+ BackgroundColour: &options.RGBA{R: 0, G: 0, B: 0, A: 255},
+ AlwaysOnTop: false,
+ Assets: assets,
+ AssetsHandler: assetsHandler,
+ Menu: app.applicationMenu(),
+ Logger: nil,
+ LogLevel: logger.DEBUG,
+ LogLevelProduction: logger.ERROR,
+ OnStartup: app.startup,
+ OnDomReady: app.domready,
+ OnShutdown: app.shutdown,
+ OnBeforeClose: app.beforeClose,
+ WindowStartState: options.Maximised,
Bind: []interface{}{
app,
},
@@ -48,6 +49,7 @@ func main() {
DisableWindowIcon: false,
DisableFramelessWindowDecorations: false,
WebviewUserDataPath: "",
+ WebviewBrowserPath: "",
Theme: windows.SystemDefault,
CustomTheme: &windows.ThemeSettings{
DarkModeTitleBar: windows.RGB(20, 20, 20),
@@ -196,14 +198,14 @@ Type: bool
By default, closing the window will close the application. Setting this to `true` means closing the window will
hide the window instead.
-### RGBA
+### BackgroundColour
-Name: RGBA
+Name: BackgroundColour
Type: int (0xRRGGBBAA)
Example: 0xFF000088 - Red at 50% transparency
-This value is the RGBA value to set the window by default.
+This value is the default background colour of the window.
Default: 0xFFFFFFFF.
### AlwaysOnTop
@@ -222,8 +224,9 @@ Type: embed.FS
The frontend assets to be used by the application. Requires an `index.html` file.
-### AssetsHandler
+### AssetsHandler
+
Name: AssetsHandler
@@ -284,6 +287,16 @@ Default: `Info` in dev mode, `Error` in production mode
The default log level. More details about logging in the [Log Reference](../reference/runtime/log.mdx).
+### LogLevelProduction
+
+Name: LogLevelProduction
+
+Type: logger.LogLevel
+
+Default: `Error`
+
+The default log level for production builds. More details about logging in the [Log Reference](../reference/runtime/log.mdx).
+
### OnStartup
Name: OnStartup
@@ -392,7 +405,7 @@ Name: WebviewIsTransparent
Type: bool
Setting this to `true` will make the webview background transparent when an alpha value of `0` is used.
-This means that if you use `rgba(0,0,0,0)`, the host window will show through.
+This means that if you use `rgba(0,0,0,0)` for `background-color` in your CSS, the host window will show through.
Often combined with [WindowIsTranslucent](#WindowIsTranslucent) to make frosty-looking applications.
### WindowIsTranslucent
@@ -430,6 +443,19 @@ Type: string
This defines the path where the WebView2 stores the user data. If empty `%APPDATA%\[BinaryName.exe]` will be used.
+### WebviewBrowserPath
+
+Name: WebviewBrowserPath
+
+Type: string
+
+This defines the path to a directory with WebView2 executable files and libraries. If empty, webview2 installed in the system will be used.
+
+Important information about distribution of fixed version runtime:
+- [How to get and extract runtime](https://docs.microsoft.com/en-us/microsoft-edge/webview2/concepts/distribution#details-about-the-fixed-version-runtime-distribution-mode)
+- [Known issues for fixed version](https://docs.microsoft.com/en-us/microsoft-edge/webview2/concepts/distribution#known-issues-for-fixed-version)
+- [The path of fixed version of the WebView2 Runtime should not contain \Edge\Application\.](https://docs.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/webview2-idl?view=webview2-1.0.1245.22#createcorewebview2environmentwithoptions)
+
### Theme
Name: Theme
@@ -511,6 +537,33 @@ Type: `*windows.Messages`
A struct of strings used by the webview2 installer if a valid webview2 runtime is not found.
Customise this for any language you choose to support.
+### ResizeDebounceMS
+
+Name: ResizeDebounceMS
+
+Type: uint16
+
+ResizeDebounceMS is the amount of time to debounce redraws of webview2 when resizing the window.
+The default value (0) will perform redraws as fast as it can.
+
+### OnSuspend
+
+Name: OnSuspend
+
+Type: func()
+
+If set, this function will be called when windows initiates a switch to low power mode (suspend/hibernate)
+
+### OnResume
+
+Name: OnResume
+
+Type: func()
+
+If set, this function will be called when windows resumes from low power mode (suspend/hibernate)
+
+
+
## Mac Specific Options
### TitleBar
@@ -536,7 +589,7 @@ Name: WebviewIsTransparent
Type: bool
Setting this to `true` will make the webview background transparent when an alpha value of `0` is used.
-This means that if you use `rgba(0,0,0,0)`, the host window will show through.
+This means that if you use `rgba(0,0,0,0)` for `background-color` in your CSS, the host window will show through.
Often combined with [WindowIsTranslucent](#WindowIsTranslucent) to make frosty-looking applications.
### WindowIsTranslucent
@@ -649,14 +702,16 @@ func main() {
The "About" menu item will appear in the app menu:
-

+
When clicked, that will open an about message box:
-

+
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/project-config.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/project-config.mdx
similarity index 64%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/project-config.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/project-config.mdx
index de612d5f..503c7089 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/reference/project-config.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/reference/project-config.mdx
@@ -15,7 +15,7 @@ The project config resides in the `wails.json` file in the project directory. Th
"frontend:build": "[The command to build the assets, run in the frontend directory - often `npm run build`]",
"frontend:dev": "[This command is the dev equivalent of frontend:build. If not specified falls back to frontend:build]",
"frontend:dev:watcher": "[This command is run in a separate process on `wails dev`. Useful for 3rd party watchers or starting 3d party dev servers]",
- "frontend:dev:serverUrl": "[URL to a 3rd party dev server to be used to serve assets, EG Vite",
+ "frontend:dev:serverUrl": "[URL to a 3rd party dev server to be used to serve assets, EG Vite. If this is set to 'auto' then the devServerUrl will be inferred from the Vite output]",
"wailsjsdir": "[Relative path to the directory that the auto-generated JS modules will be created]",
"version": "[Project config version]",
"outputfilename": "[The name of the binary]",
@@ -23,11 +23,16 @@ The project config resides in the `wails.json` file in the project directory. Th
"devServer": "[Address to bind the wails dev sever to. Default: localhost:34115]",
"appargs": "[Arguments passed to the application in shell style when in dev mode]",
"runNonNativeBuildHooks": false, // Defines if build hooks should be run though they are defined for an OS other than the host OS.
- "postBuildHooks": {
- "GOOS/GOARCH": "[The command that will be executed after a build of the specified GOOS/GOARCH: ${platform} is replaced with the "GOOS/GOARCH" and ${bin} with the path to the compiled binary. The "GOOS/GOARCH" hook is executed before the "GOOS/*" and "*/*" hook.]",
- "GOOS/*": "[The command that will be executed after a build of the specified GOOS: ${platform} is replaced with the "GOOS/GOARCH" and ${bin} with the path to the compiled binary. The "GOOS/*" hook is executed before the "*/*" hook.]",
- "*/*": "[The command that will be executed after every build: ${platform} is replaced with the "GOOS/GOARCH" and ${bin} with the path to the compiled binary.]"
+ "preBuildHooks": {
+ "GOOS/GOARCH": "[The command that will be executed before a build of the specified GOOS/GOARCH: ${platform} is replaced with the "GOOS/GOARCH". The "GOOS/GOARCH" hook is executed before the "GOOS/*" and "*/*" hook.]",
+ "GOOS/*": "[The command that will be executed before a build of the specified GOOS: ${platform} is replaced with the "GOOS/GOARCH". The "GOOS/*" hook is executed before the "*/*" hook.]",
+ "*/*": "[The command that will be executed before every build: ${platform} is replaced with the "GOOS/GOARCH".]"
},
+ "postBuildHooks": {
+ "GOOS/GOARCH": "[The command that will be executed after a build of the specified GOOS/GOARCH: ${platform} is replaced with the "GOOS/GOARCH" and ${bin} with the path to the compiled binary. The "GOOS/GOARCH" hook is executed before the "GOOS/*" and "*/*" hook.]",
+ "GOOS/*": "[The command that will be executed after a build of the specified GOOS: ${platform} is replaced with the "GOOS/GOARCH" and ${bin} with the path to the compiled binary. The "GOOS/*" hook is executed before the "*/*" hook.]",
+ "*/*": "[The command that will be executed after every build: ${platform} is replaced with the "GOOS/GOARCH" and ${bin} with the path to the compiled binary.]"
+ },
"info": { // Data used to populate manifests and version info.
"companyName": "[The company name. Default: [The project name]]",
"productName": "[The product name. Default: [The project name]]",
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/_category_.json b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/_category_.json
similarity index 100%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/_category_.json
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/_category_.json
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/browser.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/browser.mdx
similarity index 100%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/browser.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/browser.mdx
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/dialog.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/dialog.mdx
similarity index 91%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/dialog.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/dialog.mdx
index 88fc5ea4..1f8a4000 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/dialog.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/dialog.mdx
@@ -9,7 +9,7 @@ sidebar_position: 5
This part of the runtime provides access to native dialogs, such as File Selectors and Message boxes.
:::info Javascript
- Dialog is currently unsupported in the JS runtime.
+Dialog is currently unsupported in the JS runtime.
:::
### OpenDirectoryDialog
@@ -157,7 +157,8 @@ selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
```
the first button is shown as default:
-

+
@@ -172,7 +173,8 @@ selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
```
the second button is shown as default. When `return` is pressed, the value "two" is returned.
-

+
@@ -188,7 +190,8 @@ selection, err := runtime.MessageDialog(b.ctx, runtime.MessageDialogOptions{
```
the button with "three" is shown at the bottom of the dialog. When `escape` is pressed, the value "three" is returned:
-

+
@@ -221,7 +224,8 @@ Windows allows you to use multiple file filters in dialog boxes. Each FileFilter
dialog:
-

+
@@ -233,7 +237,8 @@ Linux allows you to use multiple file filters in dialog boxes. Each FileFilter w
dialog:
-

+
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/events.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/events.mdx
similarity index 100%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/events.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/events.mdx
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/intro.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/intro.mdx
similarity index 100%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/intro.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/intro.mdx
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/log.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/log.mdx
similarity index 100%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/log.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/log.mdx
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/menu.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/menu.mdx
similarity index 90%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/menu.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/menu.mdx
index 7d2d0178..95bed2d9 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/menu.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/menu.mdx
@@ -9,7 +9,7 @@ sidebar_position: 6
These methods are related to the application menu.
:::info Javascript
- Menu is currently unsupported in the JS runtime.
+Menu is currently unsupported in the JS runtime.
:::
### MenuSetApplicationMenu
diff --git a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/window.mdx b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/window.mdx
similarity index 92%
rename from website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/window.mdx
rename to website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/window.mdx
index 915ca9ac..baf6222e 100644
--- a/website/versioned_docs/version-v2.0.0-beta.37/reference/runtime/window.mdx
+++ b/website/versioned_docs/version-v2.0.0-beta.39/reference/runtime/window.mdx
@@ -127,6 +127,14 @@ Will resize the window if the window is currently larger than the given dimensio
Setting a size of `0,0` will disable this constraint.
+### WindowSetAlwaysOnTop
+Go Signature: `WindowSetAlwaysOnTop(ctx context.Context, b bool)`
+
+JS Signature: `WindowSetAlwaysOnTop(b: Boolen)`
+
+Sets the window AlwaysOnTop or not on top.
+
+
### WindowSetPosition
Go Signature: `WindowSetPosition(ctx context.Context, x int, y int)`
@@ -176,10 +184,10 @@ JS Signature: `WindowUnminimise()`
Restores the window to the dimensions and position prior to minimising.
-### WindowSetRGBA
-Go Signature: `WindowSetRGBA(ctx context.Context, R, G, B, A uint8)`
+### WindowSetBackgroundColour
+Go Signature: `WindowSetBackgroundColour(ctx context.Context, R, G, B, A uint8)`
-JS Signature: `WindowSetRGBA(R, G, B, A)`
+JS Signature: `WindowSetBackgroundColour(R, G, B, A)`
Sets the background colour of the window to the given RGBA colour definition.
This colour will show through for all transparent pixels.
diff --git a/website/versioned_docs/version-v2.0.0-beta.39/tutorials/_category_.json b/website/versioned_docs/version-v2.0.0-beta.39/tutorials/_category_.json
new file mode 100644
index 00000000..dfac1d17
--- /dev/null
+++ b/website/versioned_docs/version-v2.0.0-beta.39/tutorials/_category_.json
@@ -0,0 +1,4 @@
+{
+ "label": "Tutorials",
+ "position": 70
+}
diff --git a/website/versioned_docs/version-v2.0.0-beta.39/tutorials/helloworld.mdx b/website/versioned_docs/version-v2.0.0-beta.39/tutorials/helloworld.mdx
new file mode 100644
index 00000000..86ebae7e
--- /dev/null
+++ b/website/versioned_docs/version-v2.0.0-beta.39/tutorials/helloworld.mdx
@@ -0,0 +1,114 @@
+---
+sidebar_position: 10
+---
+
+# Hello World
+
+The aim of this tutorial is to get you up and running with the most basic
+application using Wails. You will be able to:
+
+ - Create a new Wails application
+ - Build the application
+ - Run the application
+
+:::note
+This tutorial uses Windows as the target platform. Output will vary slightly
+depending on your operating system.
+:::
+
+## Create a new Wails application
+
+To create a new Wails application using the default vanilla JS template,
+you need to run the following command:
+
+```bash
+wails init -n helloworld
+```
+
+You should see something similar to the following:
+
+```
+Wails CLI v2.0.0
+
+Initialising Project 'helloworld'
+---------------------------------
+
+Project Name: helloworld
+Project Directory: C:\Users\leaan\tutorial\helloworld
+Project Template: vanilla
+Template Support: https://wails.io
+
+Initialised project 'helloworld' in 232ms.
+```
+
+This will create a new directory called `helloworld` in the current directory.
+In this directory, you will find a number of files:
+
+```
+build/ - Contains the build files + compiled application
+frontend/ - Contains the frontend files
+app.go - Contains the application code
+main.go - The main program with the application configuration
+wails.json - The project configuration file
+go.mod - The go module file
+go.sum - The go module checksum file
+```
+
+## Build the application
+
+To build the application, change to the new `helloworld` project directory and run the following command:
+
+```bash
+wails build
+```
+
+You should see something like the following:
+
+```
+Wails CLI v2.0.0
+
+App Type: desktop
+Platforms: windows/amd64
+Compiler: C:\Users\leaan\go\go1.18.3\bin\go.exe
+Build Mode: Production
+Skip Frontend: false
+Compress: false
+Package: true
+Clean Build Dir: false
+LDFlags: ""
+Tags: []
+Race Detector: false
+
+Building target: windows/amd64
+------------------------------
+ - Installing frontend dependencies: Done.
+ - Compiling frontend: Done.
+ - Generating bundle assets: Done.
+ - Compiling application: Done.
+Built 'C:\Users\leaan\tutorial\helloworld\build\bin\helloworld.exe' in 10.616s.
+```
+
+This has compiled the application and saved it in the `build/bin` directory.
+
+## Run the application
+
+If we view the `build/bin` directory in Windows Explorer, we should see our project binary:
+
+
+

+
+
+
+We can run it by simply double-clicking the `helloworld.exe` file.
+
+On Mac, Wails generates a `helloworld.app` file which can be run by double-clicking it.
+
+On Linux, you can run the application using `./helloworld` from the `build/bin` directory.
+
+You should see the application working as expected:
+
+
+

+
+
diff --git a/website/versioned_sidebars/version-v2.0.0-beta.37-sidebars.json b/website/versioned_sidebars/version-v2.0.0-beta.39-sidebars.json
similarity index 100%
rename from website/versioned_sidebars/version-v2.0.0-beta.37-sidebars.json
rename to website/versioned_sidebars/version-v2.0.0-beta.39-sidebars.json
diff --git a/website/versions.json b/website/versions.json
index 3b9e5504..ab4a34ce 100644
--- a/website/versions.json
+++ b/website/versions.json
@@ -1,4 +1,4 @@
[
- "v2.0.0-beta.38",
- "v2.0.0-beta.37"
+ "v2.0.0-beta.39",
+ "v2.0.0-beta.38"
]
\ No newline at end of file