{"id":13744073,"url":"https://github.com/go-flutter-desktop/hover","last_synced_at":"2025-05-14T16:02:30.399Z","repository":{"id":34314592,"uuid":"177009485","full_name":"go-flutter-desktop/hover","owner":"go-flutter-desktop","description":"Hover helps developers to release Flutter applications on desktop.","archived":false,"fork":false,"pushed_at":"2025-05-07T00:00:01.000Z","size":814,"stargazers_count":1007,"open_issues_count":6,"forks_count":82,"subscribers_count":20,"default_branch":"master","last_synced_at":"2025-05-07T00:33:55.528Z","etag":null,"topics":["cli","flutter","go-flutter","tool"],"latest_commit_sha":null,"homepage":"https://hover.build/","language":"Go","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/go-flutter-desktop.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-03-21T19:16:04.000Z","updated_at":"2025-05-06T23:59:56.000Z","dependencies_parsed_at":"2023-10-16T07:09:14.831Z","dependency_job_id":"0e83806e-cec5-4768-b582-a0ed1f696f98","html_url":"https://github.com/go-flutter-desktop/hover","commit_stats":{"total_commits":426,"total_committers":24,"mean_commits":17.75,"dds":0.8098591549295775,"last_synced_commit":"98d60976b2d8b40c455bcdbe8af7c8534e1776d7"},"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-flutter-desktop%2Fhover","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-flutter-desktop%2Fhover/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-flutter-desktop%2Fhover/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-flutter-desktop%2Fhover/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/go-flutter-desktop","download_url":"https://codeload.github.com/go-flutter-desktop/hover/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254179903,"owners_count":22027884,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","flutter","go-flutter","tool"],"created_at":"2024-08-03T05:01:02.556Z","updated_at":"2025-05-14T16:02:30.333Z","avatar_url":"https://github.com/go-flutter-desktop.png","language":"Go","readme":"# Hover - Run Flutter apps on the desktop with hot-reload\n\nHover is a simple build tool to create [Flutter](https://flutter.dev) desktop applications.\n\n**Hover is brand new and under development, it should be considered alpha. Anything can break, please backup your data before using hover**\n\nHover is part of the [go-flutter](https://github.com/go-flutter-desktop/go-flutter) project. Please report issues at the [go-flutter issue tracker](https://github.com/go-flutter-desktop/go-flutter/issues/).\n\n## Install\n\nHover uses [Go](https://golang.org) to build your Flutter application to desktop. Hover itself is also written using the Go language. You will need to [install go](https://golang.org/doc/install) on your development machine.\n\nRun `go version` and make sure that your Go version is 1.13 or higher.\n\nThen install hover by running this in your home directory:\n\n```bash\nGO111MODULE=on go install github.com/go-flutter-desktop/hover@latest\n```\nOr windows:\n```\nset GO111MODULE=on\ngo install github.com/go-flutter-desktop/hover@latest\n```\nOr for powershell:\n```powershell\n$env:GO111MODULE=\"on\"; go get -u -a github.com/go-flutter-desktop/hover@latest\n```\nMake sure the hover binary is on your `PATH` (defaults are `$GOPATH/bin` or `$HOME/go/bin`)\n\nRun the same command to update when a newer version becomes available.\n\nInstall these dependencies:\n\n* You need to make sure you have a C compiler.  \n  The recommended C compiler are documented [here](https://github.com/golang/go/wiki/InstallFromSource#install-c-tools).\n\n* You need to make sure you have dependencies of GLFW:\n  * On macOS, you need Xcode or Command Line Tools for Xcode (`xcode-select --install`) for required headers and libraries.\n  * On Ubuntu/Debian-like Linux distributions, you need `libgl1-mesa-dev xorg-dev` packages.\n  * On CentOS/Fedora-like Linux distributions, you need `libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel mesa-libGL-devel libXi-devel` packages.\n  * See [here](http://www.glfw.org/docs/latest/compile.html#compile_deps) for full details.\n\n## Getting started with an existing Flutter project\n\nThis assumes you have an existing flutter project which you want to run on desktop. If you don't have a project yet, follow the flutter tutorial for setting up a new project first.\n\n### Init project for hover\n\ncd into a flutter project.\n\n```bash\ncd projects/simpleApplication\n```\n\nThe first time you use hover for a project, you'll need to initialize the project for use with hover. An argument can be passed to `hover init` to set the project path. This is usually the path for your project on github or a self-hosted git service. _If you are unsure use `hover init` without a path. You can change the path later._\n\n```bash\nhover init github.com/my-organization/simpleApplication\n```\n\nThis creates the directory `go` and adds boilerplate files such as Go code and a default logo.\n\nOptionally, you may add [plugins](https://github.com/go-flutter-desktop/plugins) to `go/cmd/options.go`  \nOptionally, change the logo in `go/assets/logo.png`, which is used as icon for the window.\n\n### Run with hot-reload\n\nTo run the application and attach flutter for hot-reload support:\n\n```bash\nhover run\n```\n\nThe hot-reload is manual because you'll need to press 'r' in the terminal to hot-reload the application.\n\nBy default, hover uses the file `lib/main_desktop.dart` as entrypoint. You may specify a different endpoint by using the `--target` flag.\n\n#### IDE integration\n\n##### VSCode\n\nPlease try the [experimental Hover extension for VSCode](https://marketplace.visualstudio.com/items?itemName=go-flutter.hover).\n\nIf you want to manually integrate with VSCode, read this [issue](https://github.com/go-flutter-desktop/go-flutter/issues/129#issuecomment-513590141).\n\n##### Emacs\n\nCheck [hover.el](https://github.com/ericdallo/hover.el) packge for emacs integration.\n\n### Build standalone application\n\nTo create a standalone release (JIT mode) build run this command:\n\n```bash\nhover build linux # or darwin or windows\n```\n\nYou can create a build for any of the supported OSs using cross-compiling which needs [Docker to be installed](https://docs.docker.com/install/).\nThen run the command from above and it will do everything for you.\n\nThe output will be in `go/build/outputs/linux` or windows or darwin.\n\nTo start the binary: (replace `yourApplicationName` with your app name)\n\n```bash\n./go/build/outputs/linux/yourApplicationName\n```\n\nIt's possible to zip the whole dir `go/build/outputs/linux` and ship it to a different machine.\n\n### Packaging\n\nYou can package your application for different packaging formats.  \nFirst initialize the packaging format:\n\n```bash\nhover init-packaging linux-appimage\n```\n\nUpdate the configuration files located in `go/packaging/linux-appimage/`to your needs.  \nThen create a build and package it using this command:\n\n```bash\nhover build linux-appimage\n```\n\nThe packaging output is placed in `go/build/outputs/linux-appimage/`\n\nTo get a list of all available packaging formats run:\n\n```bash\nhover build --help\n```\n\n### Flavors\n\nHover supports different application flavors via `--flavor MY_FLAVOR` command.\nIf you wish to create a new flavor for you application, \nsimply copy `go/hover.yaml` into `go/hover-MY_FLAVOR.yaml` and modify contents as needed.\nIf no flavor is specified, Hover will always default to `hover.yaml`\n\n```\nhover run --flavor develop || hover build --flavor develop\n// hover-develop.yaml\n```\n\n\n## Issues\n\nPlease report issues at the [go-flutter issue tracker](https://github.com/go-flutter-desktop/go-flutter/issues/).\n","funding_links":[],"categories":["Go"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgo-flutter-desktop%2Fhover","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgo-flutter-desktop%2Fhover","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgo-flutter-desktop%2Fhover/lists"}