Cursor Crash Course: Vibe Coding on a Large Codebase

codebasics · Beginner ·💻 AI-Assisted Coding ·5mo ago

Key Takeaways

The video demonstrates the use of Cursor 2.0 for vibe coding on a large enterprise project, covering major features and systematic vibe coding principles, and showcasing the tool's ability to write code 10x faster with the help of Whisperflow and Opus 4.5 models.

Full Transcript

In today's video, I will show you how you can write code 10x faster using cursor 2.0. We are not only learning different features of cursor as a tool. We are also learning some of the systematic principles of w coding so that you can use them with any other tools as well such as anti-gravity, claw code and so on. We will start by building a website which has back end, front end and database layer. And then we will jump into enterprisegrade production application where we will fix some bugs and implement new features. This tutorial will be very different from hundreds of other cursor tutorials that you find on YouTube because they mainly focus on the tool and its features. What I'm going to show you is a simulated experience of how some of the senior software engineers working for big tech companies use VIP coding on big and complex projects. Let's begin by googling install cursor. Go to this link cursor.com/d download and install a version that is appropriate for your operating system. I already installed it. I have launched cursor. This is how it looks like. Now when you go to the settings icon, you can switch between different views. By default, what you get is an agentic view. What I like personally is the editor view because I'm more familiar with the traditional ID look, but agentic view also has its own benefits. So let's switch it to editor view. And the view here looks more like VS Code. If you have used VS Code for coding, it is similar to that. Okay. Now for a free version you will see something called auto. Okay or by default you will generally uh get auto. Auto means when you are writing code it will pick the correct model for a given task on its own. But let's say you have a preference and you want to select a specific model. In my case I like OPUS 4.5 which is anthropics model. So, usually I use that. In a free version, you won't be able to use it. But whatever you get in auto should be good enough. Okay? But if you pay, I'm paying $20 a month fee. And I'm getting this better model called Opus 4.5. Now, let's assume you want to build a website for your gardening business. Okay. So, here I'm going to create a new folder called website growart. Let's say Groward is a name of my company and I'm going to open that particular folder. So, website Growark. Select a folder and here let's uh go to the editor view. So, I'm already in the editor view and I'm going to use this tool called Whisperflow. Okay. So, whisperflow is a free tool that you can download and it lets me talk to cursor using audio. So, here watch. I'm pressing control and windows key to talk to cursor. You can also use this icon uh for the voice input. Build me a website for my gardening business. I sell gardening equipment, flowers, ports, etc. Keep the theme green. Use any shade of green for the front end. Build the front end in NexJS. Back end in fast API database can be SQL light. See this is better than typing because otherwise it's going to be too much typing. I don't like that. And here you can use a plan mode. So you're planning a new feature or building an application from scratch. Uh it's better to review the plan. Okay. and let's hit go. Now this is an iterative approach. So it's going to do the planning. It's going to think about the requirements. It may ask you questions. See what type of website do you need? Shopping cart, check out order, browse product, contact order. Okay, I need shopping cart etc. So select that. Do you need an admin dashboard to manage products? No, it can be hardcoded. Just hit continue. All this requirement by the way you can give in advance too. Okay. Let's say you are working with your business manager. You have prepared the PRD document. You can give that document to it and it will uh take the document and start implementing the features. Let's review what it has done so far. As you can see it has built the architecture overview. Okay. Like my SQL light database will have this four tables. Product categories ordered items. This is my text tag. Next.js back end, first API back end, Nex.js front end, SQL light, state management, React context and then this is the design theme also created database schema and so on. Okay, so I can uh view the plan here. Okay, see this is the plan that I can review and it has prepared this list of to-do items. Now let's say I want to add a new to-do. So I can click on it and I can add it. Okay. And you can also select this to-do and you can say okay only implement these two features and it will do that. Okay. So [snorts] now I reviewed the plan. It looks good to me. I'm going to hit build. So when I hit build it will switch from plan mode to agent mode automatically. So watch this. I'm clicking build button. And now it is in agent mode. So agent mode is used to actively write code. Plan mode is just for planning. It will not write code. Okay. So now it started writing code. See it created my requirement.txt. It's creating models.py. It's writing code so fast folks right for building this kind of application a developer would take probably one week. And here you can see it will be done in minutes or in hours. Let me take a moment to thank today's sponsor Ultralytics YOLO 26. On this channel we have talked about YOLO before. It is the de facto approach for vision AI. Euro 26, a latest release from Ultralytics, sets a new standard for realtime age first computer vision. It is the fastest, simplest, and most deployable YOLO model, Ultralytics has released so far. Unlike older YOLO versions that relied on non-max separation as a post-processing [music] step, YOLO 26 uses native end toend detection. This reduces latency, simplifies deployment, and improves performance on both small and large objects in real world systems. [music] You can access YOLO 26 on Ultralytics platform with downloads and documentation available to get started quickly. It supports multiple vision task detection, segmentation, classification, pose estimation, tracking within a single consistent framework. They offer two licensing options, AGPL 3.0 zero license if you would like to open source your entire project. The second one is Ultralytics Enterprise license for commercial proprietary deployment and distribution without open source requirements. [music] Please try it out. The link is in video description below. Now let's get back to our video. So see right now it is implementing uh this particular feature two out of 10 right see it has like to-do list uh and you can see here it is checking out. So as as and when it is implementing these features, it is checking them out. See, I'm not doing anything by the way. It is checking them out as if you have a Jira board and you have different Jiraa stories. You have given it to different developers. They're implementing it and they're marking those stories as done. Okay. So here you see completed in order you see here. So it has completed these two. That's why you see this check mark and it is right now working on this particular thing. So there are quite a bit of features that we have. So it's going to take some time. So let's wait. It completed writing all the code. See all the todos are complete. And now it is starting the servers. Okay. So it will do everything on its own. So let me click on run. If it finds error, it will retry it. So let's uh again click on run. And there you go folks. Our website is ready. Look at it. How beautiful it is. Let me open it in a different browser. See when I gave my prompt I did not even tell it that my name of the company is Growmart. Probably it recognized it from the name of the folder and it has a green theme. It is looking so professional. All the features are working. See I can go to equipment. I can add this features. Okay. Let's say add to card. So my card is being updated. You see? And let's say I want to add some flowers. I like red roses. Click one. Click two. Here you see this. Proceed to check out. Place an order. See, it's so professional. For software developers, it would have taken maybe a week or two week, right? If you give this project to an agency, they would have even charged you some money. But now with $20 a month subscription, you can build this thing on your own. Here I forgot to record this part but when it was done building the website it actually tested everything. So as if a boat is going through all the pages. I mean if you try it on your computer you will see it tested all the different pages. You know like how as a developer I would test my website. It did all of that. Now I'm reviewing the menu bar and let's say I want to add a contact us button in the menu bar. So I can select an element. So I can click on this button and select this particular div element and let me open a new chat. By the way, this is considered as a good practice because when you open a new chat, you will not not have the past context. So when you are fixing a bug, implementing a new feature, it's a good practice to open a new chat. So I selected this and it has selected this div element. I will say that here add contact us button. When someone clicks on this button, show contact us page with uh required information whatever or you can be specific and give your exact requirements here. So it says that create a contact us page with a beautiful design matching the site's aesthetics. So it will do lot of work on your behalf even if you don't give instructions. Now folks if you have free uh subscription uh I don't know there might be a limit uh on the kota so use it carefully maybe build a simpler website with simple features uh and also the quality of the output will depend on the model that you're using. I'm using the best coding model okay by anthropic. If you are using auto free version by the way see you see the contact us button now here it's so amazing it implemented the feature and since my back end and front end is running in the reload mode it automatically refreshed this see I have the feature now okay so it's I think summarizing it okay created a contact us page with hero section it gives you all the information now as a software developer it is your duty to review the output and when I say output the text outputs as well as the code so you'll click on review button you will make sure that there is no mistake in the code and when things look okay you will say keep all which means I'm accepting the changes which uh my AI has done for me now let's test it I click on contact us button folks isn't this amazing this sounds like a magic almost I just said implement contact us button using common sense and see it is showing me the call us of course I can go to my website the code and change all this I can also ask it to make it configurable see here whatever send message this looks so good and check the database see in the back end now I have this database growart db it has this four table you can review this database and it schema as uh the schema, the name of the columns, everything is so good, so professional and see how much code it has written. This is all my backend code in first API. This is all my front- end code in NexJS. All right, so that was the application. Now let's move to another application which is an enterprisegrade production app. Before we move ahead, let's think about this mental model. Our role as a human is going to be that of an orchestrator role. So we can orchestrate with cloud code, cursor, all these different tools and we can give them context, intent, business requirements and these tools will give us an output. Okay, then we validate it and we just guide these tools. Okay. So our role is going to be that of an orchestrator and in future all these different roles that you see in the IT industry are going to consolidate. So today we have software developer, product owner, AI engineer, UX engineer. In future there will be a single person builder I don't know what they're going to call it but that same person is using now different AI tools to do the work of all these different people and AI engineering becomes essential because nowadays all the software products have AI features. So as a software engineer you need to know at least some AI and I have this self-paced boot camp where many of our students have requested if we can have live boot camp because so many of software engineers will appreciate live interaction cohort based format and we are conducting a little survey. It will be great if you can fill out the form below in the video description. We are conducting some survey for live boot camp. We have not done live boot camp before. So it will be amazing. It will be a huge favor if you can fill this out. Now we will move to enterprisegrade application. It is an e-commerce application similar to myntra.com or aio.com or amazon.com. Here seller can create account. They can upload their product. Buyer can create account. They can buy their products there. Okay. So I'm going to give you an access of this repository. And as I said it is a serious production grade repository which has backend code, front end code. Uh in back end you have everything like docker setup uh database readme everything that you will find in any enterprise application. So now let's open readme file and go through the setup steps. Okay. So when you open readme you can click on this button to get the preview. Right here you see the markdown the raw markdown but here you can see the preview. Let me rather open it here in GitHub. Okay. So this is the repository. See it looks like very production kind of app. And for buyers these are the features. Sellers these are the features and this is your technology stack. It's quite involved. Okay. And this is the project structure. So let's uh get started. If you prefer using docker by the way you can choose option one and you can do it that way. Otherwise if you keep want to keep things simple this is the approach that you can use. So I will keep this aside. I will press control uh / character control I think tilda or you can just go here view and say terminal. Okay. So this way you get terminal in the cursor. Now I personally like simple command prompt rather than a powershell. Okay. So here you can say command prompt. You can open it. So I already have two command prompts. So in one I will run my back end. In the other one I will run my front end. So let's start with back end. So I'm going to go to back end. [snorts] And here uh you need to let's see you need to install all the dependencies. But before you do that, you have to copy the environment file. So whatever is dot env.ample, copy it as env file. Okay. So here you have this env.ample. So Ctrl Ctrl + V. It will create new file and just rename just rename that to env. Okay. So I have the env file. Here you need to uh copy paste your email one email which you will use as your master email for creating this application. Okay. So when you place an order it is actually going to send an email to seller and buyer both. So I'm going to show you that entire use case. So here uh let's say you have one email your a@gmail.com. use an email and then you need to get this app password. So how do you get that? For this go to Google, you know, type in google app password and it will show you a link. This is the link my account.google.com app password. So when you click on it, you will be able to create an app. Okay. So this is my highub app. So you create that, you copy paste this particular app password here and make sure you are removing the spaces. And that's [clears throat] it folks. So this is done for your back end. For your front end, you can just copy this file env.local. Okay? So just say crl + v. It will create a new file and rename this file to env.local and hit enter. The front end app is pointing to your backend endpoint. So we are going to run our back end on port 8000 on local machine. So no changes required here. Our environment setup is done. Okay. Now I'll follow all these instructions to start my back end. Okay folks, these are pretty straightforward. So I'm going to just skip through it and I will directly run it. I followed all those instructions and my app is up and running here in one terminal shell. I have my back end. So that is your Ubicon Python back end. Front end is npm rundev. And look at this website. It's similar to Amazon where you can create an account for a seller as well as buyer. So what we are going to do is click on create account and use your email id to create both buyer account and seller account. Okay. So you are creating two accounts. I have already created my accounts. For mobile number just give 1 2 3. It will work. Okay. So assuming you have created the accounts. Let's uh sign in. So here I'm going to sign in as a buyer. Okay. So let's sign in. Right now there are no products because our application is fresh and new. And here I have signed in as a seller. So seller will upload their account. Right? If you're buying something from Amazon or Flipkart, you will have some company seller. They will upload all their items. So here I'm going to go to products. Okay. And then click on add product single upload or bulk CSV. So we are going to use bulk CSV. And there I have provided you sample CSV in the same GitHub repo. So just drag and drop here and say upload products. See 10 products are uploaded. So when you go to products see here you will see the image of the product, the description, price whatever. Okay. So if you have a seller account on Amazon you will know you will have this kind of interface. So now when I refresh this I should see all these products. See so this is now similar to Myntra etc. So I can go ahead and I can buy products add them to cart and uh you know do the usual process as a developer. Now I'm you know working on this website and see I'm adding two quantity here and when I say add to cart here it is showing only one. So looks like there is some bug. I want this badge to be such that it shows me two not one because I have two items in my card. Okay. So let's say I added that two and let's say this three. Okay. Uh in that case it should be 3 + 2 5. So this is a little bug. So we are going to ask cloud code to fix this issue. So what we will do is we can even take a screenshot. See capture area screenshot. So you click on it and you can capture the area. You can say that here. See you're giving it a context. The badge shows wrong number of items in my cart. Cart. Okay. Fix it. So I open a new chat and I am asking AI to now fix the bug. I hit the kota limit. So I added $50 more. I think this happened because for gardening website project it used too many tokens but anyways it has made all the code changes and when I go to my website look at this I see five you see this three and two I have total five items so this badge issue is fixed I can click on review as a responsible programmer you need to review the code changes now if you want to use LLM as a judge so here one LLM wrote the code okay if you want to use another LLM um to review this code changes then you click here and just say review agent changes and it will review it okay and you can also commit I already committed this change by the way you can commit and push it with a click of a button now let's say I want to implement a new feature which is adding a wish list okay so I can go here I can click here and I can say add a button so see here uh maybe in this area. By the way, you see you can see this um inspect code as well. So I don't want to use inspect. Basically showing the console, but I can select this element here and I can say next to this button add to wish list. There will be only one default wish list for a given user. And what else do we add? Um implement this and to end. There you go. Our programmer is at work. Now it took some time but it is implementing this functionality. You see this wish list button, this love icon, whatever you see in a popular website, it has already implemented it. Okay. And you can once again review the code changes. It made so many code changes, 10 files. So now uh let me go here. Let me remove the items from my card and say I want to add this one in my wish list. Okay. So I just click on wish list. add it to your wish list. Okay, home. Click on this. Okay, so these two items I added to my wish list. So now when I go here, see I did not do any iteration. I just gave one prompt. That's it. It implemented everything as expected. Now from my wish list, if I want to add things to card, see it added it. So this is working like a charm. Next thing we will look at is how do you add structured logging because I'm an experienced seasoned Python programmer and I don't like the fact that we don't have logging here. So I will open a new chat and I will say add structured logging in. Now let's say you want to add it in card service. So here you can give a context by saying at card service. You see this is how you give the context. So add a structure login. So you can even you can say add card service and you can say add structured logging add one log line at the start of every function and then record necessary context. Okay. So I'm doing this only for card service. And when you're working in a larger code basis, you will see this kind of pattern where you implement one code change in one file and then later on you want to implement similar changes in another file. Let's say I'm integrating data dog for observability in one file or one class. I want to do it later on for other classes too. Okay. So we will see how you can do it uh using a good principles in vibe coding. So here you can see it is doing good. If you want any changes here again you can you can tell it and it will do it. But I like this changes. So I will say uh keep it and then I will commit it. Okay. So again commit message it is going to generate on its own. So let's say it committed my change. Okay. So this is done. Now let's say I want to implement same thing in email service. What will I do? So one option is I give a similar prompt for email service. Right? But rather than that and by the way if I'm doing it right now I can say okay implement similar change in email service. But let's say I'm doing this change after 1 month or let's say some other developer is doing this change after 2 months. In that case uh what uh they can do is they can look at git log. Okay. So when I run this command get log it will show me the commit ID. So in this particular commit ID I added a logging service. Okay. So what I can say is uh look at commit id this and implement similar change in email service and it will check that git commit what changes it did and it will uh implement now say it is running some command because it doesn't know what kind of changes are there in that git commit. So you are saying get show. So it is just analyzing as if a programmer would analyze right a programmer would go to GitHub look at this git commit you know like think okay and observe what changes were done and they will do similar changes in this file. So it already detected that we need to implement logging here and see it is now doing its work. Isn't this amazing? Look at this email service like when you say review um you see it has all these changes. Okay. Now let's say uh you are doing this changes again and again. You don't want to refer to this get commit ID. This is also tedious. So let's improve it further. And the way you improve it is by using uh git commands. So what you can do is click on this um or rather actually I can just go here and type slash. So when I say slash I don't see any commands. There is this dummy command already, right? But I will click on create command and I will say add structured logging. Okay. And here I can add the markdown file with all my instructions. Okay. So this is nothing but a markdown file. It doesn't have any specific syntax as such. But as a programmer I will give all the detail instructions. So now I want to change my instructions and I want to say okay here are the instructions okay first import logging then create a logger then create an object called log context okay then start the log also when there is an exception I want to add logging so I'm adding instructions for that add log error log and so on okay and I will just give it some sample code snippet as well and once this command is added now let's say I want to add logging in order service. See, order service doesn't have logging, right? So now folks, it's so easy. See, you will say / add structure logging. Okay? And then order service. See, this is so easy. I'm not writing any big prompts. I'm not uh referring to any past commits. All I'm doing is I have coded my instructions into this command file, which is a markdown file. And I'm just saying okay run this command on this file. Now many organizations and many projects will have certain guidelines on how they want to add logging. So you can put all those guidelines in this MD file folks just like readme uh this is an MD file for your agent. It will read this MD file. Okay. It will understand your style of adding logging and it will add it. See I want to create this log context object. Okay that's what I want to do and it will do it. See, so if you review the changes now, see it added log context. Isn't that beautiful? As per the instructions that I have given here and it is doing my work. All right folks. So this way you can add more locks for anything that is repetitive not just for you but for your team for your organization. You add a command and see it added the command in this dot cursor repository dot cursor directory actually. see dot cursors command this and you will actually check this into GitHub. So if other developer pulls this in they can just simply use this command to make similar code changes. In addition to commands you can add rules as well. So if you go here click on the cursor settings. Okay. So in cursor settings you will see a way to add rules and commands. So we already added this one command add structure logging but let's say I want to add a rule. So you click on it and you can add a custom rule. Okay. And you can give your rule name. So let's say my rule is backend API patterns and then it is adding this skill.md file in this uh skills directory. cursor is changing these things very fast. So it used to be cursor rules first then MDC then rule now skills but anyway the concept is same. So the difference between command and rule is that uh rule is more like traffic guidelines always stop when there is a red light drive below speed limits whereas command is more like the actual instructions. Okay. Uh when you put it on on your Google maps, okay, turn left, stop, uh take this exit. Okay. So that's the difference. Command is precise instructions whereas rules is just general guidelines. So if you look at that rules, right, there can be a project rule, there can be user rules, team rules, agents.md specifically for agents. Okay. So if you look at um let's say user rules, these are the these are your personal choices. You don't want to check into git. Okay. But these are the project rules which are applicable to all the programmers. So they all the programmers will find it useful and looks like they have recently changed the format. See previously you will have this kind of thing always apply means this rule will always apply. when you want to manually apply it uh you will have to say at and if you want to intelligently apply it then it will decide you know based on the description etc. You can also give a wild card so you can say globes let's say star.tsx or let's say /backend/star.py Pi in that case it will apply that rule only for Py files. Okay. So here uh but looks like they have changed it recently. This is something new for me as well. It used to be rule now they're calling it skill. Okay fine. But the rules will look something like this. Okay. API endpoint structure use response model for type safety service layer use async session. So whatever are the style guides, preferences, any legacy hacks, any architectural consideration that you want to make right see database query use select. It's like it's a junior programmer you are giving the instructor okay this is what you should do this is what you should not do okay so let's say if you don't want it to use uh sync calls you will say do not use sync always use async calls and so on. So these are general guidelines that you will embed in the rules and when cursor is writing the code it will always load these rules and it will use it. Let me show you some other cool features of cursor. When you type add you can refer to official documentation. So let's say I want to refer to fast API documentation. So I can click on docs and type in fast API and I can say okay add a timeout or whatever feature in my back end and it will refer to that documentation. Now this documentation is indexed in cursor environment but often time what happens is when you are working with AI to write code it may use the version of API that that is let's say outdated it might use let's say a version which was released 6 months ago okay so if you don't want that to happen let's say you want to use latest version you can use this uh documentation index or you can use an MCP server called context X7. So if I go here and if I search for context 7 here you will find all the API documentation latest see Nex.js documentation was updated uh only one day ago. Okay. So if you go to install here and if you type in cursor install in cursor the way you can do it is you just need to add this JSON object along with the API key. So you can create API key that's very easy into your uh go to cursor settingsite click on cog wheel cursor setting and by the way cursor folks are releasing features very fast so these menu options might change. Use your common sense tools and MCP and you add it here. See I have already added it here. So you can see that but context 7 and now I can say using context 7 right code whatever or you can add this instruction into your rules file. Remember it will always respect those rules. So in my rules file which is here I can say always use context 7 for API documentation and it will use it. In this new world of AI first coding humans are still relevant. We are the orchestrators because LLM you can think about it as a genius engineer who joined the company 5 seconds ago. They know every programming language in the world but they know nothing about your business logic, legacy hacks, folders structure etc. And the cost of silence that you will pay is without you providing enough context it will uh default to the internet average producing code that is syntactically correct but architecturally invalid. It may not work in production. So you are trying to find a needle in a hashtag. Think about LLM as this huge brain which has vast amount of information, vast amount of reasoning power and you are targeting a specific area in that brain. And how do you target it? Well, by writing better prompt and when I say prompt, it is very comprehensive term. Actually prompt is not what you type in the AI chat in cursor. It is all the context. So when you say at documentation, what rules you are writing, the commands, the screenshot you're providing, see all of those things is going to matter and it will produce highly relevant output. Bigger context doesn't mean better answer. Relevance always beats the volume. So if you summarize our workflow, human versus LLM or rather human with LLM trying to build an application, the workflow is you give your business requirements, legacy hacks, architectural constraints and so on to LLM, your style guide for your company. It will write the code. You will validate the output. When I say validate output, you will not only validate the code, you will also run the code. You will see it is doing the thing. uh which you expect it to do and at this point folks rigorous uh automated testing becomes very much necessary. You can also use AI to write your test cases. Okay. So you need to have a huge or a proper test suite integration test uh unit test you need to have all of that. Okay. And then you will just repeat this loop. So your job is to give intent, context, constraint to LLM. It produces the output. You validate it. Code changes. You again validate it. Because when you ship the code to production, you can't say this code was written by LLM. Of course, it was written by LLM. But responsibility is on your shoulders. Okay. Thinking about anatomy of a perfect prompt. We saw three layers, right? Rules. Rules is like governance. Basically, traffic rules. Okay. Traffic rules are general guidelines. They are always applicable. So here persistent global instructions that define how the AI should behave and write code in every single interaction. They run in the background. Examples are always use TypeScript interface prefer functional programming over OP. Let's say for your project for your organization, you might have this guideline. So cursor is not going to know, right? So you have to give all these instructions in your rules file and the way you can supply rules is by using cursor rules. If you're using claude, there is cloud.md file you can give it as a system prompt. Agent MD if you are building agentic application and so on. Then command is a second layer. It is like action. It is your actual GPS direction. Okay. So rules are general traffic rules. Always stop when there is red light. Drive below speed limit. These are global rules which always apply. Command is a specific journey. So I'm going from point A to B. My GPS is saying turn right, stop, take the exit. So those are commands. Okay. Specific immediate instructions telling what to do. Okay. And the examples are refactor this code. We already generated that add logging structure logging command. So you know uh the way you can supply command is by saying slash. Okay. in cursor or by using the chat box. So even if you're not using the slash command when you're typing something giving five-step instruction in AI chat box that is also a command. Okay. And the context is like your map data your coordinates your road intersection information exit information. You know Google map will have all this data. So that is your context. So here in terms of our our AI coding you will give relevant background. Okay. And how do you do it? Well you attest screenshot. We have looked at all this matter right we attach screenshots so that is the context you are giving we gave output trace okay you can say at output and you can refer to that trace you can uh refer to documentation MCP servers so by the way let me show you the output trace so here see I have these two terminals right u and node so when I said node see I can refer to this so it will go and it will read whatever whatever you have here. Okay, whatever you have here and there used to be this control L command where you can copy and take this context here again is gone with the new release. Okay, but you can give all these options. Okay, so see terminals, fast chats, folks explore all these options. Okay, files and folders, you can also give a specific folder. So for example, I want to refer to only my backend folder and only that will be in my context. Okay. So this is the three layer architecture folks. AI first coding. Okay. This is what the reality is. AI assisted coding is one thing but world is moving to AI first coding where you talk to AI through the prompts. And this is validated by the godfather of coding Lionus Torvals. He wrote Linux kernel, git version control system. He started using he's the best programmer in the world and he's saying that and he started using anti-gravity. Is this much better than what I could do by hand? Sure is. So he's validating that anthropic released uh claude cowwork uh in like I think one or two sprints right in in a matter of two weeks they wrote it and somebody asked okay did you use claude code to write code and this guy Boris Chenny he's the main person behind this product he said all of it all of this code is written by claude code folks AI first development is the approach that many companies have already adopted My friend is a staff engineer at one of the prominent fintech companies here in US. They have a huge monolith with thousands of lines of code and complex business logic. And he told me that in last 1 month 95% of the pull requests that he has created are completely written by claw code. He has not written any code with hand. I know this sounds powerful but scary at the same time. And I have created another video on how to tackle this approach. How to evolve your career in this changing time where you can become orchestrator, a builder and build things fast and contribute to company's growth. To conclude, if you are not using AI to write code, you are 100% missing out. And the question somebody might have is, is it going to make us dumb? The answer is yes. If you rely on it too much, if you don't review its changing, it's going to make us dumb. So, we need to review what it is producing uh use our brain to understand what it is doing. And I know when you do it again and again, it will be easy to miss out and we will let it go. Uh in which case, sometimes I think about this digital detox days, right? Like people who don't want to use their phone all the time or who have mental issues due to overusage of phone they have this digital detox day. Similarly there can be AI detox days where let's say every Friday I'm not going to use AI. I will write code with hand. Okay. But we have to find a right balance. We can't completely ignore this wave. We have to change as the technology as the world is changing. I hope you found this uh video to be useful. If you have any questions, please post in the comment box below. Bye-bye.

