
In this video, I showcase Chef by Convex, a platform that leverages Convex to create full-stack applications. Convex is described as the 'missing half' of your React application, providing features like server functions, asset databases, vector storage, CR jobs, and file storage. I walk through setting up accounts, deploying an application, and using Convex's capabilities like caching and table management. I also demonstrate building a profile page, adding usernames, and profile pictures. By the end, you'll see how Convex facilitates building a robust full-stack app with authentication, file storage, and reactive databases. Link: https://convex.link/demo 00:00 Introduction to Chef and Convex 00:09 Understanding Convex Features 00:37 Blue Sky Example Demonstration 00:55 Convex Account and Functions Overview 02:09 Deploying and Building Profiles 02:37 Defining Tables and Functions in Convex 03:35 Profile Section Demonstration 04:41 Final Thoughts and Encouragement
--- type: transcript date: 2025-04-10 youtube_id: 650z-W67_0g --- # Transcript: Introducing Convex Chef: Create & Deploy Full-Stack Applications in Minutes In this video, I'm going to be showing you Chef by Convex, a platform that allows you to create full stack applications using Convex as your backend. If you're not familiar with Convex, they describe themselves as the quote unquote missing half of your React application. They're a platform that allows you to have server functions and acid database, vector storage, cron jobs, file storage, the list goes on. Basically, in other words, instead of having to go and chase down different pieces as your application grows in complexity and scale, by leveraging convex, we're able to go from idea to deployment much much quicker without having to chase down various different services. Of these different examples, Blue Sky is a great one to demonstrate. What you'll see here is you'll see on the lefth hand side here, this is going to be the natural language pane where we can put in our queries and we'll have that agent work through read different files, write to different files, and as it goes through the code, we'll look at that in just a moment. What's nice with the way that this is built, and if you've used Bolt new before, this is going to feel very familiar. Now that I made an account, I can see that I'm logged in. And if I go over to the Convex tab, I can see the account within the users table as well as within the O accounts. If you've used convex before, this is going to feel very familiar. But just to quickly go through it for people that haven't used it before. If there are particular function invocations that are failing, you'll be able to see all of that here. Additionally, there is a caching mechanism that comes with convex. You're going to be able to see your cache hit rate as well within here. And if we just go through the list, we have our tables. Then from here, we're going to have our different server functions within here. We can look at the code. We can look at the logs of the implications of the different methods. We can see the list function. And then we also have this generate upload URL. Just to demonstrate this a little bit further and I'll say check out my latest video on llama 4. I'll go ahead and I'll post that. Now what you'll notice with this is I also included an image. Now if I go over to convex and I go over to files now I see that storage ID. And if I go over to our data and the tables this particular post, we also have this association to the image ID. Basically everything is all set up. I can log in, I can log out, and I can also deploy this. It's really nice to have a starting point. If I want to deploy this, I can go ahead and click the deploy button here. From there, I can go ahead and share this link, and it's a deployed application. Now, let's just build on this a little bit. Let's say I want to build out a profiles page where I can put in a username if a user doesn't have one already. And also, I want to have the ability to add in a profile picture. I'll go ahead and send that in. And as it's going through, I'll just quickly touch on what Convex looks like within your React project. Within your project, you're going to have this Convex directory. And within here, there's going to be all of the different component pieces of what we've built out and generated with the LLM. And how it's set up is you're going to have everything that you need from Convex defined within code. Say for instance, for all of the different tables that you want to define, this is going to be how you do it. Within here, we have the profiles table, which we just created. we have the posts and then we also have the likes. That's all that we need to do to define those different tables. And a similar thing for the different functions. If we want a server function, what we can do is we can define the different arguments. The one thing that's nice with convex is it is end to end type safe. So say for instance for the mutation here for our create method, we're going to have the arguments of content as well as image ID. To define the handler, all that we need to do to define that handler for our server function is write everything within here. So we can check for the user ID and then based on the user ID we can go ahead and update that respective row within the database. Now just to quickly demonstrate the profile section. Now I can see on the post page I have the respective post as well as the name. From here I can go and I can just with natural language instruct what I want our application to have. Now I'll send in I want to show each user's profile photo within the feed. So now within here I have that updated username as well as that profile picture. And again, if I go and I look over at Convex, I can see within Convex, I have that new photo that I updated. Additionally, within the tables here, we have this new profiles table that we just set up. I have the bio there, and I also have the association with that profile picture. I'm going to make another profile where I have a different account here. Now, just to demonstrate that, I can go and I can post hello world. And now we have two different users using this application. All in all, we basically have the starting point of a full stack application that has authentication. We have file storage. We have caching all set up. The way that convex is set up is it's a reactive database as well. If you're using something like in the context of a chat application or some sort of real-time environment, it is super effective across a ton of different scenarios. Otherwise, that's pretty much it for this video. I encourage you to check out Chef by the team over at Convex. If you found this video useful, please like, comment, share, and subscribe.
Weekly deep dives on AI agents, coding tools, and building with LLMs - delivered to your inbox.
Free forever. No spam.
Subscribe FreeNew tutorials, open-source projects, and deep dives on coding agents - delivered weekly.
Technical content at the intersection of AI and development. Building with AI agents, Claude Code, and modern dev tools - then showing you exactly how it works.