Course
Cursor AI has gained popularity as developers turn to its AI ecosystem for easier coding and debugging. But what if there’s a better, cheaper solution with more powerful features? Enter Windsurf.
In this tutorial, we will learn about Windsurf and its key features. We will also learn how to set up Windsurf for data science projects and discover how to get the most out of this AI-powered code editor.
If you are new to AI, we suggest that you complete the AI Fundamentals course, where you can learn about models like ChatGPT, and decode generative AI secrets to navigate the dynamic AI landscape.

Image by Author
What is Windsurf?
Windsurf is an agentic code editor, similar to Cursor AI, but far more advanced. Instead of merely autocompleting or generating code, Windsurf understands your entire project before making any suggestions. It can make changes automatically upon request, debug, and even run your code for you. If your code execution fails, Windsurf will iterate—making changes and rerunning the code until your request is successfully fulfilled.
Windsurf offers key advantages over Cursor AI, including better pricing, enhanced features, faster performance, contextual understanding, and automated bug fixing. It’s the AI assistant you need in your arsenal if you want to become a 100x developer.
You can learn about the Windsurf alternative, Cursor AI, by reading our Cursor AI: A Guide With 10 Practical Examples blog.
Windsurf Key Features
Let’s take a look at some of the standout feature that make Windsurf AI such a powerful tool.
1. Supercomplete
Windsurf’s Supercomplete goes beyond traditional autocompletion. Rather than simply predicting the next word or line, it predicts your intent. For instance, it can generate Python functions with correct docstring and functionality tailored to the context of your code and prior actions.
2. Inline AI
With Inline AI, you can ask Windsurf to make changes to specific lines of code, generate docstrings, refactor sections, and more—all without touching the rest of your codebase. This ensures only the selected portions are affected, giving you precise control over your code edits.
3. Cascade
Cascade introduces AI Flows, a revolutionary way to code with AI. Here’s how it works:
- Cascade generates or modifies code for your project.
- It then asks for your approval before running it in the terminal.
- Afterward, it prompts you with follow-up questions to ensure your goals are achieved. This iterative process makes coding with AI more interactive and effective.
4. Image upload
You can upload images—such as screenshots of your website—directly into Cascade. Windsurf can then generate HTML, CSS, and JavaScript code to mimic the design or even add similar features to your application. It’s a powerful way to bring your visual ideas to life.
5. Web search
Cascade can intuitively parse and analyze web pages and documentation in real time, providing relevant and actionable context for your code. This makes it an invaluable tool for integrating external resources or solving complex problems.
6. Local index
The Indexing Engine powers Windsurf’s codebase awareness capabilities. Unlike traditional context-aware tools, the Indexing Engine retrieves context from your entire codebase, not just the files you have recently interacted with. This significantly improves the quality of autocomplete suggestions and chat responses, making it ideal for large projects.
7. Memories
Windsurf’s Memories system allows it to persist context across conversations, ensuring continuity. There are two types of memories:
- User-generated memories (rules): These are explicitly defined by the user, such as specific APIs or communication styles.
- Automatically generated memories: These are created by Cascade based on your interactions, improving its understanding over time.
8. AI rules
Users can define their own custom rules for Cascade to follow. For example, you can specify that it should respond in a certain language, use a particular framework, or follow specific APIs. This gives you full control over how the AI interacts with your project.
9. AI terminal
With the integrated AI Terminal, you can ask Windsurf to generate code directly in the terminal or even troubleshoot and fix errors. This streamlines the development process by combining coding and debugging in one place.
You can check out our guide on Understanding AI Agents to find out how they work and explore their applications, benefits, and challenges.
Setting Up Windsurf for Data Science Projects
We will now set up Winsurf by importing the settings and extensions and creating a free account to access the Cascade.
1. Visit the official website to download and install Windsurf.

Source: Windsurf Editor by Codeium
2. Choose your setup flow, either import from VS Code or Cursor, or start fresh.

3. Sign up for a Windsurf account to receive free credits that allow you to use the AI for nearly a month at no cost.

