Home
Softono
z

zckly

Professional software vendor delivering innovative solutions on the Softono platform. Specialized in both open-source and proprietary software development.

Total Products
1

Software by zckly

create-t3-turbo-ai
Open Source

create-t3-turbo-ai

# create-t3-turbo-ai ## NOTE: THIS IS VERY MUCH 🚧 WIP 🚧. A lot of the features are yet to come - stay tuned! ## About The ultimate starter repo for building full-stack, type-safe, LLM-powered web apps. It uses: - [Turborepo](https://turborepo.com/) for monorepo management - [tRPC](https://trpc.io/) for API routing - [Prisma](https://www.prisma.io/) for database access - [Next.js](https://nextjs.org/) for the web app - [OpenAI](https://openai.com/) for the AI - [Langchain](https://hwchase17.github.io/langchainjs/docs/overview) for LLM management And much more! ## Folder structure ``` .github └─ workflows └─ CI with pnpm cache setup .vscode └─ Recommended extensions and settings for VSCode users apps └─ next.js β”œβ”€ Next.js 13 β”œβ”€ React 18 β”œβ”€ Tailwind CSS └─ E2E Typesafe API Server & Client packages β”œβ”€ api | └─ tRPC v10 router definition β”œβ”€ auth └─ authentication using next-auth. **NOTE: Only for Next.js app, not Expo** └─ db └─ typesafe db-calls using Prisma ``` ## FAQ ## Quick Start To get it running, follow the steps below: ### Setup dependencies ```diff # 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 # Make sure you add the OPENAI_API_KEY environment variable! cp .env.example .env # Push the Prisma schema to your database pnpm db:push ``` ## Deployment ### Next.js #### Prerequisites _We do not recommend deploying a SQLite database on serverless environments since the data wouldn't be persisted. I provisioned a quick Postgresql database on [Railway](https://railway.app), but you can of course use any other database provider. Make sure the prisma schema is updated to use the correct database._ **Please note that the Next.js application with tRPC must be deployed in order for the Expo app to communicate with the server in a production environment.** #### Deploy to Vercel Let's deploy the Next.js application to [Vercel](https://vercel.com/). If you have ever deployed a Turborepo app there, the steps are quite straightforward. You can also read the [official Turborepo guide](https://vercel.com/docs/concepts/monorepos/turborepo) on deploying to Vercel. 1. Create a new project on Vercel, select the `apps/nextjs` folder as the root directory and apply the following build settings: <img width="927" alt="Vercel deployment settings" src="https://user-images.githubusercontent.com/11340449/201974887-b6403a32-5570-4ce6-b146-c486c0dbd244.png"> > The install command filters out the expo package and saves a few second (and cache size) of dependency installation. The build command makes us build the application using Turbo. 2. Add your `DATABASE_URL` environment variable. 3. Done! Your app should successfully deploy. Assign your domain and use that instead of `localhost` for the `url` in the Expo app so that your Expo app can communicate with your backend when you are not in development. ## TODO - [ ] Organize prompts in a prompt library (rather than leaving them in the API folder) - [ ] Add Promptable.js option - [ ] Add embeddings example - [ ] Add PromptLayer example - [ ] Add Vercel Edge Functions to handle streaming - [ ] Add ChatGPT w/ memory example - [ ] Add LLM + Agents example - [ ] Update to NextJS app directory (once stable) ## References The stack originates from [create-t3-app](https://github.com/t3-oss/create-t3-app) and [create-t3-turbo](https://github.com/t3-oss/create-t3-turbo). The maintainers of these projects deserve all the credit!

Mobile Development AI Tools
354 Github Stars