Original Description

In this vibe coding cursor crash course, we will use cursor 2.0 for vibe coding on a large enterprise project. We will go over major cursor features as well as learn systematic vibe coding principals or vibe coding fundamentals that will teach you how to use this on enterprise grade code repositories. Try YOLO26: https://docs.ultralytics.com/models/yolo26/?utm_source=infl&utm_medium=video&utm_campaign=yolo26&utm_term=codebasics https://platform.ultralytics.com/ultralytics/yolo26?utm_source=infl&utm_medium=video&utm_campaign=yolo26&utm_term=codebasics Here is the survey link: https://forms.office.com/r/XfGi18JQxD Code: https://github.com/codebasics/hive-marketplace ⭐️ Timestamps ⭐️ 00:00 Introduction 00:52 Install Cursor 01:36 Plan, Agent Mode etc. 02:50 Build growmart website 09:46 Add contact us option 14:26 Fix a bug in large codebase 22:36 Implement a feature 24:38 Git commits for context 28:14 Cursor commands 31:05 Cursor rules 34:17 Context 7 MCP server 36:25 Humans as orchestrators Do you want to learn technology from me? Check https://codebasics.io/?utm_source=description&utm_medium=yt&utm_campaign=description&utm_id=description for my affordable video courses. Need help building software or data analytics/AI solutions? My company https://www.atliq.com/ can help. Click on the Contact button on that website. 🎥 Codebasics Hindi channel: https://www.youtube.com/channel/UCTmFBhuhMibVoSfYom1uXEg #️⃣ Social Media #️⃣ 🧑‍🤝‍🧑 Discord for Community Support: https://discord.gg/r42Kbuk 📸 Codebasics' Instagram: https://www.instagram.com/codebasicshub/ 📝 Codebasics' Linkedin : https://www.linkedin.com/company/codebasics/ ------ 📝 Dhaval's Linkedin : https://www.linkedin.com/in/dhavalsays/ 📝 Hem's Linkedin: https://www.linkedin.com/in/hemvad/ 📽️ Hem's Instagram for daily tips: https://www.instagram.com/hemvadivel/ 📸 Dhaval's Personal Instagram: https://www.instagram.com/dhavalsays/ 🔗 Patreon: https://www.patreon.com/codebasics?fan_landing=true
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from codebasics · codebasics · 0 of 60

