railslove / meine-checkins

Beauftragt bei Stadt Köln. Meine Checkins macht Kontaktnachverfolgung noch einfacher und zeigt wie wichtig Teamwork in der Pandemie ist. Commissioned by the City of Cologne. Meine Checkins makes contact tracing easier and shows how important teamwork is in the pandemic.
0 stars 1 forks source link

QR code scan #19

Closed stringparser closed 3 years ago

stringparser commented 3 years ago

The native code changes are because of updating react-native to 0.64 the template I picked to bootstrap the project had an older version. That old version didn't work the library of the QR code.

stringparser commented 3 years ago

@bonflintstone See https://github.com/railslove/wfd-masterapp/pull/19#pullrequestreview-626236794

If you see architecture related changes that you would need a bit of work let's open a ticket for it. Otherwise we'll have to change too many things here and it would also impact deployment.

Examples:

bonflintstone commented 3 years ago

@bonflintstone See #19 (review)

If you see architecture related changes that you would need a bit of work let's open a ticket for it. Otherwise we'll have to change too many things here and it would also impact deployment.

Examples:

* to "replace redux with hooks" we can create a separate ticket

* to "use app.json for versioning" in native code

* etc.

I think you are perfectly right, lets not hold up the process too much with those questions.

Just a few thoughts I'll leave here:

How to do global state with hooks? - as little as possible. For api calls there is the great library react-query that takes care of this and can encapsulate all the refresh, state keeping, local updating logic in itself. For localStorage kinda state I do not know if we really need to keep this in the application state - if this i s not significantly slowing the application down, I think re-reading it when it is needed again in another component is a fair way of going about it :)

About the build number stuff - fastlane can be used to set those directly, and we can use the environment variable SEMAPHORE_WORKFLOW_NUMBER for this, while versioning with git tags and using SEMAPHORE_GIT_TAG_NAME.

stringparser commented 3 years ago

@bonflintstone See #19 (review) If you see architecture related changes that you would need a bit of work let's open a ticket for it. Otherwise we'll have to change too many things here and it would also impact deployment. Examples:

* to "replace redux with hooks" we can create a separate ticket

* to "use app.json for versioning" in native code

* etc.

I think you are perfectly right, lets not hold up the process too much with those questions.

Just a few thoughts I'll leave here:

How to do global state with hooks? - as little as possible. For api calls there is the great library react-query that takes care of this and can encapsulate all the refresh, state keeping, local updating logic in itself. For localStorage kinda state I do not know if we really need to keep this in the application state - if this i s not significantly slowing the application down, I think re-reading it when it is needed again in another component is a fair way of going about it :)

About the build number stuff - fastlane can be used to set those directly, and we can use the environment variable SEMAPHORE_WORKFLOW_NUMBER for this, while versioning with git tags and using SEMAPHORE_GIT_TAG_NAME.

Thanks! I'll split these into tickets so we can tackle them separately. One for fastlane and another to look into the hooks.

So far though, what I see is that redux helps a lot to keep things separated. As far as I understand is not yet possible to have asynchronous updates on components directly with hooks but I might have to search that again.

Nice, I'll have a look at react-query and see if we can use it for the tasks we have here. I knew useSWR but react-query looks generic enough as you describe it to do service calls for us too.