You just downloaded Cursor. Now what? This guide walks you through everything you need to know โ€” whether you've never written a line of code or you're a seasoned dev looking to 10x your workflow.

๐ŸŸข Part 1: The Beginner's Guide

You're non-technical. You just downloaded Cursor. Here's exactly what to do.


What Is Cursor?

Cursor is a code editor powered by AI. Think of it like a Google Doc โ€” but instead of writing essays, you're building apps, websites, and automations.

The magic? You don't need to know how to code. You describe what you want in plain English, and Cursor writes the code for you.


The 5 Things You Need to Know

1. Chat Is Your Starting Point

What it does: You type a question or request in plain English, and Cursor writes or fixes code for you.

How to use it:

  • Open Cursor and press Cmd+L (Mac) or Ctrl+L (Windows)
  • The chat panel opens on the right side
  • Type what you want like you're texting a friend

Example prompts to try:

  • "Create a simple landing page with a headline, description, and email signup form"
  • "Fix the error in this file"
  • "Explain what this code does in simple terms"

Think of Chat as your quick-fix assistant. Small changes, explanations, and one-file edits.


2. Composer Is for Big Builds

What it does: Composer edits multiple files at once. This is where you build real features.

How to use it:

  • Press Cmd+I (Mac) or Ctrl+I (Windows)
  • Describe the full feature you want

Example prompts:

  • "Add a login page with authentication, a dashboard, and a sidebar navigation"
  • "Build a contact form that saves submissions to a database"
  • "Create a blog section with individual post pages"

The rule of thumb:

  • Chat = quick fixes, single files
  • Composer = features, multi-file builds

One prompt. Multiple files. Done.


3. Use @ to Give Cursor Context

What it does: The @ symbol lets you point Cursor to specific files, folders, or your entire project so it gives smarter answers.

How to use it (in Chat or Composer):

Why this matters: The more context you give Cursor, the better its answers. Instead of guessing, it knows exactly what you're working with.

Example:

  • "@index.html make the header sticky and add a dark mode toggle"
  • "@codebase find where the user login is handled and add password reset"

4. Cmd+K Is Inline Editing

What it does: Highlight any code, press Cmd+K (Mac) or Ctrl+K (Windows), and tell Cursor what to change โ€” right where you are.

How to use it:

  1. Highlight a section of code
  2. Press Cmd+K
  3. Type your instruction
  4. Hit Enter

Example instructions:

  • "Make this responsive"
  • "Add error handling"
  • "Convert to TypeScript"
  • "Add comments explaining each line"

No copy-pasting into chat. No switching tabs. Edit right where you are.


5. Tab Is Your Best Friend

What it does: Cursor predicts what you're about to type and shows a grey suggestion. Hit Tab to accept it.

What it autocompletes:

  • Single lines of code
  • Entire functions
  • Full code blocks
  • Repetitive patterns

The habit to build: Start typing, pause for a second, and look for the grey text. If it looks right, hit Tab. That's it.

Stop typing what Cursor already knows.


Your First 10 Minutes in Cursor

Here's exactly what to do after you open Cursor for the first time:

Congrats โ€” you just built something with AI. ๐ŸŽ‰


๐Ÿ”ต Part 2: Going Deeper (For the Technical Crowd)

Already comfortable with the basics? Here's how to get significantly more out of Cursor.


The .cursorrules File

What it is: A file you create in your project root called .cursorrules that tells Cursor your tech stack, coding style, and project rules. Cursor reads this before every single response.

How to set it up:

  1. Create a file called .cursorrules in your project root directory
  2. Add your project context in plain English

Example .cursorrules file:

# Project Rules

## Tech Stack
- Frontend: Next.js 14 with App Router
- Styling: Tailwind CSS
- Backend: Supabase (PostgreSQL)
- Auth: Supabase Auth
- Deployment: Vercel

## Coding Style
- Use TypeScript for all files
- Use functional components with hooks
- Prefer server components where possible
- Use Zod for all form validation
- Always add error handling to async functions

## Project Structure
- /app โ†’ routes and pages
- /components โ†’ reusable UI components
- /lib โ†’ utility functions and API helpers
- /types โ†’ TypeScript type definitions

## Rules
- Never use "any" type in TypeScript
- Always add loading and error states to data fetching
- Write concise comments only where logic is non-obvious
- Prefer composition over inheritance

One file. Every prompt gets better.


Advanced .cursor/rules Directory

For larger projects, you can create a .cursor/rules/ directory with multiple rule files scoped to different parts of your stack:

my-project/
โ”œโ”€โ”€ .cursor/
โ”‚   โ””โ”€โ”€ rules/
โ”‚       โ”œโ”€โ”€ typescript.mdc
โ”‚       โ”œโ”€โ”€ ui-shadcn.mdc
โ”‚       โ””โ”€โ”€ db.mdc
โ”œโ”€โ”€ .cursorrules
โ””โ”€โ”€ src/

This lets you give Cursor context-specific rules depending on what part of the codebase it's working in.


Composer 1.5: Agentic Mode