ReCode:讓 LeetCode 練習成果不再白費
ReCode — Never Let Your LeetCode Progress Go to Waste ♻️
ReCode 是一套 DSA 複習系統,將已完成的 LeetCode 題目安排成可重複的複習流程,預設於第 1、3、7 和 14 日重温。用戶可記錄回憶難度、按主題追蹤進度,並匯入 CSV 或 Excel 題目資料;Gemma 配合 Ollama 在本機推理,提供 AI 輔助回憶提示。
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady
What I Built
Solving a coding problem once doesn't mean you'll remember how to solve it a month later.
As a student preparing for software engineering internships, I've solved many LeetCode problems, but I realized that solving problems is only half the journey — revisiting them at the right time is what helps you retain the patterns.
That's why I came up with ReCode, a personal DSA revision system that helps developers turn their solved problems into a structured, repeatable revision routine.
Instead of manually tracking problems in spreadsheets or wondering what to revise next, ReCode is designed to help you:
📅 Schedule revisions: Revisit problems at configurable intervals, with a default schedule of Day 1, 3, 7, and 14.
🧠 Revise smarter: Record whether a problem felt easy, was a struggle, or had been forgotten, helping identify areas that need more practice.
📊 Track progress: Organize problems by topic and monitor your revision progress.
📥 Import existing progress: Bring in your previously solved problems through CSV or Excel files.
🔗 Return to the problem: Open the original LeetCode problem directly from your revision list.
🤖 Get AI-assisted revision support: Use an open-weight AI model to generate recall prompts and assist with revision.
The goal is simple: spend less time organizing your preparation and more time actually improving your problem-solving skills.
Demo
Code
ReCode
A voxel-inspired DSA study world for saving problems, revisiting them on a real schedule, and learning from your own recall.
ReCode turns spaced repetition into a small adventure: your saved problems become inventory, reviews become quests, and progress is earned from completed study—not simulated gameplay. Its forest-world artwork and block-built interface are original CSS illustrations; ReCode is not affiliated with Minecraft or Mojang.
Screenshots show the app running locally with its development sample problems. They are genuine captures of the working UI, not a static mockup.
At a glance
- Study dashboard: real problem, due/overdue, topic, difficulty, weekly activity, and player-profile data.
- Problem Bank: search and sort saved problems, filter by topic, difficulty, and revision state, inspect a selected problem, and open its LeetCode page.
- Revision quests: rate recall as Easy, Struggled, or Forgot; completion updates the schedule, review history, XP, streak, and milestones.
- Solve workflow: record…
How I Built It
I wanted ReCode to be more than a basic AI wrapper. Its core value comes from a reliable revision workflow, with AI serving as an additional layer of assistance.
The planned technology stack includes:
Frontend: React and TypeScript for a responsive, interactive web experience.
Backend: FastAPI to handle application logic and API requests.
Database: SQLite to persist problem details, revision schedules, and progress.
Open-source AI: Gemma, run locally using Ollama, for AI-assisted recall and revision support.
One important design decision is that the revision schedule is deterministic. The application can calculate when a problem is due without asking an AI model to decide every revision date. This keeps the core workflow predictable, while AI is used where it adds value: helping users recall concepts and revisit their reasoning.
The aim is to build something that is useful as a personal tool today and has a clear path toward becoming a production-ready application.
Why Does Open Innovation Matter?
For a project like ReCode, open innovation isn't just about using a different model. It's about having more control over how the technology works.
Using an open-weight model such as Gemma through local inference makes experimentation with AI-assisted revision possible without making a proprietary AI API the foundation of the entire application.
It also opens up opportunities to:
Experiment with prompts and model behavior.
Run inference locally rather than depending entirely on an external AI service.
Keep the core scheduling and tracking functionality independent of any particular model.
Adapt the project as open-source models and tools improve.
I want ReCode to demonstrate that useful AI applications don't always need to depend on closed APIs. Developers can combine open models with conventional software engineering to build tools that solve real problems.
My Agent Session
The Lazy Payoff
Imagine having hundreds of solved problems but no reliable way to decide which ones deserve another look.
Without a revision system, you have to remember problem names, search through old submissions, maintain a spreadsheet, and decide what to practise each day.
ReCode aims to reduce that overhead by bringing revision scheduling, progress tracking, and AI-assisted recall into one place.
The payoff isn't solving fewer problems. It's getting more long-term value out of the problems you've already solved.
I built this idea around a problem I've experienced in my own DSA preparation, and I want to make consistent revision easier for other students facing the same challenge.
Prize Categories
best use of gemma and githubcopilot.
ReCode is my attempt to make DSA preparation a little more systematic: solve a problem, revisit it at the right time, and build knowledge that actually sticks.
Because progress isn't just about how many problems you solve. It's about how many you can still solve when it matters.
Hacktoberfest #OpenSource #AI #Gemma #DSA #WebDevelopment
來源:DEV Community · dev.to
