GithubHelp home page GithubHelp logo

Comments (4)

brianegan avatar brianegan commented on May 23, 2024 1

@StanevPrime Thanks for writing in! Was busy for holidays & catching up on work. Right now, I've been going through the following plan:

  1. Update the shared packages to null-safety: todos_app_core, integration_tests, todos_repository_core, todos_repository_local_storage. I'm most of the way through this and could publish my branch shortly.
  2. Identify which Samples should be updated. Some of the apps are based on libraries that have not been updated to support null-safety. I plan on dropping those apps.
  3. Go through and update them! I'd start with the vanilla example, then probably go by popularity on pub.dev (provider, bloc, etc being prioritized over redux for example)

However, long-term I wonder if this project should actually change a bit. It's been very hard to keep each app up-to-date, not only with Null-safety but also with changes to the libraries themselves. Many of the samples are still perfectly valid, but some of them, such as the bloc examples, are probably a bit out of date since they've updated and improved things over time. Unfortunately, I've found it tough to keep up-to-date with all of these changes.

Instead, I wonder if this project should merely export the core packages listed above, and any package could implement a "Flutter Architecture Sample Todo App" by writing a Flutter app that passes the integration tests suite. Then, any author could merely submit a pull request to this project to update the README pointing to the Todo app in their own repository.

What do you think?

from flutter_architecture_samples.

StanevPrime avatar StanevPrime commented on May 23, 2024

@brianegan, are they any plans for migration of the code base to the latest Flutter, including null-safety ?
I assume this will be huge amount of work, since there are a lot of braking changes in bloc, redux etc, so how we can help you ?

from flutter_architecture_samples.

StanevPrime avatar StanevPrime commented on May 23, 2024

This is great idea!

Speaking of scalability and maintainability challenges this approach will definitely help in long-term.

A assume there will be two packages

flutter_architecture_samples with the following libraries

  • app_core
  • repository_core
  • repository_local_storage
  • firebase_flutter_repository
  • firebase_rtdb_flutter_repository

and flutter_architecture_samples_integration_test

Looking into the bloc library there is already a self-hosted copy of the todos sample, which in future can install and use those packages as follows

pubspec.yaml


dependencies:
    ...
    flutter_architecture_samples: ^1.0.0

dev_dependencies:
    ...
    flutter_architecture_samples_integration_test: ^1.0.0

dependency_overrides:
...

Also you can go further by uploading those packages to pub.dev so that it will be easier for each sample to adapt any breaking changes.

from flutter_architecture_samples.

bhargavraviya avatar bhargavraviya commented on May 23, 2024

Hello

This does not support Flutter's latest version.

  • Plan every sample upgrade according to what we need.
  • First, please show all samples and the stable version of the samples, then upgrade the versions of the samples step by step.
sample flutter max version
mvc 3.0.0

etc

  • give to every road map of the Flutter upgrade version and understand how it works.
  • I'm working first on MVC samples. Please guide me.

@brianegan

from flutter_architecture_samples.

Related Issues (20)

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.