Husband and senior software engineer at Stripe

Lucas Lois

Building SDKs and developer tooling for reliable products across web, mobile, and cloud.

Lucas Lois portrait

Focus

  • Developer experience & SDKs
  • Cross-platform engineering
  • Architecture for long-lived systems
Recent writing

React Native for React Devs

I’ve had a handful of conversation with folks online about moving to Mobile as React developers. I’ve tried to summarize the advice and feedback here, in case it’s useful to others too. React Native is a great way to build mobile apps if you’re already familiar with React. It is recommended as such by the official React Docs, the way in which you can build for both web and mobile “using the same skills”. ...

April 30, 2024 · 3 min

Seams in React: A quick guide on sewing your codebase

The need for sewing I have always cared a lot about making code easy to change, but also about not letting “this is hard to change” be the reason to not implement some cool feature our users really want. But sometimes code really is difficult to change. Sometimes it’s big and complex, and so it takes time to go in and understand it, to even know where to change it. Other times, it might be small but it is so tightly coupled throughout that any place you touch it, something breaks. One step forward, two steps back. ...

April 11, 2024 · 8 min

Typescript for Cross-Platform Applications

If you’re using React Native, there is a chance you’re using Platform-specific extensions. You’re almost surely doing so if you’re deploying to the web as well, via React Native Web. But if you’re not careful, Typescript might not actually be checking all of your code! TL;DR Have platform-specific tsconfig.{platform}.json files to match your platform-specific files so all of the possible import trees are validated. Keep you base tsconfig.json as usual. // tsconfig.ios.json { "extends": "./tsconfig.json", "compilerOptions": { "moduleSuffixes": [".ios", ".native", ""] } } Run linting with the following scripts on your package.json ...

April 1, 2024 · 4 min