Thank you for wanting to make coding education better! Here's how to help.
The best contributions are often better ways to explain things. If you have a great analogy for a programming concept, open a PR editing the relevant skill file in skills/.
A nurse writes a medical analogy for error handling β now every nurse learning to code gets it. A marketer explains APIs using campaign brief terminology β now every marketer has that "aha" moment. Your domain knowledge makes CodeSensei better for everyone.
Add questions to data/quiz-bank.json. Follow this format:
{
"belt": "white",
"question": "Your question in plain language",
"options": ["Wrong but plausible", "Correct answer", "Another plausible wrong answer"],
"correct": 1,
"explanation": "Why the answer is correct, teaching something even if they got it right",
"hint": "One-line hint connecting to something they already know"
}Quiz quality rules:
- NEVER test syntax memorization β vibecoders don't need to memorize syntax
- ALWAYS test concepts, understanding, and reasoning
- Wrong answers should be plausible, not obviously wrong
- Explanations should teach something new even if the user knew the answer
We want CodeSensei to teach in every language. To add a translation:
- Create a directory:
skills/[language-code]/ - Translate the SKILL.md files
- Add translated quizzes to the quiz bank
Priority languages: Spanish (es), Portuguese (pt), French (fr), Japanese (ja), Korean (ko)
git clone https://github.com/DojoCodingLabs/code-sensei.git
cd code-senseiSupported development environments:
- macOS
- Linux
- Windows via WSL
# Open Claude Code
claude
# Add as local marketplace
/plugin marketplace add .
# Install
/plugin install code-sensei
# Verify local setup
/code-sensei:doctor
# Test key commands
/code-sensei:progress
/code-sensei:explain
/code-sensei:quiz
/code-sensei:exportshellcheck -S error scripts/*.sh scripts/lib/*.sh
bash tests/test-hooks.sh- New skill modules β Python, Rust, mobile dev, Web3
- Smarter concept detection in hook scripts
- Profile sync β optional cloud sync for cross-device progress
- Leaderboard β community leaderboard (opt-in)
- GitHub badge β show your belt on your README
- Keep it focused β one feature or fix per PR
- Run the validation commands above before submitting
- Test with Claude Code locally before submitting
- Update
quiz-bank.jsonif adding new concepts - Follow the existing tone: encouraging, simple, analogy-first
Be kind. We're building a tool that helps people learn. Everyone is welcome regardless of skill level, background, or experience.
Open an issue or join us on Discord.
CodeSensei by Dojo Coding β learn to code while you vibecode. Free. Open source.