Video Summary and Transcription
In this talk, the speaker introduces CreateNextApp and CreateT3App as tools for quickly setting up Next.js projects. CreateT3App has a modular CLI that allows users to select specific technologies. The speaker also discusses E3env, which ensures control of environment variables, and T3 Turbo, a monorepo version of CreateT3App that offers flexibility for installation and deployment.
1. Introduction to CreateNextApp and CreateT3App
In this talk, I will show you how to set up your next project quickly. CreateNextApp and CreateT3App are tools for scaffolding Next.js projects. CreateNextApp provides a basic JavaScript project, while CreateT3App includes TypeScript, Tailwind, TRPC, NextAuth, and Prisma. However, CreateT3App suffers from the limitation of using a single template. To address this, we have developed a fully modular CLI that allows you to choose the specific technologies you need. Each technology can be selected independently from one another.
Hello, everybody, and welcome to this talk where I'm going to show you how to set up your next project in just a few seconds. My name is Julius, and I'm a software engineering student from Sweden. I also work at PingLabs, where we build UploadThing, and I help maintain and contribute to some open source libraries that we're going to check out today.
Before we start off with our next project, let's check out the past and see how init tools worked before. This is CreateNextApp version 12, which was released in June 2022, I think. That was almost two years ago now. And it was very basic. It threw out the JavaScript project with just a home page and a Hello API endpoint. This is all you need to get started with Next.js, and it's the intention of CreateNextApp to just get you set up with just Next.js. But if you're building a full stack application, you're going to need more libraries. You're going to need a database, you're going to need authentication, you're going to need some way to style your application. There's a lot of parts that goes into making a full stack application. And if you're starting off of Next.app, you're left with integrating all of those parts yourself.
CreateT3App is a bit more batteries included version of CreateNextApp, where it still scaffolds a Next.js project for you, but it does it with a few libraries built on top of it. First off, we have TypeScript, because we think that you shouldn't use JavaScript to build full stack applications. TypeScript provides a lot of value where you can have static analysis and just be told where you're either just misspelling something or you're passing the wrong type of values to a function. We're also including Tailwind, TRPC, later also NextAuth and Prisma. So at that point, you have everything you needed to get started with your next full stack application. But I think that this still suffers from a major problem, and that it just throws out a single template.
CreateT3App from the beginning was still just a template from GitHub that the CLI was cloning down. And you weren't given the option to pick if you wanted to use TRPC, Tailwind, Prisma, NextAuth, any of these packages. And I think it's an issue on both ends here where if you're using CreateNextApp and not getting anything, you're left as a developer to integrate different packages together. And that can be cumbersome if you do this a lot. And it would be great if a tool can automate this process for you. But at the same time, if you include too many packages and too much boilerplate code, a developer might be either overwhelmed or they just get way more than they actually need. Maybe some project doesn't need NextAuth, or maybe some project doesn't need Tailwind, either because they don't need it entirely, or they want to try out a different package to solve that problem. And that's why we needed something a bit more modular than just a CLI that takes a template from GitHub and clones it down to your local machine. The solution was in the following versions of CreateT3App, where we have built a fully modular CLI that lets you bring exactly what you need and leave out the parts that you don't. Each technology in this CLI can be selected independently from one another. So as you can see right here, we can select each option or we can just skip that and move on to the next step.
1. Introduction to CreateT3App
In this talk, I will show you how to set up your next project in just a few seconds using CreateT3App. It is a more modular CLI that allows you to select the specific technologies you need for your full stack application. You can choose TypeScript, Tailwind, TRPC, NextAuth, Prisma, and more. This approach solves the problem of either getting nothing or being overwhelmed with too much boilerplate code. With CreateT3App, you can bring exactly what you need and leave out the parts you don't.
Hello, everybody, and welcome to this talk where I'm going to show you how to set up your next project in just a few seconds. My name is Julius, and I'm a software engineering student from Sweden. I also work at PingLabs, where we build UploadThing, and I help maintain and contribute to some open source libraries that we're going to check out today.
Before we start off with our next project, let's check out the past and see how init tools worked before. This is CreateNextApp version 12, which was released in June 2022, I think. That was almost two years ago now. And it was very basic. It threw out the JavaScript project with just a home page and a Hello API endpoint. This is all you need to get started with Next.js, and it's the intention of CreateNextApp to just get you set up with just Next.js. But if you're building a full stack application, you're going to need more libraries. You're going to need a database, you're going to need authentication, you're going to need some way to style your application. There's a lot of parts that goes into making a full stack application. And if you're starting off of Next.app, you're left with integrating all of those parts yourself.
CreateT3App is a bit more batteries included version of CreateNextApp, where it still scaffolds a Next.js project for you, but it does it with a few libraries built on top of it. First off, we have TypeScript, because we think that you shouldn't use JavaScript to build full stack applications. TypeScript provides a lot of value where you can have static analysis and just be told where you're either just misspelling something or you're passing the wrong type of values to a function. We're also including Tailwind, TRPC, later also NextAuth and Prisma. So at that point, you have everything you needed to get started with your next full stack application.
But I think that this still suffers from a major problem, and that it just throws out a single template. So CreateT3App from the beginning was still just a template from GitHub that the CLI was cloning down. And you weren't given the option to pick if you wanted to use TRPC, Tailwind, Prisma, NextAuth, any of these packages. And I think it's an issue on both ends here where if you're using CreateNextApp and not getting anything, you're left as a developer to integrate different packages together. And that can be cumbersome if you do this a lot. And it would be great if a tool can automate this process for you. But at the same time, if you include too many packages and too much boilerplate code, a developer might be either overwhelmed or they just get way more than they actually need. Maybe some project doesn't need NextAuth, or maybe some project doesn't need Tailwind, either because they don't need it entirely, or they want to try out a different package to solve that problem. And that's why we needed something a bit more modular than just a CLI that takes a template from GitHub and clones it down to your local machine. The solution was in the following versions of CreateT3App, where we have built a fully modular CLI that lets you bring exactly what you need and leave out the parts that you don't. Each technology in this CLI can be selected independently from one another. So as you can see right here, we can select each option or we can just skip that and move on to the next step.
1. Setting up Next.js projects
In this talk, I will show you how to set up your next project quickly. CreateNextApp and CreateT3App offer different approaches for scaffolding Next.js projects. CreateT3App is a more modular CLI that allows you to select the specific technologies you need for your project, avoiding unnecessary boilerplate code. You can choose TypeScript, Tailwind, TRPC, NextAuth, and Prisma, or skip them if they're not required. This flexibility ensures you only include what you need without overwhelming developers.
Hello, everybody, and welcome to this talk where I'm going to show you how to set up your next project in just a few seconds. My name is Julius, and I'm a software engineering student from Sweden. I also work at PingLabs, where we build UploadThing, and I help maintain and contribute to some open source libraries that we're going to check out today.
Before we start off with our next project, let's check out the past and see how init tools worked before. This is CreateNextApp version 12, which was released in June 2022, I think. That was almost two years ago now. And it was very basic. It threw out the JavaScript project with just a home page and a Hello API endpoint. This is all you need to get started with Next.js, and it's the intention of CreateNextApp to just get you set up with just Next.js. But if you're building a full stack application, you're going to need more libraries. You're going to need a database, you're going to need authentication, you're going to need some way to style your application. There's a lot of parts that goes into making a full stack application. And if you're starting off of Next.app, you're left with integrating all of those parts yourself.
CreateT3App is a bit more batteries included version of CreateNextApp, where it still scaffolds a Next.js project for you, but it does it with a few libraries built on top of it. First off, we have TypeScript, because we think that you shouldn't use JavaScript to build full stack applications. TypeScript provides a lot of value where you can have static analysis and just be told where you're either just misspelling something or you're passing the wrong type of values to a function. We're also including Tailwind, TRPC, later also NextAuth and Prisma. So at that point, you have everything you needed to get started with your next full stack application. But I think that this still suffers from a major problem, and that it just throws out a single template.
CreateT3App from the beginning was still just a template from GitHub that the CLI was cloning down. And you weren't given the option to pick if you wanted to use TRPC, Tailwind, Prisma, NextAuth, any of these packages. And I think it's an issue on both ends here where if you're using CreateNextApp and not getting anything, you're left as a developer to integrate different packages together. And that can be cumbersome if you do this a lot. And it would be great if a tool can automate this process for you. But at the same time, if you include too many packages and too much boilerplate code, a developer might be either overwhelmed or they just get way more than they actually need. Maybe some project doesn't need NextAuth, or maybe some project doesn't need Tailwind, either because they don't need it entirely, or they want to try out a different package to solve that problem. And that's why we needed something a bit more modular than just a CLI that takes a template from GitHub and clones it down to your local machine. The solution was in the following versions of CreateT3App, where we have built a fully modular CLI that lets you bring exactly what you need and leave out the parts that you don't. Each technology in this CLI can be selected independently from one another. So as you can see right here, we can select each option or we can just skip that and move on to the next step.
1. Introduction to CreateT3App
In this talk, I will show you how to set up your next project quickly using CreateT3App. It is a more modular CLI that lets you choose the technologies you need for your full stack application. By including TypeScript, Tailwind, TRPC, NextAuth, and Prisma, you have everything you need to get started. However, CreateT3App solves the problem of throwing out a single template by allowing you to select each technology independently. This gives you the flexibility to choose only what you need and avoid unnecessary boilerplate code.
Hello, everybody, and welcome to this talk where I'm going to show you how to set up your next project in just a few seconds. My name is Julius, and I'm a software engineering student from Sweden. I also work at PingLabs, where we build UploadThing, and I help maintain and contribute to some open source libraries that we're going to check out today.
Before we start off with our next project, let's check out the past and see how init tools worked before. This is CreateNextApp version 12, which was released in June 2022, I think. That was almost two years ago now. And it was very basic. It threw out the JavaScript project with just a home page and a Hello API endpoint. This is all you need to get started with Next.js, and it's the intention of CreateNextApp to just get you set up with just Next.js. But if you're building a full stack application, you're going to need more libraries. You're going to need a database, you're going to need authentication, you're going to need some way to style your application. There's a lot of parts that goes into making a full stack application. And if you're starting off of Next.app, you're left with integrating all of those parts yourself.
CreateT3App is a bit more batteries included version of CreateNextApp, where it still scaffolds a Next.js project for you, but it does it with a few libraries built on top of it. First off, we have TypeScript, because we think that you shouldn't use JavaScript to build full stack applications. TypeScript provides a lot of value where you can have static analysis and just be told where you're either just misspelling something or you're passing the wrong type of values to a function. We're also including Tailwind, TRPC, later also NextAuth and Prisma. So at that point, you have everything you needed to get started with your next full stack application. But I think that this still suffers from a major problem, and that it just throws out a single template. So CreateT3App from the beginning was still just a template from GitHub that the CLI was cloning down. And you weren't given the option to pick if you wanted to use TRPC, Tailwind, Prisma, NextAuth, any of these packages. And I think it's an issue on both ends here where if you're using CreateNextApp and not getting anything, you're left as a developer to integrate different packages together. And that can be cumbersome if you do this a lot. And it would be great if a tool can automate this process for you. But at the same time, if you include too many packages and too much boilerplate code, a developer might be either overwhelmed or they just get way more than they actually need. Maybe some project doesn't need NextAuth, or maybe some project doesn't need Tailwind, either because they don't need it entirely, or they want to try out a different package to solve that problem. And that's why we needed something a bit more modular than just a CLI that takes a template from GitHub and clones it down to your local machine. The solution was in the following versions of CreateT3App, where we have built a fully modular CLI that lets you bring exactly what you need and leave out the parts that you don't. Each technology in this CLI can be selected independently from one another.
So as you can see right here, we can select each option or we can just skip that and move on to the next step.
1. Introduction to CreateT3App
In this talk, I will show you how to set up your next project quickly. I will introduce CreateT3App, a more modular CLI that allows you to choose the libraries you need. It includes TypeScript, Tailwind, TRPC, NextAuth, and Prisma. With CreateT3App, you can avoid the hassle of integrating different packages manually and only include what you actually need.
Hello, everybody, and welcome to this talk where I'm going to show you how to set up your next project in just a few seconds. My name is Julius, and I'm a software engineering student from Sweden. I also work at PingLabs, where we build UploadThing, and I help maintain and contribute to some open source libraries that we're going to check out today.
Before we start off with our next project, let's check out the past and see how init tools worked before. This is CreateNextApp version 12, which was released in June 2022, I think. That was almost two years ago now. And it was very basic. It threw out the JavaScript project with just a home page and a Hello API endpoint. This is all you need to get started with Next.js, and it's the intention of CreateNextApp to just get you set up with just Next.js. But if you're building a full stack application, you're going to need more libraries. You're going to need a database, you're going to need authentication, you're going to need some way to style your application. There's a lot of parts that goes into making a full stack application. And if you're starting off of Next.app, you're left with integrating all of those parts yourself.
CreateT3App is a bit more batteries included version of CreateNextApp, where it still scaffolds a Next.js project for you, but it does it with a few libraries built on top of it. First off, we have TypeScript, because we think that you shouldn't use JavaScript to build full stack applications. TypeScript provides a lot of value where you can have static analysis and just be told where you're either just misspelling something or you're passing the wrong type of values to a function. We're also including Tailwind, TRPC, later also NextAuth and Prisma. So at that point, you have everything you needed to get started with your next full stack application. But I think that this still suffers from a major problem, and that it just throws out a single template. So CreateT3App from the beginning was still just a template from GitHub that the CLI was cloning down. And you weren't given the option to pick if you wanted to use TRPC, Tailwind, Prisma, NextAuth, any of these packages. And I think it's an issue on both ends here where if you're using CreateNextApp and not getting anything, you're left as a developer to integrate different packages together. And that can be cumbersome if you do this a lot. And it would be great if a tool can automate this process for you. But at the same time, if you include too many packages and too much boilerplate code, a developer might be either overwhelmed or they just get way more than they actually need. Maybe some project doesn't need NextAuth, or maybe some project doesn't need Tailwind, either because they don't need it entirely, or they want to try out a different package to solve that problem. And that's why we needed something a bit more modular than just a CLI that takes a template from GitHub and clones it down to your local machine. The solution was in the following versions of CreateT3App, where we have built a fully modular CLI that lets you bring exactly what you need and leave out the parts that you don't. Each technology in this CLI can be selected independently from one another. So as you can see right here, we can select each option or we can just skip that and move on to the next step.
1. Introduction to CreateT3App
In this talk, I will show you how to set up your next project quickly. CreateT3App is a more modular CLI that allows you to choose the specific technologies you need for your full stack application.
Hello, everybody, and welcome to this talk where I'm going to show you how to set up your next project in just a few seconds. My name is Julius, and I'm a software engineering student from Sweden. I also work at PingLabs, where we build UploadThing, and I help maintain and contribute to some open source libraries that we're going to check out today.
Before we start off with our next project, let's check out the past and see how init tools worked before. This is CreateNextApp version 12, which was released in June 2022, I think. That was almost two years ago now. And it was very basic. It threw out the JavaScript project with just a home page and a Hello API endpoint. This is all you need to get started with Next.js, and it's the intention of CreateNextApp to just get you set up with just Next.js. But if you're building a full stack application, you're going to need more libraries. You're going to need a database, you're going to need authentication, you're going to need some way to style your application. There's a lot of parts that goes into making a full stack application. And if you're starting off of Next.app, you're left with integrating all of those parts yourself.
CreateT3App is a bit more batteries included version of CreateNextApp, where it still scaffolds a Next.js project for you, but it does it with a few libraries built on top of it. First off, we have TypeScript, because we think that you shouldn't use JavaScript to build full stack applications. TypeScript provides a lot of value where you can have static analysis and just be told where you're either just misspelling something or you're passing the wrong type of values to a function. We're also including Tailwind, TRPC, later also NextAuth and Prisma. So at that point, you have everything you needed to get started with your next full stack application. But I think that this still suffers from a major problem, and that it just throws out a single template.
CreateT3App from the beginning was still just a template from GitHub that the CLI was cloning down. And you weren't given the option to pick if you wanted to use TRPC, Tailwind, Prisma, NextAuth, any of these packages. And I think it's an issue on both ends here where if you're using CreateNextApp and not getting anything, you're left as a developer to integrate different packages together. And that can be cumbersome if you do this a lot. And it would be great if a tool can automate this process for you. But at the same time, if you include too many packages and too much boilerplate code, a developer might be either overwhelmed or they just get way more than they actually need. Maybe some project doesn't need NextAuth, or maybe some project doesn't need Tailwind, either because they don't need it entirely, or they want to try out a different package to solve that problem. And that's why we needed something a bit more modular than just a CLI that takes a template from GitHub and clones it down to your local machine. The solution was in the following versions of CreateT3App, where we have built a fully modular CLI that lets you bring exactly what you need and leave out the parts that you don't. Each technology in this CLI can be selected independently from one another. So as you can see right here, we can select each option or we can just skip that and move on to the next step.
2. Full Stack Application and T3 Turbo
You can pick exactly the tools and technologies that you want and need to solve your problems. E3env is a package that is included by default in every CreateT3App, ensuring control of your environment's variables. Missing to include environment variable configurations when building or deploying your application can lead to runtime errors. T3 Turbo is a monorepo version of CreateT3App, allowing the core functionality to be split into separate packages for flexible installation and deployment. It offers a great middle ground for sharing logic between multiple platforms.
What we're left with is a full stack production-ready application with your favorite stack. You can pick exactly the tools and technologies that you want and need to solve your problems.
E3env is a package that is included by default in every CreateT3App. That's not an option you can have, because we think that it's a core part of building a full stack application to have control of your environment's variables.
So you're probably using some third-party servers or maybe a database that all requires some configuration to be passed through environment variables. Missing to include those when you build your application or when you deploy it can lead to many runtime errors that you didn't anticipate and didn't catch in your error boundaries or however you handle errors. For example, the database URL is probably pretty essential to your application, so you probably do not want to deploy the application to production if the database URL is missing. That's why you can get this build-time error when you build your application and have T3env installed. By running into these errors during the build step, we can avoid running into them at build time, where they would look something like this.
Lasty, we have T3 Turbo, which is a monorepo version of CreateT3App. Here we have split out the core functionality of the T3App, including the TRPC API and the authentication and even your database email. They are all in separate monorepo packages so that you can install them in multiple places and deploy to different applications. In this example, we have both an XJS dev application and a React Native mobile application. These both use the same TRPC API to have full-type safety. They both use tailwind for styling, so you can reuse a bunch of ... Maybe not reuse components because it's React Native and React, but you can still reuse a lot of the mental model you use to build your applications.
I think this is a great middle ground if you're not wanting to use React Native for web, but you still want to share a bunch of the logic between multiple platforms. That's all I've got time for today. If you want to check out any of these technologies, either run these commands in your terminal or go to the documentation on the resources link below. I'll see you next time.
2. Full Stack Application and T3 Turbo
What we're left with is a full stack production-ready application with your favorite stack. E3env ensures control of environment variables and helps avoid runtime errors. T3 Turbo allows for the separation of core functionality into monorepo packages, enabling reuse and sharing logic between multiple platforms.
What we're left with is a full stack production-ready application with your favorite stack. You can pick exactly the tools and technologies that you want and need to solve your problems.
E3env is a package that is included by default in every CreateT3App. That's not an option you can have, because we think that it's a core part of building a full stack application to have control of your environment's variables. So you're probably using some third-party servers or maybe a database that all requires some configuration to be passed through environment variables. Missing to include those when you build your application or when you deploy it can lead to many runtime errors that you didn't anticipate and didn't catch in your error boundaries or however you handle errors. For example, the database URL is probably pretty essential to your application, so you probably do not want to deploy the application to production if the database URL is missing. That's why you can get this build-time error when you build your application and have T3env installed.
Lastly, we have T3 Turbo, which is a monorepo version of CreateT3App. Here we have split out the core functionality of the T3App, including the TRPC API and the authentication and even your database email. They are all in separate monorepo packages so that you can install them in multiple places and deploy to different applications. In this example, we have both an XJS dev application and a React Native mobile application. These both use the same TRPC API to have full-type safety. They both use tailwind for styling, so you can reuse a bunch of ... Maybe not reuse components because it's React Native and React, but you can still reuse a lot of the mental model you use to build your applications.
I think this is a great middle ground if you're not wanting to use React Native for web, but you still want to share a bunch of the logic between multiple platforms. That's all I've got time for today. If you want to check out any of these technologies, either run these commands in your terminal or go to the documentation on the resources link below. I'll see you next time.
2. Building Full Stack Applications with CreateT3App
You have the flexibility to choose the tools and technologies you need for your full stack application. E3env is included by default in CreateT3App, ensuring control over environment variables and avoiding runtime errors. T3 Turbo is a monorepo version that allows for modular installation and deployment to different applications, enabling code sharing between platforms.
What we're left with is a full stack production-ready application with your favorite stack. You can pick exactly the tools and technologies that you want and need to solve your problems.
E3env is a package that is included by default in every CreateT3App. That's not an option you can have, because we think that it's a core part of building a full stack application to have control of your environment's variables. So you're probably using some third-party servers or maybe a database that all requires some configuration to be passed through environment variables. Missing to include those when you build your application or when you deploy it can lead to many runtime errors that you didn't anticipate and didn't catch in your error boundaries or however you handle errors. For example, the database URL is probably pretty essential to your application, so you probably do not want to deploy the application to production if the database URL is missing. That's why you can get this build-time error when you build your application and have T3env installed. By running into these errors during the build step, we can avoid running into them at build time, where they would look something like this.
Lastly, we have T3 Turbo, which is a monorepo version of CreateT3App. Here we have split out the core functionality of the T3App, including the TRPC API and the authentication and even your database email. They are all in separate monorepo packages so that you can install them in multiple places and deploy to different applications. In this example, we have both an XJS dev application and a React Native mobile application. These both use the same TRPC API to have full-type safety. They both use tailwind for styling, so you can reuse a bunch of ... Maybe not reuse components because it's React Native and React, but you can still reuse a lot of the mental model you use to build your applications. I think this is a great middle ground if you're not wanting to use React Native for web, but you still want to share a bunch of the logic between multiple platforms.
That's all I've got time for today. If you want to check out any of these technologies, either run these commands in your terminal or go to the documentation on the resources link below. I'll see you next time.
2. Full Stack Application and T3 Turbo
You can choose the tools and technologies you need for your full stack application. E3env ensures control of environment variables and prevents runtime errors. T3 Turbo is a monorepo version that allows separate installation of core functionalities for different applications.
What we're left with is a full stack production-ready application with your favorite stack. You can pick exactly the tools and technologies that you want and need to solve your problems.
E3env is a package that is included by default in every CreateT3App. That's not an option you can have because we think that it's a core part of building a full stack application to have control of your environment's variables. By running into these errors during the build step, we can avoid running into them at build time.
Lastly, we have T3 Turbo, which is a monorepo version of CreateT3App. Here we have split out the core functionality of the T3App, including the TRPC API and the authentication and even your database email. They are all in separate monorepo packages so that you can install them in multiple places and deploy to different applications. I think this is a great middle ground if you're not wanting to use React Native for web, but you still want to share a bunch of the logic between multiple platforms.
That's all I've got time for today. If you want to check out any of these technologies, either run these commands in your terminal or go to the documentation on the resources link below. I'll see you next time.
2. Full Stack Application and T3 Turbo
You can pick exactly the tools and technologies you need for a full stack production-ready application. E3env ensures control over environment variables. Missing these variables can lead to runtime errors. T3 Turbo allows you to split core functionality into separate monorepo packages for multiple applications and platforms.
What we're left with is a full stack production-ready application with your favorite stack. You can pick exactly the tools and technologies that you want and need to solve your problems.
E3env is a package that is included by default in every CreateT3App. That's not an option you can have, because we think that it's a core part of building a full stack application to have control of your environment's variables. So you're probably using some third-party servers or maybe a database that all requires some configuration to be passed through environment variables.
Missing to include those when you build your application or when you deploy it can lead to many runtime errors that you didn't anticipate and didn't catch in your error boundaries or however you handle errors. For example, the database URL is probably pretty essential to your application, so you probably do not want to deploy the application to production if the database URL is missing. That's why you can get this build-time error when you build your application and have T3env installed. By running into these errors during the build step, we can avoid running into them at build time, where they would look something like this.
Lastly, we have T3 Turbo, which is a monorepo version of CreateT3App. Here we have split out the core functionality of the T3App, including the TRPC API and the authentication and even your database email. They are all in separate monorepo packages so that you can install them in multiple places and deploy to different applications. In this example, we have both an XJS dev application and a React Native mobile application. These both use the same TRPC API to have full-type safety. They both use tailwind for styling, so you can reuse a bunch of...Maybe not reuse components because it's React Native and React, but you can still reuse a lot of the mental model you use to build your applications.
I think this is a great middle ground if you're not wanting to use React Native for web, but you still want to share a bunch of the logic between multiple platforms. That's all I've got time for today. If you want to check out any of these technologies, either run these commands in your terminal or go to the documentation on the resources link below. I'll see you next time.
2. Customization and T3 Turbo
You can choose the tools and technologies you need for your full stack application. E3env ensures control of environment variables to avoid runtime errors. T3 Turbo allows separate installation and deployment of core functionality in multiple applications for different platforms.
What we're left with is a full stack production-ready application with your favorite stack. You can pick exactly the tools and technologies that you want and need to solve your problems.
E3env is a package that is included by default in every CreateT3App. That's not an option you can have, because we think that it's a core part of building a full stack application to have control of your environment's variables.
So you're probably using some third-party servers or maybe a database that all requires some configuration to be passed through environment variables. Missing to include those when you build your application or when you deploy it can lead to many runtime errors that you didn't anticipate and didn't catch in your error boundaries or however you handle errors. For example, the database URL is probably pretty essential to your application, so you probably do not want to deploy the application to production if the database URL is missing. That's why you can get this build-time error when you build your application and have T3env installed. By running into these errors during the build step, we can avoid running into them at build time, where they would look something like this.
Lastly, we have T3 Turbo, which is a monorepo version of CreateT3App. Here we have split out the core functionality of the T3App, including the TRPC API and the authentication and even your database email. They are all in separate monorepo packages so that you can install them in multiple places and deploy to different applications. In this example, we have both an XJS dev application and a React Native mobile application. These both use the same TRPC API to have full-type safety. They both use tailwind for styling, so you can reuse a bunch of ... Maybe not reuse components because it's React Native and React, but you can still reuse a lot of the mental model you use to build your applications.
I think this is a great middle ground if you're not wanting to use React Native for web, but you still want to share a bunch of the logic between multiple platforms.
That's all I've got time for today. If you want to check out any of these technologies, either run these commands in your terminal or go to the documentation on the resources link below. I'll see you next time.
Comments