Realm’s React Native SDK is an incredibly powerful tool that takes advantage of the NoSQL database developed by MongoDB. Realm can be used for offline first mobile apps or as a general purpose database for traditional mobile applications. One of the biggest advantages of using Realm for data storage is that it’s Objects are “live” by default; meaning that transactions and the state associated with a given Object can easily be observed by the rest of our application.
Though Realm Objects are “live”, they do not automatically trigger re-renders in our React Native components. One solution that I’ve found to…
First I’ll start off by saying, just because you can do what we’re going to talk about in this post doesn’t mean you should. This is an idea and a first step to exploring a functional approach to building reactive interfaces with Rust and WebAssembly.
State management in any application is always a super fun problem to solve. When it comes to integrating WebAssembly with existing applications or starting from scratch with a new project, this problem gets even more interesting, but it’s not as complicated as it may seem.
In this tutorial, we will be walking through the primary features and setup of the React Navigation, Drawer Navigator.
If you haven’t already, I recommend taking a look at Intro to React Navigation before reading this tutorial. It covers initial configuration and setup for this project.
Currently we have a view that looks something like this:
Source code: here
In this tutorial, we will be walking through the primary features and setup of the React Navigation, Bottom Tab Navigator.
Before reading through this tutorial — if you haven’t already, I recommend taking a look at Intro to React Navigation. It will cover the initial configuration and set up for this project.
Currently, we have a view that looks like this:
Source code: here
For any questions relating to the Expo CLI, please reference their excellently maintained documentation. I will also be posting about how/why to use Expo in the near future.
When you start your project and open the simulator (our project, will be using the iOS simulator for iPhone 11 Pro Max), you’ll see this:
First, you’ll need Atom installed:
cd ~/.atominto your terminal
atom .to open your
.atomfiles in the Atom editor
snippets.csonfile view in your editor:
I wrote an article a couple of weeks ago about prioritization and understanding goals in a broader context. A big part of remaining goal-oriented, while still navigating a complex problem or project, is being able to learn quickly and becoming comfortable with not knowing.
At the start of any project, anticipating there will be problems you don’t yet know how to solve is incredibly helpful. This anticipation allows you to approach all tasks — even the ones you’re familiar with — flexibly and with less discouragement as you progress.
Often, relearning a familiar task reveals quicker or more efficient solutions…
While many of the analogies I use relate to software development, I’ve found the concepts outlined here to be useful in other contexts. I feel that it is helpful to acknowledge that though the concepts are applicable in a software context, I have developed these perspectives primarily outside of the realm of software.
Every project comes with a unique set of challenges and obstacles. To ensure success, it’s important that you approach any given project with a clearly defined purpose.
Separate Signal from the Noise
Often people talk about goals in general terms: “I want to build something that changes…