Giter Club home page Giter Club logo

flutter's Introduction

BINARIES


Introduction

This repo showcases the PoC of the new interop module of therecipe/qt, as well as the new flutter module containing a custom flutter desktop embedder, it is also a part of a series of language bindings for Qt.

The series consists of the Go, the JavaScript/TypeScript, the Dart/Flutter, the Haxe and the Swift binding for Qt.

Other bindings to languages such as Kotlin, Java, C#, Python, Node.js and Ruby are planned as well.

Status

Almost all Qt functions and classes are accessible from Dart and you should be able to find everything you need to build fully featured Qt applications in Dart, the feature-set shown represents only a small portion of all the features available.

However this is still very much experimental, and there are known memory leaks and other limitations such as the missing support for enums.

Another caveat is that the flutter embedder currently only supports debug builds and the interop api also isn't working on windows yet.

It's planned to make the custom flutter embedder optional, and support plain Dart projects in the future as well.

Also, a word of warning, the interop api isn't frozen yet and might change in the future.

If you want to dig around, checkout the main.dart and the internal.dart files were all of the logic used for this binding is buried.

Info

For general information about therecipe/qt, checkout: https://github.com/therecipe/qt

The Qt API Docs can be found here: https://doc.qt.io/qt-5/classes.html

If you have questions, join our Slack channel #qt-binding (invite yourself here)

Usage

Setup therecipe/qt and install Flutter: https://flutter.dev/docs/get-started/install

After adding the flutter/bin dir to your PATH, you can use qtdeploy to build and deploy the showcase.

If you want to rebuild the flutter code during development, you can use flutter build bundle.

Then use go run -tags=minimal . to build the go code and run the showcase. (Maybe take a look into the make.sh script as well.)

To enabled hot reloading, use something like: flutter attach --debug-uri=http://127.0.0.1:60123/xyzxyzxyz/

Also, the linux, linux_static, darwin and darwin_static docker images should contain the flutter sdk now as well.

Docker windows builds should work also, but only if you run them after building with at least one of the four images listed above.

If you want to re-generate the Dart binding, you can use the gen.sh script to do so.

flutter's People

Contributors

therecipe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

flutter's Issues

Discontinued?

Discontinued or is there already a release date for Qt/Dart in sight? (So the version without Flutter of which in the README is the talk)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.