Gold brings Google's Go language across the full Elements platform family. Write Go code directly against each platform's native APIs, and share useful non-UI code between targets when it makes sense.
Write Go Code, for Any Platform
With Elements, you can use Go language experience to build for modern target platforms far beyond the traditional Go toolchain. That includes .NET, .NET Core, Mono, ASP.NET, Java, Android SDK and NDK, Cocoa, native Windows, native Linux, and WebAssembly for the browser or Node.js.
The full Go language syntax is available across these targets, and you can mix Go with Oxygene, C#, Swift, Java, and Mercury in the same Elements project when that gives you the best shape for the job.
import (
"fmt"
"time"
)
func main() {
isFinished := make(chan bool, 1)
go doWork(isFinished)
<-isFinished
fmt.Println("Done!")
}
func doWork(isFinished chan bool) {
fmt.Println("doing things...")
time.Sleep(time.Second * 2)
isFinished <- true
}
The Platforms
Gold targets the same broad platform set as the rest of Elements, with native API access where you deploy.
Windows, including .NET, .NET Core, Mono, ASP.NET, Universal Windows apps, and native Win32.
Android, both regular Java-based Android SDK apps and Android NDK.
Mac, iOS, iPadOS, tvOS, and watchOS, using fully native Cocoa APIs.
Linux, with native Linux support and Mono where you want it.
Web, server-side via ASP.NET or JSP, and browser-side with WebAssembly.
Java, for JVM projects and libraries that need to live close to Java code.
You can see a full overview of Elements' platform coverage here.
Go Base Library and Open Source Code
Go is more than a language; it comes with a broad base library for math, encryption, networking, HTML parsing, image processing, and more. We have ported the Go base library to be source-compatible with Gold for .NET, Android NDK, Cocoa, native Windows, native Linux, and related Elements targets.
The wider Go ecosystem is full of useful open-source packages, from database drivers and web engines to video processing and middleware. With Gold and the Go base library, many of these libraries can be compiled for Elements platforms and used from .NET, iOS, Android, or wherever your project needs them.
You can find one of many collections of Go libraries at awesome-go.com.
Sophisticated IDEs for Mac and Windows
Gold is deeply integrated into the Elements development environments, with project templates, code completion, debugging, and practical build tooling.
Fire
Fire is our native Mac IDE, with Go project templates, editor smarts, debugging, and deployment support.
Read More
Water
Water brings the same focused Elements workflow to Windows, including the full Gold toolchain.
Read More
Visual Studio
Elements also integrates Go into Visual Studio 2017, 2019, 2022 and 2026, alongside the tools Windows developers already use.
Read More
EBuild
EBuild handles all build steps from source to final app, including packages such as .ipa and .apk.
Read More
Mix Go With Other Languages
With Elements, all languages are created equal. In the same project, you can mix Go with C#, Swift, Java, Oxygene, and Mercury.
For Go Developers
Keep Go as your main language, but add a source file in another Elements language when you want a feature Go does not provide, such as classes, or when you want to reuse code found elsewhere.
Read More
For Elements Developers
Add focused Go files to existing Elements projects when Go's strengths fit a specific piece of logic, while keeping the rest of the app in Oxygene, C#, Swift, Java, or Mercury.
Read More
For Cross-Platform Teams
Share non-UI code across platform projects, then write each app's native surface against the APIs and frameworks that make sense for that target.
Read More
Ecosystem
Gold, like all six Elements languages, comes with an extensive toolchain that covers the whole development process: IDEs, compiler, project system, build tasks, deployment, and support libraries.
It also integrates deeply with the existing ecosystem for each platform you target. On Mac and iOS, you have full access to Cocoa APIs, .xib files, storyboards, and asset catalogs. On Android and Java, Gold uses the platform tools for dexing Java code, creating .apk files, and pulling in external Gradle packages. On .NET, you can use framework libraries, third-party assemblies, NuGet packages, desktop .NET, .NET Core, Mono, and Universal Windows Projects.
Watch the Intro Video
The Gold intro video gives a quick look at using Go across the Elements platform family.
Get Yours Now
Gold is available standalone as a Go-language-only license, or as part of the full Elements package with all six languages.
Either edition supports all platforms, includes Fire and Water so you can work on Mac and Windows, and comes with a full year of free weekly updates and support.
Licenses cover a single named developer. Volume discounts, site licenses, and academic and personal-use licenses are also available.
Check out RemObjects C#, Swift or Iodine (Java) or Oxygene!





