Me and my group ended up choosing the Citizen Science for kids project. We are undergoing the planning phase, and we are currently trying to figure out how we are going to put our application together. Of the technology we are using, I am most familiar with React, so thus far I have done much of the planning regarding the react native portion of our application.
The way I have laid out the react native portion of the plan is pretty similar to how I have laid out my react projects in the past. Essentially, their is a hierarchy of components, and screen components are at the top of this hierarchy. The rendered screen component will change depending on what screen use state is selected. Screen components will hold use states for storing specific state data and will pass the pertinent state data and methods to its children components. For example: I planned out our observation page as a screen with states for various observation inputs, that will be passed down to our own children observation components so that users can enter data and work with it at any level of the component hierarchy. We can build most of the react part of the application this way and think it will be fairly straightforward to accomplish.
What will be challenging is figuring out how to visually construct our custom components with react native components, rather than web components like in standard react. Nobody in my group is familiar with react native components, so we need to read some documentation and watch some videos to figure it out. I don’t think this will end up being too difficult however, as there are lots of good looking mobile components we can simply import and inject into our application rather easily.
Overall, I think my group will be able to construct a pretty good plan using the technology we have selected. I definitely will need to rely on my teammates for the planning regarding the back end technology of our project, as I am not familiar with it. Hopefully I can make up for that with my react knowledge!
See you next time!