Inspiration

We've all been there — abandoned side projects, half-finished tutorials, and skills that slowly fade away. The hackathon theme of "reviving dead code" resonated with us personally. We wanted to build something that doesn't just teach coding, but resurrects the motivation and discipline behind it. That's how recode was born.

What it does

recode is an AI-powered coding challenge platform that creates personalized learning plans based on what you want to build. You tell the AI chatbot your goal (e.g., "I want to build a car racing game in C# with Unity in 10 days, 2 hours per day"), and it generates a tailored day-by-day challenge plan scaled to your available time. Each challenge comes with:

  • A progressive hint system (revealed one at a time)
  • A built-in code editor with language-specific syntax highlighting
  • AI-powered code evaluation with feedback and scoring
  • A reference solution to compare against your submission
  • A progress dashboard tracking completion, streaks, and score history

How we built it

  • Frontend: React with Tailwind CSS, CodeMirror for the code editor, and custom CSS animations
  • Backend: FastAPI (Python) with SQLAlchemy ORM and SQLite
  • AI: Google Gemini API for plan generation, code evaluation, and reference solution generation
  • Architecture: RESTful API with JWT authentication, async database operations, and structured LLM prompt engineering with JSON parsing and repair logic

Challenges we ran into

  • LLM output reliability: Gemini sometimes returned malformed JSON with unescaped characters. We had to build a custom JSON repair and retry pipeline to handle this gracefully.
  • Dynamic complexity scaling: Making the AI generate appropriately difficult challenges based on daily study hours required careful prompt engineering and iterative testing.
  • Cross-platform issues: Adapting the backend (originally designed for PostgreSQL on macOS) to run on Windows with SQLite required custom UUID handling and dependency adjustments.

Accomplishments that we're proud of

  • The AI genuinely creates meaningfully different plans based on your goals, time, and language preference — not just generic templates.
  • The hint system encourages problem-solving before revealing help, mimicking real mentorship.
  • The reference solution feature ties directly into the "reviving dead code" theme — you see how your code compares to a working solution, literally bringing code back to life.

What we learned

  • How to engineer reliable, structured outputs from LLMs through prompt design and response parsing
  • Building a full-stack application under time pressure with AI integration
  • The importance of UX decisions — small things like progressive hints and score formatting significantly improve the learning experience

What's next for recode

  • Interactive tutorial videos integrated into challenges, guiding learners step-by-step with visual explanations — moving recode toward becoming a full AI-powered education platform
  • Multi-language code execution with sandboxed environments for real-time testing
  • Collaborative challenges where users can work on projects together
  • Spaced repetition to revisit and reinforce previously learned concepts
  • Community challenge library where users can share and rate custom plans
  • GitHub integration to track real project contributions alongside challenges

Our long-term vision is to expand recode beyond coding challenges into a comprehensive learning ecosystem — combining AI mentorship, video tutorials, and hands-on projects to make programming education more accessible and engaging for everyone.

Built With

Share this project:

Updates