Skip to content
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

General architecture, project goals #1

Open
9ary opened this issue Feb 16, 2021 · 2 comments
Open

General architecture, project goals #1

9ary opened this issue Feb 16, 2021 · 2 comments

Comments

@9ary
Copy link
Member

9ary commented Feb 16, 2021

We need to decide how we want to structure the internals, and where we want to take the project as a whole.

@9ary 9ary added this to the Minimal viable product milestone Feb 16, 2021
@9ary 9ary changed the title Where to start? General architecture, project goals Feb 16, 2021
@Lonami
Copy link

Lonami commented Feb 17, 2021

After we sit down and write a rough draft, it should probably live under CONTRIBUTING.md or ARCHITECTURE.md.

@9ary
Copy link
Member Author

9ary commented Mar 21, 2021

Not sure where else to put this so I'll put it here.

  • Kotlin's Flows are pretty neat, they're basically async generators aka Rust's async streams aka reactive streams, well integrated with Compose
  • Model-View-Intent is a pretty interesting design pattern that seems like it fits well with Compose's unidirectional data flow principle. The basic gist is that the entire UI state is one stream from the model to the View (each update essentially provides the View with a new copy of the state), while user actions (Intents) go the other way as one stream. Honestly pretty difficult to describe but I think some of the concepts are applicable. It's kind of a "restricted" version of MVVM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants