mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2026-03-24 04:46:56 +00:00
[GH-ISSUE #105] [FR] How is the communication between Flutter and Rust frontend implemented? #49
Labels
No labels
2024
2025
2026
acct mgmt
AI
automation
bug
calendar
ci
CJK
cloud
code-block
collaboration
copy-paste
database
data migration
data sync
deploy
desktop
develop
develop
documentation
duplicate
editor
editor-plugin
emoji
export
files
flutter-only
follow-up
formula
good first issue for devs
good first issue for experienced devs
grid
hacktoberfest
HACKTOBERFEST-ACCEPTED
help wanted
i18n
icons
images
importer
improvements
infra
install
integrations
IR
kanban board
login
look and joy
mentorship
mobile
mobile
needs design
new feature
new feature
non-coding
notes
notifications
onboarding
organization
P0+
permission
platform-linux
platform-mac
platform-windows
plugins
program
pull-request
Q1 25
Q1 26
Q2 24
Q2 25
Q3 24
Q3 25
Q4 24
Q4 25
react
regression
rust
rust
Rust-only
Rust-only
Rust-starter
Rust-starter
self-hosted
shortcuts
side panel
slash-menu
sync v2
table
tablet
task
tauri
templates
tests
themes
translation
v0.5.6
v0.5.8
v0.5.9
v0.6.0
v0.6.1
v0.6.4
v0.6.7
v0.6.8
v0.7.1
v0.7.4
v0.7.4
v0.7.5
v0.7.6
v0.7.7
v0.7.8
v0.8.0
v0.8.4
v0.8.5
v0.8.9
web
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
AppFlowy-IO/AppFlowy#49
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @fzyzcjy on GitHub (Nov 30, 2021).
Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/105
Hi thanks for this wonderful project that replaces notion! I am very curious how the communication between Flutter and Rust frontend is implemented? I have looked at the source code and it seems that it only encodes the whole request/response into an action and a byte-array payload.
Therefore, I wonder the code can be simplified using flutter_rust_bridge, a high-level memory-safe binding generator for Flutter/Dart <-> Rust. With that, just simply write down a Rust function declaration, and the Dart side is automatically generated with rich type support and safety.
(Disclaimer: I wrote that lib and used it in my 200kloc project in production environment)
@annieappflowy commented on GitHub (Dec 1, 2021):
I'm glad that you asked :D
We had evaluated flutter_rust_bridge when we coded up the project. Unfortunately, it doesn't satisfy our needs. We're still open to this package though. If you'd like to discuss further, you can find me on Discord. We also welcome you to join our community!
@fzyzcjy commented on GitHub (Dec 1, 2021):
@annieappflowy Hi thanks for your reply and interest! Appflowy sounds quite promising and wonderful. flutter_rust_bridge has evolved and new features have been added, and corner cases have been better recently. Its architecture is also quite easy to use and modify, and I always respond quickly to PRs. I will join discord.
@fzyzcjy commented on GitHub (Dec 1, 2021):
I am in Discord now (as fzyzcjy). Where should I talk?
@annieappflowy commented on GitHub (Dec 1, 2021):
I'm adding you
@fzyzcjy commented on GitHub (Dec 1, 2021):
I see
@fzyzcjy commented on GitHub (Dec 6, 2021):
👀
@fzyzcjy commented on GitHub (Dec 24, 2021):
@annieappflowy How is it going? flutter_rust_bridge is going to be even more powerful in the future (e.g. https://github.com/fzyzcjy/flutter_rust_bridge/issues/243), thus by migrating to flutter_rust_bridge, appflowy no longer needs to spend time reinventing the wheel.
@MikeWallaceDev commented on GitHub (Dec 24, 2021):
It's interesting, might be something to look at in the future.