AI-Assisted Development: How We Built SET Game Together
A TLDR Guide to Human-AI Collaboration with Cursor Rules
๐ฏ The Big Idea (30 Seconds)
Traditional coding: You write everything yourself, manually test, fix bugs later.
Our method:
- โ Write 14 cursor rules files that teach AI your project context
- โ AI writes tests FIRST (TDD mandatory)
- โ AI implements features following your rules
- โ You review & guide, AI executes
Result: 4-5ร faster development, 94% test coverage, consistent code quality.
๐ The Cursor Rules Method
What Are Cursor Rules?
Project-specific instruction files that teach Cursor AI about your:
- Architecture decisions
- Coding standards
- Testing requirements
- Domain knowledge
- Workflow expectations
Our 14 Rules Files
.cursorrules-*
โโโ ๐งช Methodology
โ โโโ tdd # Test-first mandatory
โ โโโ testing # Coverage targets
โ โโโ local-execution # How to run/test
โ
โโโ ๐๏ธ Architecture
โ โโโ architecture # System design
โ โโโ frontend # React patterns
โ โโโ backend # Node.js patterns
โ โโโ realtime # WebSocket sync
โ โโโ design-system # UI standards
โ
โโโ ๐ฎ Domain
โ โโโ game-logic # SET rules
โ โโโ mobile-ui # Mobile-first
โ โโโ product # Requirements
โ
โโโ ๐ Infrastructure
โโโ security # Auth patterns
โโโ deployment # CI/CD
โโโ pwa # Progressive web app
Example Rule: TDD
# .cursorrules-tdd
## Core Directive
All business logic MUST use Test-Driven Development.
## Workflow for Cursor AI
1. Write failing test first
2. Confirm it fails (Red)
3. Write minimal implementation
4. Confirm it passes (Green)
5. Refactor if needed
Why this works: AI follows the same patterns every time, no shortcuts.
๐ The TDD Workflow
Traditional Way (Without AI)
Developer writes test โ Developer implements โ Developer refactors
โฑ๏ธ Time: 30-60 minutes per feature
Our Way (With AI + Cursor Rules)
Developer: "Add hint button that checks if SET exists"
โ
AI: Writes test first
โ
Developer: Reviews test
โ
AI: Implements feature
โ
Test passes โ
โฑ๏ธ Time: 5-15 minutes per feature
Real Example
Developer Request:
"Refill cards TO 12 after SET found, not BY 3"
AI Response (follows .cursorrules-tdd):
// Step 1: AI writes test FIRST
it('refills TO 12 cards after SET found', () => {
room.board.length = 15; // Start with 15
gameService.submitSet(gameCode, playerId, validSet);
expect(room.board.length).toBe(12); // Should be 12, not 18
});
// Step 2: Test fails โ (good!)
// Step 3: AI implements
submitSet(gameCode, playerId, cardIds) {
room.board = room.board.filter(c => !cardIds.includes(c.id));
// Refill TO 12, not BY 3
while (room.board.length < 12 && room.deck.length > 0) {
room.board.push(room.deck.shift());
}
}
// Step 4: Test passes โ
๐ฌ How We Communicate
โ Bad Prompts
"Add authentication"
"Make it mobile responsive"
"Fix the bug"
โ Good Prompts
"Implement session auth following .cursorrules-security:
- JWT in HTTP-only cookies
- No passwords, just name + avatar
Write tests first."
"The card grid overflows on iPhone SE (375px).
Use .cursorrules-mobile-ui responsive rules."
"Players disconnect on iOS tab switch.
Check .cursorrules-realtime for reconnection pattern."
Key: Reference specific cursor rules files so AI knows which context to use.
๐ Real Results
Speed Comparison
| Feature | Traditional | With AI | Speedup |
|---|---|---|---|
| SET validation logic | 4 hours | 45 min | 5.3ร |
| WebSocket reconnect | 6 hours | 1.5 hours | 4ร |
| Mobile responsive grid | 8 hours | 2 hours | 4ร |
| Complete feature | 2-3 days | 4-6 hours | 4-6ร |
Average: 4-5ร faster development
Quality Metrics
Before AI:
- 40-60% test coverage
- 15-20 bugs/month
- 3-4 review iterations
With AI + Cursor Rules:
- 94% test coverage
- 3-5 bugs/month
- 1-2 review iterations
- 100% style consistency
๐ฏ The 3 Key Principles
1. AI Never Writes Code Without Tests
Enforced by .cursorrules-tdd:
- Test first = no exceptions
- Red-Green-Refactor cycle
- AI can't skip this
Result: Caught bugs before they existed
2. Mobile-First Always
Enforced by .cursorrules-mobile-ui:
- Design for 375px width (iPhone SE)
- No scrolling on game board
- 44ร44px touch targets minimum
Result: AI never suggested desktop-first solutions
3. Rules Are Project Memory
Problem: New AI chats "forget" previous decisions
Solution: Cursor rules = permanent memory
- Architecture decisions documented
- Patterns automatically followed
- Zero "why did we do this?" moments
๐ Real Development Example
Feature: "Add Card" Button
Day 1 - Traditional Dev (4-6 hours):
- Google how to implement
- Write implementation
- Manually test
- Find bugs
- Write tests (maybe)
- Fix bugs
- Code review reveals issues
- Fix and repeat
Same Day - With AI (45 minutes):
-
Developer: "Add button to add 1 card. Block if 15+ cards AND set exists. Follow .cursorrules-game-logic"
-
AI: Writes test first โ
it('blocks card addition when 15+ cards and SET exists') it('allows addition when 15+ cards but NO set') -
AI: Implements
if (room.board.length >= 15 && hasValidSet(room.board)) { return { success: false, message: "SET exists!" }; } -
Tests pass โ
-
AI: Adds WebSocket event, frontend button, updates docs
-
Done ๐
๐ Lessons Learned
โ What Worked Amazingly
- Front-loading rules (2-3 days) โ Paid off on every feature
- TDD discipline โ AI caught bugs before they existed
- Mobile-first constraints โ Zero responsive issues
- Separation of concerns โ 14 specialized files > 1 huge file
- Domain rules โ AI understood SET game logic perfectly
โ ๏ธ What We'd Improve
- Version control rules โ Track rule changes over time
- Visual examples โ Some UI concepts need screenshots
- Performance budgets โ Add bundle size limits to rules
- Test rules earlier โ Some rules initially contradicted
๐ Challenges & Solutions
Challenge: AI invented APIs that didn't exist
Solution: Added "Available Libraries" section with exact versions
Challenge: AI over-engineered simple features
Solution: Added "MVP Constraints" and "Out of Scope" sections
Challenge: Long chats lost context
Solution: Break features into smaller chunks, reference rules explicitly
๐ก How to Adopt This
For Your Next Project
Week 1: Create cursor rules (before writing code!)
.cursorrules-architecture # System design
.cursorrules-tdd # Testing workflow
.cursorrules-style # Coding standards
Week 2+: Develop with AI
- Describe feature in natural language
- AI writes test first
- You review
- AI implements
- Repeat
ROI: ~1,400% in first month
- 2-3 days creating rules = $2,400
- Saves 2+ months development = $32,000+
Starter Template
# .cursorrules-tdd
## Core Rules
- [ ] All logic requires tests first
- [ ] Red-Green-Refactor cycle mandatory
- [ ] No shortcuts allowed
## Workflow
1. Describe feature
2. AI writes failing test
3. Confirm test fails
4. AI implements
5. Confirm test passes
๐ฏ Key Takeaways
For Solo Developers
๐ 4-5ร faster development
๐งช Much higher test coverage
๐ Built-in documentation
๐ฏ Consistent code quality
For Teams
๐ Same patterns across all devs
๐ Instant onboarding (read rules + ask AI)
๐ Automatic code review (AI enforces rules)
๐ฌ Living docs (rules evolve with code)
The Future
๐ค AI implements, human architects
๐ Tests written automatically
๐จ Focus on product, not syntax
โก Ship faster without sacrificing quality
๐ By The Numbers
Our SET Game Project:
- โฑ๏ธ 1 month to MVP (vs. 3-4 typical)
- ๐ 12,000 lines of code
- ๐งช 94% test coverage
- ๐ 3-5 bugs/month (vs. 18-25)
- ๐ 14 cursor rules files
- โก 4-5ร faster than traditional
Investment:
- 3 days writing rules
- $20/month Cursor Pro
Returns:
- Saved 2+ months
- Higher quality code
- Easier maintenance
- Better team velocity
๐ฌ Summary: The Method
1. ๐ Write cursor rules FIRST
โ
2. ๐งช Enforce TDD via rules
โ
3. ๐ค Use AI as pair programmer
โ
4. ๐จโ๐ป You architect, AI implements
โ
5. โ
Review & iterate
โ
6. ๐ Ship faster & better
The Secret Sauce
Structure + AI = Superpowers
Invest in rules upfront, reap rewards forever.
๐ Questions?
Want to learn more?
- Full presentation:
PRESENTATION.md - All cursor rules:
/docs/.cursorrules-* - Code: [GitHub repo]
Topics we can discuss:
- How to write cursor rules for your domain?
- Handling AI limitations?
- Cost-benefit for your use case?
- TDD workflow in detail?
๐ Final Thought
The future of development isn't:
- โ AI replacing developers
- โ Developers working alone
It's:
- โ Structured Human-AI collaboration
- โ Humans guide, AI executes
- โ Quality goes up, time goes down
You can do this too. Start with 3 cursor rules files and grow from there.
Built with ๐ง human creativity + ๐ค AI implementation + ๐ structured methodology
Thank you! ๐
AI-Assisted Development: How We Built SET Game Together
By Itay Shmool
AI-Assisted Development: How We Built SET Game Together
- 89