“Expo! Expo!”
Why I Started Expo Expo
Lately, I've been itching to dive into React Native. I’ve built plenty of web apps with Next.js, TypeScript, and Tailwind, but I wanted to expand my skillset into deeper into mobile development. The problem? Most React Native starter templates aren’t production-ready. They give you the basics but leave you doing a ton of extra work just to get something deployable.
That’s where Expo Expo comes in.
The Idea
I wanted a React Native starter kit that I could spin up and ship to production in days, not weeks. Something with authentication, testing, theming, and deployment all wired up from day one. And, more importantly, something that sets me up for success on another React Native side project I’ve been brainstorming.
Inspired by
Expo Expo is heavily inspired by another project of mine, Next Launch — a jump starter for Next.js projects that I created while working at GenUI. The same philosophy applies here: get rid of the boilerplate, wire up the essentials, and get straight to building.
I also drew inspiration from projects like Next.js Boilerplate and Tamagui Takeout, which offer well-structured templates for fast development. However, each have their own shortcomings. Even this one has shortcomings, I suspect if it turns out like Next Launch the boilerplate produced will put off a lot of people that don't want to have think about things like localization and form validation. But if I'm hoping to deploy something that I can trust will work well and be delightful to use by end users quickly, I know I'm going to want those things.
🛠️ What’s Inside?
Here’s what Expo Expo already includes:
- ✅ Out-of-the-box up-to-date Expo project
- ✅ Jest + Playwright for testing
- ✅ Localization support
- ✅ GitHub workflows for CI/CD
- ✅ Prettier + Linter setup
And here’s what’s next:
- 🚧 Clean UI components
- 🚧 Tailwind theme configuration
- 🚧 Basic settings page
- 🚧 Next.js wrapper for web deployments
- 🚧 Easy deploy to web, Android, and iOS
Check out the full roadmap on the Github repo.
🎯 The Goal
The primary goal of “Expo! Expo!” is to teach myself react-native (after all these years) while building something I actually want to use for development.
I hope that the end result will be a boilerplate that I can use to repeatedly easily launch production quality, cross platform, react-native apps.
If this sounds like something useful to you, feel free to check out the repo and contribute! 🚀
👉 GitHub Repo: imdevan/expo-expo
Want to follow along? Or contribute? Star the repo, leave a pull request, or drop an issue!