-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EPIC: Flutter
MVP π±
#40
Comments
I'm working on this as I go along. I've already created the PR for dwyl/learn-flutter#68 so that should tick that off. I'm finishing the dwyl/flutter-counter-example#5 issue as well. Currently re-writing the README so it's up-to-date and correctly formatted. |
An update on this:
Wanting to get all of these sorted before passing on to the |
@LuchoTurtle as discussed, we want to persist the |
Perhaps I'm getting ahead but I was looking at options for integrating Flutter with Phoenix and a few questions arose. ChannelsWe are going to leverage Phoenix for its soft-realtime capabilities, so Flutter should be able to make use of Phoenix Channels. I've found two relevant options for this:
I personally believe we should go for the latter but that's up for debate. As @nelsonic said, Phoenix Channels are WebSockets to the core. Using the native WebSockets package for Dart is an option but using these wrappers will be more time-efficient for us. APIPhoenix will act as an API, as well. I've dabbled with the thought that adding GraphQL would be a sensible decision in the long term. But is it worth it for the MVP? Are we using a shotgun to kill a fly? I'm mentioning this because this topic was discussed in Elixir Forums - How to Integrate Flutter with Phoenix and Absinthe was mentioned from a user that was creating a Flutter App with it. GraphQL allows subscriptions, which work through Websockets. But using this seems to kind of negate using Phoenix's Channels, which is the bread and butter of the framework (also, Absinthe sockets is only available for JS clients, not Dart). It also seems that GraphQL is slow, so it's a no-go. It's still food-for-thought. Just posting this for future reference :) |
After pushing dwyl/phoenix-todo-list-tutorial#60 and dwyl/flutter-todo-list-tutorial#28, it seems that the next step is tackling dwyl/technology-stack#106. Apparently, it's already in progress by you, @nelsonic . I can't seem to find any repo for this SPIKE. Should I create one? I've reference a bit of research on dwyl/technology-stack#106 (comment). |
@LuchoTurtle apologies for the lack of clarity on dwyl/technology-stack#106 I assigned to myself but it's not Feel free to pick it up and build a quick prototype based on one of the Todo List Tutorials and demo it tomorrow. π |
@LuchoTurtle it's good to get ahead. |
@LuchoTurtle when you're back at your desk, please recap the progress you've made on the |
As it stands, the API has all of the CRUD functionalities tested ( According to dwyl/app#273, one thing that is also yet to be tackled is how the documentation will be presented. Examples like The basic features of the MVP are missing in |
Cool. Let's start the process of borrowing the |
Context
Part of the
dwyl
mission andmanifesto
is to be community driven. π«We want as many people as possible to feel empowered to contribute to the project(s) they use. π‘ π¬ π©βπ» π
To streamline the "onboarding" of new
people
we need to create world-class documentation. πThat often involves writing beginner-focussed generic tutorials from first principals. π°
The reason we write our examples/tutorials to be generic is so that more people can learn from them π
and hopefully contribute to improving them. π€
So far, the plan is working ...! π
before
we build theFlutter
App ... πTo prepare for building the
Flutter
version of theMVP
we need to:code
] tolearn-dart
: Add Beginner Friendly ExamplesΒ learn-dart#15Flutter
Counter Example: Create Counter Example and Deploy to Mobile Device!Β flutter-counter-example#5 π’Flutter
Todo List:Phoenix
Todo List Tutorial to have a basicAPI
Persisting todo itemsΒ flutter-todo-list-tutorial#18 that can be used as the "Backend" for theFlutter
Todo List. GOTO: Feat: Todo ListREST API
Β phoenix-todo-list-tutorial#53items
to the mobile device usingdrift
See:
drift
reactive persistence library forFlutter
&Dart
built on top ofsqlite
Β learn-flutter#70Flutter
Stopwatch Tutorial: Feat: CreateFlutter
Stopwatch TutorialΒ flutter-stopwatch-tutorial#1 β±οΈRoadmap πΊοΈ
Build an
API
with the features we want in the "Final" version of theApp
: [Epic] API is the ProductΒ app#273before
we can build the API we need:items
andtimers
e.g. via:
PaperTrail
: SPIKE:PaperTrail
?Β technology-stack#106ids
foritems
andtimers
to enable Offline support with zero conflict.We have this in
Elixir
-land via: dwyl/cid we need to replicate this to: Feat: createdart
version ofcid
packageΒ dart_cid#1Replicate the basic MVP features described in mvp/BUILDIT.md in
Flutter
Flutter
MVP App Working in a Web BrowserMore to come ... But this list is already quite a lot of work! Pick off the issue/task you want to work on and get going! π
The text was updated successfully, but these errors were encountered: