Giter VIP home page Giter VIP logo

devonfw-forge / devon4flutter-non-bloc-arch Goto Github PK

View Code? Open in Web Editor NEW
307.0 25.0 37.0 23.2 MB

A guide aiming to bridge the gap between the absolute Flutter basics and clean, structured Flutter Development

Home Page: https://github.com/devonfw-forge/devonfw4flutter/wiki

TeX 94.56% Dart 5.44%
flutter guide best-practices architecture-patterns architecture state-management bloc bloc-pattern conventions

devon4flutter-non-bloc-arch's People

Contributors

fasust avatar hashirshoaeb avatar zepmanbc 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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

devon4flutter-non-bloc-arch's Issues

Add dummy data to backend db

Description
We would like to add some dummy data to the server in order to be able to test the application with

Acceptance Criteria

Track the server generation progress

Description
Track the progress of the backend and write the updates continuously into this ticket in order to have everyone onboard with the updates.

Acceptance Criteria

Menu to select different list views

Description
As a user I would like to be able to choose between a list view and a grid view.

Acceptance Criteria

  1. In the list view the full name and email address should be displayed on the text fields

  2. In the grid layout I want to have more information on the displayed cards than in the list view. The cards displayed on the grid layout should contain the following information:

  • Put first and last name in bold at the top
  • Add more information below in thin font (e.g. email address, profession etc.)

Load data from backend

Description
As a user I would like my app to load the data from the server/mock in order to be able to have no static data in the app.

Acceptance Criteria

  • The data that is in the BLOC Repository is loaded from the configured API/Mock on startup

Add linter

As a user I would like ... in order to ...

Gridlayout Bug

When you switch to dark mode, the cards and the text remain white.

Create 'add' dialog without backend call

Description
As a user I would like to have a dialog where I can add a new entry in order to later be able to send new entries to the server.

Acceptance Criteria

  • The call to the server should be done in a later task
  • OK button should be present but without function
  • For each property in the model there should be an input field in the dialog

Enhance routing by using all existing pages

Description
As a user, I would like to have a sturdy routing in my application so that I could navigate from one page to the other easily and have the pages stack replaced when needed.

Acceptance Criteria

  • The user shall be able to route from the main application page (Get Employees button) to the list of employees and then to a specific employee dialog if needed
  • The user shall be able route back as well which means the pages stack shall remain the same along the user flow

'update employee' dialog with backend call

Description
As a user I would like to have a dialog where I can change entities in order to change incorrect data.

Acceptance Criteria

  • Add heading to the current page
  • In the 'view entity' dialog there should be an edit button in the appbar that opens an edit dialog
  • For each property in the model there should be an input field with the current value of the model
  • When the user presses OK then the data is sent to the server
  • In case of an error the user stays at the update dialog
  • In case of success the user is taken to the show entity dialog

Guide as a PDF

This is not an issue.But a suggestion that

This awesome guides could be turned to pdf,
Thanks.

Separate the BLoC Pattern and the bloc library.

Hey, first of all, great work! Good slab of text that details the development process quite accurately.
However, there is one nitpick I cannot ignore, and it is the difference between the BLoC pattern and the bloc library.

The library, fundamentally, is actually something many would describe as "Redux, but with smaller stores.".

  1. It maps almost 1:1 in the items you interact with
  • Events : Actions
  • "bloc" : Store
  • mapEventToState : Reducer
  1. Uses a single stream output, exactly like Redux (Would this mean that Redux.dart is BLoC?)
  2. One could argue that wrapping the input in an Action violates the 'Components should send inputs "as-is"'

There is even a proper description and example of a bloc as a source!

This line is, as far as I can tell, not accurate. The library is similar, but the pattern itself is not. Redux stands for a single source of truth modified by clearly defined, "static" actions that predictably change said single source of truth. BLoC stands for the power of streams, both in and out, in some cases even inside.

I'm not saying that the library is bad, it's widely used and proves to be reliable, however, it is a car pretending to be a bike.

create templates for usecase testing

As a user I would like to crate templates flawlessly. This would definitely be achieved by having templates tested for generated applications.

Delete employee (UI and backend call)

Description
As a user I would like to have a delete functionality in the app in order to remove unwanted entities.

Acceptance Criteria

  • The list of entities should have the possibility to delete a single entity

Create empty flutter project

As a user I would like ... in order to ...

Create an empty "Hello world" project. Commit it into the repository that's everyone from the team can start

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.