TaskFlow is a simple task management API that allows teams to create, assign, and track tasks. Your task is to migrate from legacy to new, modern implementation and add new feature to TaskFlow.
Transform a poorly-written legacy codebase into modern, secure code:
Current Problems:
- 🔴 SQL injection vulnerabilities
- 🔴 No input validation
- 🔴 No type safety
- 🔴 Old-fashioned patterns (callbacks, string concatenation)
Your Goal:
- ✅ Fix all security issues
- ✅ Add type safety (TypeScript or Python type hints)
- ✅ Add input validation (Zod or Pydantic)
- ✅ Modernize code patterns (async/await)
- ✅ Test application
Add a new /tasks/overdue endpoint that:
- Returns all tasks past their due date
- Calculates how many days overdue
- Supports pagination and filtering
- Follows the modern patterns you just learned
All of tasks shoul be implemented with AI.
After completing this workshop, you'll be able to:
- Use AI tools effectively for code migration
- Implement automated quality checks
- Build features with AI assistance
- Create repeatable development workflows
- Understand modern API design patterns
- Apply security best practices
- One of these AI coding tools installed and active:
- Cursor
- Claude Code
- GitHub Copilot
- Windsurf
- Or similar
- Git
- Either Node.js (v18+) or Python (v3.9+)
During the Workshop:
- Check
TROUBLESHOOTING.mdfor common issues - Ask your AI assistant (e.g., "Why is this test failing?")
- Ask the workshop instructor
WORKSHOP_TASKS.md- Your step-by-step tasks guideCODING_STANDARDS.md- Good practices and before/after examples, used as AI rules to followTROUBLESHOOTING.md- Help when you're stuck
-
Choose your language (Python or Node.js) and remove the other one
-
Navigate to the appropriate directory and install dependencies:
Python
cd python python -m venv venv .\venv\Scripts\activate (Windows) OR source venv/bin/activate (Linux) pip install -r requirements.txt python src/app.pyNode.js
cd nodejs npm install npm start -
Verify app is working: Visit http://localhost:5000/tasks - you should see sample tasks.
-
Configure your AI tool rules: Ask you agent to create rules with specific command (
/initfor Claude Code and/Generate Cursor Rulesfor Cursor) usingCODING_STANDARDS.mdfile. In case of Github Copilot or other tool you can copy content ofCODING_STANDARDS.mdinto new file:.github/copilot-instructions.mdor appropraite for you tool.
- ✅ Installed dependencies in your chosen directory?
- ✅ Configured your AI tool rules?
- ✅ Verified the app runs?
Great! Open WORKSHOP_TASKS.md and start with Task 1, Part A.
Happy coding with AI! 🤖✨