← Previous Next →
1 Python Tutorial - 1. Install python on windows
Python Tutorial - 1. Install python on windows
codebasics
2 Python Tutorial - 2. Variables
Python Tutorial - 2. Variables
codebasics
3 Python Tutorial - 3. Numbers
Python Tutorial - 3. Numbers
codebasics
4 Python Tutorial - 4. Strings
Python Tutorial - 4. Strings
codebasics
5 Python Tutorial - 5. Lists
Python Tutorial - 5. Lists
codebasics
6 Python Tutorial - 6. Install PyCharm on Windows
Python Tutorial - 6. Install PyCharm on Windows
codebasics
7 PyCharm Tutorial - 7. Debug python code using PyCharm
PyCharm Tutorial - 7. Debug python code using PyCharm
codebasics
8 Python Tutorial -  8. If Statement
Python Tutorial - 8. If Statement
codebasics
9 Python Tutorial - 9. For loop
Python Tutorial - 9. For loop
codebasics
10 Python Tutorial -  10. Functions
Python Tutorial - 10. Functions
codebasics
11 Python Tutorial - 11. Dictionaries and Tuples
Python Tutorial - 11. Dictionaries and Tuples
codebasics
12 Python Tutorial - 12. Modules
Python Tutorial - 12. Modules
codebasics
13 Python Tutorial - 13. Reading/Writing Files
Python Tutorial - 13. Reading/Writing Files
codebasics
14 How to install Julia on Windows
How to install Julia on Windows
codebasics
15 Python Tutorial - 14. Working With JSON
Python Tutorial - 14. Working With JSON
codebasics
16 Julia Tutorial - 1. Variables
Julia Tutorial - 1. Variables
codebasics
17 Julia Tutorial - 2. Numbers
Julia Tutorial - 2. Numbers
codebasics
18 Python Tutorial - 15. if __name__ == "__main__"
Python Tutorial - 15. if __name__ == "__main__"
codebasics
19 Julia Tutorial - Why Should I Learn Julia Programming Language
Julia Tutorial - Why Should I Learn Julia Programming Language
codebasics
20 Python Tutorial  - 16. Exception Handling
Python Tutorial - 16. Exception Handling
codebasics
21 Julia Tutorial - 3. Complex and Rational Numbers
Julia Tutorial - 3. Complex and Rational Numbers
codebasics
22 Julia Tutorial - 4. Strings
Julia Tutorial - 4. Strings
codebasics
23 Python Tutorial -  17. Class and Objects
Python Tutorial - 17. Class and Objects
codebasics
24 Julia Tutorial - 5. Functions
Julia Tutorial - 5. Functions
codebasics
25 Julia Tutorial - 6. If Statement and Ternary Operator
Julia Tutorial - 6. If Statement and Ternary Operator
codebasics
26 Julia Tutorial - 7. For While Loop
Julia Tutorial - 7. For While Loop
codebasics
27 Python Tutorial  - 18. Inheritance
Python Tutorial - 18. Inheritance
codebasics
28 Julia Tutorial - 8. begin and (;) Compound Expressions
Julia Tutorial - 8. begin and (;) Compound Expressions
codebasics
29 Python Tutorial - 12.1 - Install Python Module (using pip)
Python Tutorial - 12.1 - Install Python Module (using pip)
codebasics
30 Julia Tutorial - 9. Tasks (a.k.a. Generators or Coroutines)
Julia Tutorial - 9. Tasks (a.k.a. Generators or Coroutines)
codebasics
31 Julia Tutorial - 10. Exception Handling
Julia Tutorial - 10. Exception Handling
codebasics
32 Python Tutorial  - 19. Multiple Inheritance
Python Tutorial - 19. Multiple Inheritance
codebasics
33 Python Tutorial - 20. Raise Exception And Finally
Python Tutorial - 20. Raise Exception And Finally
codebasics
34 Python Tutorial - 21. Iterators
Python Tutorial - 21. Iterators
codebasics
35 Python Tutorial - 22. Generators
Python Tutorial - 22. Generators
codebasics
36 Python Tutorial - 23. List Set Dict Comprehensions
Python Tutorial - 23. List Set Dict Comprehensions
codebasics
37 Python Tutorial - 24. Sets and Frozen Sets
Python Tutorial - 24. Sets and Frozen Sets
codebasics
38 Python Tutorial - 25. Command line argument processing using argparse
Python Tutorial - 25. Command line argument processing using argparse
codebasics
39 Debugging Tips - What is bug and debugging?
Debugging Tips - What is bug and debugging?
codebasics
40 Debugging Tips - Conditional Breakpoint
Debugging Tips - Conditional Breakpoint
codebasics
41 Debugging Tips - Watches and Call Stack
Debugging Tips - Watches and Call Stack
codebasics
42 Python Tutorial - 26. Multithreading - Introduction
Python Tutorial - 26. Multithreading - Introduction
codebasics
43 Git Tutorial 3:  How To Install Git
Git Tutorial 3: How To Install Git
codebasics
44 Git Tutorial 1: What is git / What is version control system?
Git Tutorial 1: What is git / What is version control system?
codebasics
45 Git Tutorial 2 : What is Github? | github tutorial
Git Tutorial 2 : What is Github? | github tutorial
codebasics
46 Git Tutorial 4: Basic Commands: add, commit, push
Git Tutorial 4: Basic Commands: add, commit, push
codebasics
47 Git Tutorial 5: Undoing/Reverting/Resetting code changes
Git Tutorial 5: Undoing/Reverting/Resetting code changes
codebasics
48 Git Tutorial 6: Branches (Create, Merge, Delete a branch)
Git Tutorial 6: Branches (Create, Merge, Delete a branch)
codebasics
49 Git Github Tutorial 10: What is Pull Request?
Git Github Tutorial 10: What is Pull Request?
codebasics
50 Git Tutorial 7: What is HEAD?
Git Tutorial 7: What is HEAD?
codebasics
51 Git Tutorial 9: Diff and Merge using meld
Git Tutorial 9: Diff and Merge using meld
codebasics
52 Difference between Multiprocessing and Multithreading
Difference between Multiprocessing and Multithreading
codebasics
53 Python Tutorial - 27. Multiprocessing Introduction
Python Tutorial - 27. Multiprocessing Introduction
codebasics
54 Python Tutorial - 28. Sharing Data Between Processes Using Array and Value
Python Tutorial - 28. Sharing Data Between Processes Using Array and Value
codebasics
55 Git Tutorial 8 - .gitignore file
Git Tutorial 8 - .gitignore file
codebasics
56 Python Tutorial - 29. Sharing Data Between Processes Using Multiprocessing Queue
Python Tutorial - 29. Sharing Data Between Processes Using Multiprocessing Queue
codebasics
57 Python Tutorial - 30. Multiprocessing Lock
Python Tutorial - 30. Multiprocessing Lock
codebasics
58 Python Tutorial - 31. Multiprocessing Pool (Map Reduce)
Python Tutorial - 31. Multiprocessing Pool (Map Reduce)
codebasics
59 What is code?
What is code?
codebasics
60 Python unit testing - pytest introduction
Python unit testing - pytest introduction
codebasics

