As someone who just spent a good amount of time trying to navigate their way through the current ecosystem (it's a jungle), this was like an oasis - thank you
please keep these coming, your way of teaching is too good! I'm already aware of these concepts through error and trial for the past week but I'm struggling on the more intermediate stuff such as using tailwindcss, dockerizing, turbo.json's functionality, etc... Not much videos on youtube regarding this gem of a tool turborepo, and you're a lifesaver.
Great vid, a few months earlier and this series would have saved me a ton of time and stress! That said, if you are looking for more turborepo content ideas, here are a few things that either took me a long time to really figure out, weren't in the docs or example projects from the turborepo team, and/or am still struggling with: - Setting up global eslint (I am running two apps: next.js frontend + express API and a series of packages). - Setting up/structuring a shared-types while getting intellisense in all apps and packages and getting updated type intellisense without having to restart the server everytime you update a shared type. - Linking to the base type definition and not the transpiled `.d.ts` file when you ctrl-click a type/interface. - setting up a global testing suite using vitest so that you can run all of your tests from the root and get the vitest vs-code plugin to actually pick up the tests in each app/package. Hopefully you can cover some of these, but in any case, thanks for the vid man, I'm looking forward to the rest of the series!
Thanks a lot for the video, it actually helped me debug my monorepo config haha ❤ I don't know if you're going to do the part 2, but I'll be watching it if you do!
I've been using turbo for about a year and I wish I had a video like that. On my end I've been struggling with ShadCn and when deploying and something else then Vercel. I know vercel is the logic choice here but my company is using another cloud service. It would be nice to make video on how to do such a thing. Thank you for your time!
Great video. I'm new to monorepos and I have a quick question. Can't we just use pnpm workspaces to create monorepos? What's the advantage of using turborepo and pnpm in combination?
In my experience, pnpm is by far the best package manager for monorepos. In contrast, after helping *so many* people debug in their monorepos, I can usually guess which package manager someone is using based on the bizarre error they’re reporting - and it’s nearly always Yarn. I recommend moving away from it if you can.
Great video, but I have a question. How do you manage a scenario where a new version of a type package is committed, and ready to be consumed by the frontend but not the backend (which relies on the old one)? Basically, how to handle different versions of apps in the same codebase?
Okay, this is a good start... I tried to setup a Turbo repo but..., I want to create a shadcn/ui repo w/ tailwindcss and all that good stuff (not to be confused with the template 'ui repo') as one source of truth while being able to then create UI components in the "ui repo" to be used in the apps/ workspace.Either Turborepo wasn't playing nice or I was... well, let's just say not successful. The same thing happened with setup prisma although it did seem to work... The `client.ts` was giving me squiggles...
Lol, sounds so easy, now please do a video on how to share "tailwind config" across the repos, so you can import some non-trivial button, but some good stuff like ShadCN.
@@anthonyshewww I tried my best and failed... if you could do that - it'll be amazing, but at this point - I've gave up. But maybe you can do this, good luck! For me it's a lost cause at this point!
1. Sorry. 😬 2. Don’t worry, you’re only one `npx @turbo/workspaces convert` command away from not using yarn anymore! www.npmjs.com/package/@turbo/workspaces
I actually just got done implementing Biome into a really large codebase and liked it! There are still some missing features, but it’s pretty great overall. If you’re looking for just a linter, Oxlint from the OXC family of tools is pretty great, too.
@@anthonyshewww Would be nice to see you using Biome here as there are not many examples, especially with TurboRepo. Your insights on implementing Biome into a large codebase would be valuable.
@@anthonyshewww There are already quite a few examples of ESLint and Prettier with TurboRepo out there. It would be nice to see Biome with TurboRepo, especially with your insights on handling large monorepos. Tips and tricks for bigger codebases would be incredibly valuable because simple examples with exporting three components in UI packages are quite a few over the internet. I hope my suggestions are not taken as pressure; I just wanted to point this out because you asked what people want to see. Pointing me to the Biome docs makes me think about why TurboRepo videos exist if TurboRepo has docs too, you see where I’m going? Thanks!
I was thinking like that only... python testing team in the place i work has 1 giant repo with all project in it, and has few internal packages commonly that shared between them (like auth, servicenow-selenium connecter)... will it be considered as mono repo?
As someone who just spent a good amount of time trying to navigate their way through the current ecosystem (it's a jungle), this was like an oasis - thank you
Perfect timing! We've just kicked off a cool new mono repo project with Turborepo at work. Can't wait to see what's next!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
please keep these coming, your way of teaching is too good! I'm already aware of these concepts through error and trial for the past week but I'm struggling on the more intermediate stuff such as using tailwindcss, dockerizing, turbo.json's functionality, etc... Not much videos on youtube regarding this gem of a tool turborepo, and you're a lifesaver.
All things I plan on covering! Stay tuned!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
This is the best tutorial I have seen so far regarding Monorepo/Turborepo. Can't wait to see the next videos and learn more. Thanks for sharing!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Looking forwards for the remaining of this series :)
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Awesome. Looking forward for future learnings on this and improvements in Turborepo.
Great vid, a few months earlier and this series would have saved me a ton of time and stress!
That said, if you are looking for more turborepo content ideas, here are a few things that either took me a long time to really figure out, weren't in the docs or example projects from the turborepo team, and/or am still struggling with:
- Setting up global eslint (I am running two apps: next.js frontend + express API and a series of packages).
- Setting up/structuring a shared-types while getting intellisense in all apps and packages and getting updated type intellisense without having to restart the server everytime you update a shared type.
- Linking to the base type definition and not the transpiled `.d.ts` file when you ctrl-click a type/interface.
- setting up a global testing suite using vitest so that you can run all of your tests from the root and get the vitest vs-code plugin to actually pick up the tests in each app/package.
Hopefully you can cover some of these, but in any case, thanks for the vid man, I'm looking forward to the rest of the series!
Here’s TypeScript go-to-definition: turbo.build/repo/docs/guides/tools/typescript#enable-go-to-definition-across-package-boundaries
And 👀 on the rest!
@@anthonyshewww Thanks for sharing! I saw this last night in the release notes!!
This couldn’t come at a more perfect time, thank you! About to start coding my startup.
Looking forward to the next episode 😁
Hey I might be intruding I am willing to work on a startup if you would like can we connect through some medium
If you wanna work together
I was just too afraid to set up a monorepo… this is a life saver. Thanks.
Great to hear it!
thank you nicely explain. keep it up. now move with Turbo
Great video, Anthony! Love to see some more content around monorepos and Turbo itself. Looking forward to seeing more too!
More to come!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Best tutorial
I appreciate you
I’m literally planning on creating a monorepo today. Thanks
Love it. Keep up with the good work
Thank you!
I'm starting to approach this world, pls give us more interesting videos like this one :)
Stay tuned!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Thanks a lot for the video, it actually helped me debug my monorepo config haha ❤
I don't know if you're going to do the part 2, but I'll be watching it if you do!
I’m finishing up parental leave this week so will be back to shipping shortly! 😁
@@anthonyshewww Oh that's nice, congratulation :)
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
@@anthonyshewww Damn, I appreciate that you took the time to update me ☺
I'll check it in the evening or tomorrow thank youuu 🙏🔥
Looking for future updates in Turborepo. Been loving new update so far. 👍
Thank you for making this video.
Cool video! More about monorepo, please
Will do!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Waiting the next one =D
Same! I’m currently on parental leave but will be swiftly back to shipping these in a month or so!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
@@anthonyshewww Thanks bro! And congrats for your baby!
Be a father is challenging but rewarding, as everything that really worth in our live =D
Time to use Turborepo!
Oh god please more of this hahaha
I remember having to setup a monorepo for all our frontend applications at work, it was onerous to say the least haha
What difficulties did you have?
great tutorial
Waiting for the next video.
I’m currently on parental leave but will be swiftly back to shipping these in a month or so!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Looking forward to the next video(s). You should also do a Vim configuration video, looks interesting.
Last time I failed at dockerizing, I would like to see how deployment works in a monorepo
Keep ‘‘em coming if you can also explain how to use clean architecture in a monorepo for next apps 🎂
Are you meaning Clean Architecture, the capitalized one, or just cleanly architecting best practices in general?
@@anthonyshewww i mean Clean Architecture
I've been using turbo for about a year and I wish I had a video like that. On my end I've been struggling with ShadCn and when deploying and something else then Vercel. I know vercel is the logic choice here but my company is using another cloud service. It would be nice to make video on how to do such a thing.
Thank you for your time!
Good one!
Thanks!
Love these videos! Are the upcoming videos on this channel as well?
Soon! Just got back from Parental Leave and will be shipping the rest.
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
When is the next one dropping, monorepos had always been messy to create, waiting for this series.
😁 x.com/anthonysheww/status/1823732138010927193?s=46&t=Qbb4n7Ixuzo4TIFQnqFxfA
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Nice video. When is part 2 coming?
😁 x.com/anthonysheww/status/1823732138010927193?s=46&t=Qbb4n7Ixuzo4TIFQnqFxfA
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Can you show us how to setup development env similar to your.
Respect for the Neovim.
In our Expo app, we had to patch a dependency, but now that we’ve set up TurboRepo with the Expo app, the patch is no longer working.
When will you be releasing the next video?
I’m currently on parental leave but will be swiftly back to shipping these in a month or so!
@@anthonyshewww Okay, all the best!!
@@rushabhhere Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
@@anthonyshewww Thanks man!
Great video. I'm new to monorepos and I have a quick question. Can't we just use pnpm workspaces to create monorepos? What's the advantage of using turborepo and pnpm in combination?
- Cache work you’ve already done so you stay fast at all scales
- Ensure task ordering, no matter the complexity of the scripts you need to run
what would you say Yarn compares to PNPM in the monorepo context?
In my experience, pnpm is by far the best package manager for monorepos.
In contrast, after helping *so many* people debug in their monorepos, I can usually guess which package manager someone is using based on the bizarre error they’re reporting - and it’s nearly always Yarn. I recommend moving away from it if you can.
Great video, but I have a question. How do you manage a scenario where a new version of a type package is committed, and ready to be consumed by the frontend but not the backend (which relies on the old one)? Basically, how to handle different versions of apps in the same codebase?
What do you mean by “a type package”? Want to make sure I’m understanding correctly.
@@anthonyshewww like a package that just contains typescript types for stuff like API requests, responsed, data structures etc
lets go!
today I learned alot. when's the nest part coming.
Best feedback! As soon as I can. Trying not to rush these because I want high quality but working as hard as i can at it. 🤞
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
may you share your vim configuration please (also some tutorial) ? :D
Waiting for part 2
Is there a part 2? Can't find it
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Okay, this is a good start... I tried to setup a Turbo repo but..., I want to create a shadcn/ui repo w/ tailwindcss and all that good stuff (not to be confused with the template 'ui repo') as one source of truth while being able to then create UI components in the "ui repo" to be used in the apps/ workspace.Either Turborepo wasn't playing nice or I was... well, let's just say not successful. The same thing happened with setup prisma although it did seem to work... The `client.ts` was giving me squiggles...
Lol, sounds so easy, now please do a video on how to share "tailwind config" across the repos, so you can import some non-trivial button, but some good stuff like ShadCN.
Will do!
@@anthonyshewww I tried my best and failed... if you could do that - it'll be amazing, but at this point - I've gave up. But maybe you can do this, good luck! For me it's a lost cause at this point!
Is it possible to add and express app to turborepo ?
Yes! Turborepo works with all your favorite tools.
where i can watch the part 2?
I’m currently on parental leave but will be swiftly back to shipping these in a few weeks!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
im deep in yarn land rn so your definition of workspace is fuuuun lol
1. Sorry. 😬 2. Don’t worry, you’re only one `npx @turbo/workspaces convert` command away from not using yarn anymore!
www.npmjs.com/package/@turbo/workspaces
would you use biome instead of eslint & prettier?
I actually just got done implementing Biome into a really large codebase and liked it! There are still some missing features, but it’s pretty great overall.
If you’re looking for just a linter, Oxlint from the OXC family of tools is pretty great, too.
@@anthonyshewww Would be nice to see you using Biome here as there are not many examples, especially with TurboRepo. Your insights on implementing Biome into a large codebase would be valuable.
@@andreanemet418 I'm not sure what there is demo beyond their doc: biomejs.dev/guides/getting-started/
What questions do you have after reading that?
@@anthonyshewww There are already quite a few examples of ESLint and Prettier with TurboRepo out there. It would be nice to see Biome with TurboRepo, especially with your insights on handling large monorepos. Tips and tricks for bigger codebases would be incredibly valuable because simple examples with exporting three components in UI packages are quite a few over the internet. I hope my suggestions are not taken as pressure; I just wanted to point this out because you asked what people want to see. Pointing me to the Biome docs makes me think about why TurboRepo videos exist if TurboRepo has docs too, you see where I’m going? Thanks!
whats you font?, its beautiful
😌 vercel.com/font
Nice font. Mind sharing the name?
Geist Mono!: vercel.com/font
still waiting on the video where u said u would build a new package in turborepo
😁 x.com/anthonysheww/status/1823732138010927193?s=46&t=Qbb4n7Ixuzo4TIFQnqFxfA
Creative title
I’m so glad you said this. I thought it was so clever. 😂
Monorepo != one single Git/Hg repository!
Interesting. How do you prefer to define it?
@@anthonyshewww You operate on top of entire Git server and use appropriate tooling to tie things together.
I was thinking like that only... python testing team in the place i work has 1 giant repo with all project in it, and has few internal packages commonly that shared between them (like auth, servicenow-selenium connecter)...
will it be considered as mono repo?
part 2?
I’m currently on parental leave but will be swiftly back to shipping these in a few weeks!
Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
where are the remaining videos, bro? 🙄
I’m currently on parental leave but will be swiftly back to shipping these in a month or so!
@@anthonyshewww Masha Allah, congratulations. I hope to watch you soon.
@@mujibulhaquetanim Part 2! Sorry for the delay: ua-cam.com/video/oHag57_zRs8/v-deo.html
Is this what vim looks like nowadays?
😎
@@anthonyshewww No, seriously, how do I make it look like that? XD
@@thechoephixOh, sorry. 😂 Here are my out-of-date dotfiles. Will try to update soon once I settle a couple of things.
github.com/anthonyshew/dotfiles
@@anthonyshewww Thanks! 😎