Skip to content

ebg1223/create-t3-turbolito

Repository files navigation

create-t3-turbolito

create-t3-turbo + solito + Clerk.dev universal auth

  • Solito V2 for linking and routing abstraction (credit @nandorojo)
  • Expo Router in expo - currently beta, but seems like it will be the future.
  • Clerk.dev auth working for both nextjs, expo, and tRPC - nextauth left in the project with dependancies removed and commented out. You can easily reenable if desired, or when nextauth is updated to support expo.

turbo2

About

Ever wondered how to migrate your T3 application into a monorepo? Stop right here! This is the perfect starter repo to get you running with the perfect stack!

It uses Turborepo and contains:

.github
  └─ workflows
        └─ CI with pnpm cache setup
.vscode
  └─ Recommended extensions and settings for VSCode users
apps
  ├─ expo
  |   ├─ Expo SDK 46
  |   ├─ React Native using React 18
  |   ├─ Tailwind using Nativewind
  |   └─ Typesafe API calls using tRPC
  └─ next.js
      ├─ Next.js 13
      ├─ React 18
      ├─ TailwindCSS
      └─ E2E Typesafe API Server & Client
packages
 ├─ api
 |   └─ tRPC v10 router definition
 ├─ auth
     └─ COMMENTED OUT, BUT CAN BE RE-ENABLED
 └─ db
     └─ typesafe db-calls using Prisma

Quick Start

To get it running, follow the steps below:

Setup dependencies

# Install dependencies
pnpm i

# In packages/db/prisma update schema.prisma provider to use sqlite
# or use your own database provider
- provider = "postgresql"
+ provider = "sqlite"

# Configure environment variables.
# There is an `.env.example` in the root directory you can use for reference
cp .env.example .env

# Add clerk.dev public url to apps/expo/src/_app.tsx

# Push the Prisma schema to your database
pnpm db-push

Configure Expo dev-script

Note: If you want to use a physical phone with Expo Go, just run pnpm dev and scan the QR-code.

Use iOS Simulator