The Qasa app
Qasa is a web product. We wanted a native app, and instead of building a small companion app we decided to move the whole product into React Native over time. I designed the architecture and led the work, with two other developers.
Rather than bring in a cross-platform UI library nobody knew, we took the component library
the web app already ran on and made it platform-agnostic. Every component got a native
implementation behind the same interface (Stack.web.tsx,
Stack.mobile.tsx), and the bundler resolves the right one. The production website
and the app ran on the same components, so product code was written once and worked on both.
Navigation got wrappers so both apps route with one syntax. Platform-specific code was
possible, but sharing was the default and splitting the exception.
Chat and search reached parity with the web, and we ran a beta with real users. After a change in leadership the app was shelved before launch.