4. Check if it has automatically installed the necessary extensions, settings, and other features.

5. Open your project in Windsurf and start asking it to make improvements using the Cascade chat box.

Getting the Most From Windsurf
After setting up the AI code editor, we will now explore the hidden features to improve your workflow.
1. Cascade Write Mode
The Cascade Write Mode functions like AutoGPT, meaning it will create multiple files for you, run scripts, test them, and debug them. All you have to do is accept the checks and wait for the script to run in the terminal. This system automates about 90% of the code generation and debugging process.

2. Cascade Chat Mode
The Chat Mode checks for context and generates the code and instructions for you on how to use it. This mode is 50% automated, meaning you will need to edit the code yourself or ask it to insert specific code snippets. Additionally, you will need to run the code manually and provide logs if something fails.

3. Cascade Legacy Mode
The Legacy Mode operates like ChatGPT; you must provide all the information in text form for it to assist you with your tasks. It is useful for non-contextual generation when you want to learn about general topics.

4. Image upload
You can upload an image of a website you like and ask it to build CSS, HTML, and JavaScript files for you. It will create all the necessary files and help you run the website locally within a few seconds.

Amazing work. Windsurf has exceeded expectations.

5. Local and external context
While writing a prompt in the chat box, you can provide extra context like web pages, code snippets, documentation of a Python package, or specific files or directories. The Cascade will extract this context and provide you with highly relevant answers.

6. Wide range of AI models
Similar to Cursor, Windsurf gives you access to a wide range of intelligent AI models, from Deepseek R1 to the latest Gemini 2.0 Flash. However, I recommend using Claude 3.5 for most code generation tasks as it is notably better at understanding long content and generating accurate codebases.

7. Inline edits
Instead of generating chat in the Cascade, you can click on the specific part of the code and press Ctrl + I to access inline edits. This allows you to edit specific parts of the code instead of the entire file, making it more intuitive to resolve issues compared to asking the Cascade.

8. Terminal chat
Click on the terminal window and press Ctrl + I to access an inline chat box that can generate code or resolve errors within the terminal. This works similarly to inline code editors.

9. Memories
Usually, Cascade creates Memories automatically to optimize response generation. However, you can also manually create rules for the AI to generate responses in a specific language or genre based on the specified format. This is similar to the system prompts that you add to ChatGPT.

There are many small features that you will love once you start using Windsurf; give it at least two weeks. It is fast, accurate, and provides robust AI integrations.
You can also check out the list of top AI coding assistants besides Windsurf in our article on The Top 12 AI Coding Assistants to Use in 2025.
Conclusion
After the initial hype around large language models and chatbots that offered little beyond novelty, we are now witnessing their real impact on the workforce. AI code assistants are transforming how developers, data scientists, and machine learning engineers build robust projects in record time. These AI-powered editors are becoming indispensable tools in the arsenal of companies aiming to boost productivity among their teams.
In this tutorial, we explored Windsurf, its powerful features, and how to set it up for a data science project. Additionally, we learned how to leverage its user-friendly tools with visual demonstrations to maximize efficiency. Windsurf is more than just an editor—it's a game-changer for building smarter, faster, and better applications for the modern world.
If you are interested in AI and don't know where to start, take the Become a Machine Learning Scientist in Python career track and become a professional machine learning engineer in 6 months.
Introduction to AI Agents

As a certified data scientist, I am passionate about leveraging cutting-edge technology to create innovative machine learning applications. With a strong background in speech recognition, data analysis and reporting, MLOps, conversational AI, and NLP, I have honed my skills in developing intelligent systems that can make a real impact. In addition to my technical expertise, I am also a skilled communicator with a talent for distilling complex concepts into clear and concise language. As a result, I have become a sought-after blogger on data science, sharing my insights and experiences with a growing community of fellow data professionals. Currently, I am focusing on content creation and editing, working with large language models to develop powerful and engaging content that can help businesses and individuals alike make the most of their data.