This video teaches viewers how to use Cursor 2.0 for vibe coding on large enterprise projects, covering key features, systematic principles, and best practices for AI-assisted coding. Viewers will learn how to build a website, implement new features, and automate repetitive tasks using AI coding tools.

Key Takeaways
  1. Build a website for a gardening business using Cursor 2.0
  2. Create a new folder called website growart
  3. Open the editor view and use Whisperflow to talk to Cursor
  4. Plan a new feature or build an application from scratch
  5. Use the anthropic coding model to build a website with features like contact us page
  6. Implement structured logging in the card service using a new chat and context
  7. Review code changes made by AI and commit and push changes
💡 The key to successful AI-assisted coding is to strike a balance between using AI tools and writing code manually, and to review and understand the code generated by AI to avoid relying too heavily on automation.

Related AI Lessons

Chapters (12)

Introduction
0:52 Install Cursor
1:36 Plan, Agent Mode etc.
2:50 Build growmart website
9:46 Add contact us option
14:26 Fix a bug in large codebase
22:36 Implement a feature
24:38 Git commits for context
28:14 Cursor commands
31:05 Cursor rules
34:17 Context 7 MCP server
36:25 Humans as orchestrators
Up next
Azure Security Priorities for 2026: Identity, Governance, AI Security & Zero Trust
Valto Microsoft Specialists
Watch →