Skip to content

Plugin parity between Flutter Desktop & Mobile #10

@ghost

Description

SQLite runs on go-flutter and Mobile flutter today.
More probably being added.
https://github.com/go-flutter-desktop/plugins/blob/master/list.md

Whats holding back go-flutter desktop is the flutter-desktop project actually. Flutter-desktop have not exposed all the API's you see. Like streaming Plugin channels.
All other Plugin channel types work on go-flutter desktop.

i actually think using the go-flutter ( https://github.com/go-flutter-desktop ) desktop is better. All the functionality that the main flutter desktop team expose is easy to expose in the golang version. Its just simple CGO.

At the moment i write Mobile and Desktop plugins using golang, and so get maximum reuse.
You can compile both easily because golang can cross compile to all mobiles using gomobile.
If i need any special c lib stuff i can always call it direct from golang.
For Mobile you just wrap the golanf with the standard Flutter Mobile Java and Swift stuff. Heaps of example of all this out there. Let me know if you want some.

The embedder CGO binding: https://github.com/go-flutter-desktop/go-flutter/tree/master/embedder

The embedder downloader: https://github.com/go-flutter-desktop/hover/blob/master/internal/enginecache/cache.go

  • It would download the RaspberryPi embedder.

Compile the Flutter engine for ARM v7 and wire it up into the cache.go. Then its very easy to make new projects for Rasp PI.

For the embedded OS packaging and provisioning i am using this: https://github.com/gokrazy

  • Not everyones cup of tea
  • The dependencies are GLFW and a few other bits..

I would be happy to pay for Rasp-PI Flutter to happen and stay open sourced.
Let me know if you interested.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions