Interactive CLI to start a full-stack, typesafe, universal Expo & Next.js app on Cloudflare's edge platform.
Get started with the T4 Stack by running yarn create t4-app
The T4 Stack is a universal web and native stack made by Tim Miller focused on developer experience, rapid development, and performance.
Easy integration with Cloudflare services that allow developers to build apps with cutting edge features at a lower cost compared to AWS or Vercel.
๐ Further documentation can be found on the T4 Stack website. ๐
- ๐จ Tamagui
- ๐ tRPC
- โฒ๏ธ Tanstack Query
- โ๏ธ Solito
- ๐งฉ Jotai
- ๐ฅ Hono
- ๐ Cloudflare Workers
- ๐ Supabase
T4 is a project starter kit for building type-safe, native & web applications in TypeScript using Tamagui, tRPC, and Turborepo. Deploy to Cloudflare for a global edge network. All at a fraction of the cost of AWS, Vercel, or Azure.
It provides a unified, opinionated, & minimalistic setup for quickly getting started with building native & web apps, using the same code, without having to worry about the complexities of setting up a development environment.
- ๐ฑ iOS
- ๐ค Android
- ๐ธ๏ธ Web
- Progressive Web App (PWA) support
- ๐ป macOS
- ๐ช Windows
- ๐ง Linux
Build native apps for iOS, Android, macOS, Windows, and Linux using the same codebase.
- Small learning curve
- Instant feedback, rapid development
- Universal across React Native & React Web
- High code re-use
- Low bundle size
- Edge compatible
- Fast startup time
- Simple setup
- Allows for platform-specific code when needed.
- Type-safety
- Tamagui - A UI kit for building beautiful and responsive user interfaces.
- Turborepo - A high performance build system for TypeScript, built in Rust.
- tRPC - A TypeScript framework for building end-to-end typesafe APIs.
- TypeScript - A typed superset of JavaScript that compiles to plain JavaScript.
Yarn v3 is required to use
create-t4-app
To scaffold an app using create-t4-app
, run any of the following commands.
yarn create t4-app
If you would like to use Supabase as your authentication provider instead of Clerk use:
yarn create t4-app --supabase
The VSCode extension is optional but highly recommended. It provides a better developer experience by providing code actions to help you scaffold your app. You can find more info in the docs or install it from the VSCode Marketplace.
- โ Uses Next.js for building web apps.
- โ Uses Expo for building native mobile apps.
- โ PWA by default for native desktop support. No Electron required.
- โ Tamagui UI kit across all platforms.
- โ Uses Cloudflare Workers for serverless functions.
- โ No Docker containers required.
- โ Uses tRPC & Tanstack Query for fetching & caching across all platforms.
- โ Authentication across all platforms.
- โ Powered by TypeScript for type safety and better developer experience.
- โ Comes with pre-configured ESLint and Prettier for code consistency.
I would like to add the following features to create-t4-app
in the future:
- โ Github Action publishing for Expo apps
- โ Database migration in CI/CD
- โ Supabase Auth
- PNPM support
- Legend State
- Million.js example
- GraphQL (type-safe) data fetching
- ๐ Storybook support
- ๐๏ธ Chromatic support
For help, discussion about best practices, or any other conversation that would benefit create-t4-app
:
We welcome contributions from anyone and everyone. Please read our contributing guidelines for more information on how to get started.
- Cloudflare Developers
- Shopify Developers
- Yusuke Wada - Creator of Hono.js
- Tanner Linsley - Creator of TanStack
- Nate Birdman - Creator of Tamagui
- Tim Neutkens - Co-author of Next.js
- Guillermo Rauch - Co-author of Next.js
- Fernando Rojo - Creator of Solito
- Daishi Kato Creator of Jotai
- Jared Palmer - Creator of Turborepo
- Evan Bacon - Maintainer of Expo
Create T4 App is licensed under the Apache License.