Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
G

go-flutter

> 数据库
Open source

Flutter on Windows, MacOS and Linux - based on Flutter Embedding, Go and GLFW.

5.9K stars0 likes0 views
WebsiteGitHub

About

Flutter on Windows, MacOS and Linux - based on Flutter Embedding, Go and GLFW.

# go-flutter - A package that brings Flutter to the desktop ## Purpose [Flutter](http://flutter.io/) allows you to build beautiful native apps on iOS and Android from a single codebase. This [unofficial](https://github.com/go-flutter-desktop/go-flutter/issues/191#issuecomment-511384007) project brings Flutter to the desktop through the power of [Go](http://golang.org/) and [GLFW](https://github.com/go-gl/glfw). The flutter engine itself doesn't know how to deal with desktop platforms _(eg handling mouse/keyboard input)_. Instead, it exposes an abstraction layer for whatever platform to implement. This project implements the [Flutter's Embedding API](https://github.com/flutter/flutter/wiki/Custom-Flutter-Engine-Embedders) using a single code base that runs on Windows, macOS, and Linux. For rendering, [**GLFW**](https://github.com/go-gl/glfw) fits the job because it provides the right abstractions over the OpenGL's Buffer/Mouse/Keyboard for each platform. The choice of [Golang](https://github.com/golang/go) comes from the fact that it has the same tooling on every platform. Plus Golang is a great language because it keeps everything simple and readable, which makes it easy to build cross-platform plugins.

## Getting started The best way to get started is to install [hover](https://github.com/go-flutter-desktop/hover), the official go-flutter tool to set up, build and run Flutter apps on the desktop, including hot-reload. Read the [hover tutorial](https://github.com/go-flutter-desktop/hover) to run your app on the desktop, or start with [one of our example apps](https://github.com/go-flutter-desktop/examples). If you want more in-depth information about go-flutter, read the [wiki](https://github.com/go-flutter-desktop/go-flutter/wiki). ## Supported features - Linux :penguin: - MacOS :apple: - Windows :checkered_flag: - [**Hot Reload**](https://github.com/go-flutter-desktop/go-flutter/issues/129#issuecomment-513590141) - Plugin system - BinaryMessageCodec, BinaryMessageChannel - StandardMessageCodec, JSONMessageCodec - StandardMethodCodec, **MethodChannel** - Plugin detection for [supported plugins](https://github.com/go-flutter-desktop/go-flutter/wiki/Create-a-hover-compatible-plugin) - Importable as Go library into custom projects - UTF-8 Text input - Clipboard copy & paste - Window title and icon - Standard keyboard shortcuts - ctrl-c ctrl-v ctrl-x ctrl-a - Home End shift-Home shift-End - Left ctrl-Left ctrl-shift-Left - Right ctrl-Right ctrl-shift-Right - Backspace ctrl-Backspace Delete - Mouse-over/hovering - Mouse-buttons - RawKeyboard events - Distribution format (windows-msi, mac-dmg, linux-appimage, and more) - Cross-compiling using docker :whale: Are you missing a feature? [Open an issue!](https://github.com/go-flutter-desktop/go-flutter/issues/new) ## Examples A separate repository contains example Flutter apps that also run on the desktop. Go to [github.com/go-flutter-desktop/examples](https://github.com/go-flutter-desktop/examples) to give them a try. ## Plugins Some popular plugins are already implemented over at [github.com/go-flutter-desktop/plugins](https://github.com/go-flutter-desktop/plugins). If you have implemented a plugin that you would like to share, feel free to open a PR on the plugins repository! For a detailed tutorial on how to create a plugin, read the [wiki](https://github.com/go-flutter-desktop/go-flutter/wiki/Implement-a-plugin). ## Version compatibility ### Flutter version Flutter itself is a relatively young project. Its framework and engine are updated often. The go-flutter project tries to stay compatible with the [beta channel](https://github.com/flutter/flutter/wiki/Flutter-build-release-channels) of Flutter. ### Go version Updating Go is simple and Go [seldomly has backwards-incompatible changes](https://golang.org/doc/go1compat). This project remains compatible with the [latest Go stable release](https://golang.org/dl/). ### GLFW version This project uses go-gl/glfw for GLFW v3.3. ## License [BSD 3-Clause License](LICENSE)

GitHub Issues· 0 open

View all on GitHub

No open issues yet, or sync has not completed.

> Tags

Gocross-platformdesktopflutterglfw

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category数据库
PricingOpen source

> Related tools

P
PostgreSQL
功能强大的开源关系型数据库
R
Redis
内存数据结构存储,常用作缓存与队列
M
MySQL
广泛使用的开源关系型数据库