For my React Native project, debated whether or not I wanted to have all the data-related functionality in native code instead of in javascript. I ended up going with javascript mainly because I didn’t want to have to write asynchronous code in Java. In general, it seems easier to not accidentally block the UI thread in React Native than native Android code. We’ll see how it plays out in practice.

I was hoping to make more progress, but a bug really set me back. I got the `Uncaught Error: Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function but got: object` and a quick Google search didn’t really help. One reason this error can happen is that the entry point js file is missing. My entry point file is called `app.js`. Somehow, it got renamed to `App.js`. The filesystem is case-insensitive, and git was treating them as the same file, but React Native was not. I fixed this with `git mv App.js tmp` followed by `git mv tmp app.js`.