The arena for programming + AI skills.

[Code, Compete, Create]
Meet with the team
Exit BattleLIVE BATTLE

Battle Lobby

Finding you a worthy opponent...

Searching for opponent

Looking for someone near your skill level.

Problem difficulty is set from your ELO and your opponent's when a match is found. No extra setup needed.

Elapsed
0:00
ELO Band
625-675
Est. time remaining 00:20
Scanning for opponents in your skill range...

Product evidence

Rooted in real practice, classroom, and assessment work.

The strongest proof today is the product itself: a problem bank, live battle surface, classroom flow, assessment workspace, and the team roots behind them.

10,000+

Problems

curated CS practice items across the arena

17

Languages

from Python and JavaScript to C++, Rust, and Go

Live

Practice loops

ranked battles, classroom sessions, and replayable work

AI-era

Skill signal

built around planning, verification, and tool fluency

Product lanes

More ways to build real skill.

Guided practice supports the core Compete loop. Classroom is concrete today. Assessments is in progress. AFK and Vibecoding Courses are labeled as early concepts, with enough shape to show where the product family is going.

Guided practice

Practice with hints when you do not want a duel.

Rena can coach the two-sum pattern, edge cases, and testing discipline while the live battle IDE stays the first impression.

Back to Practice
Code
Choose language
Run testsSubmit solution
1# Read input from stdin
2# Example: n = int(input())
3# Example: arr = list(map(int, input().split()))
Ln 1, Col 24Spaces: 4
Test Result0/3 Passed (0%)
Testcase
Input
1
11
80011223388
Your Output
Pending...
Expected
YES
All 3 public test cases shown

Classroom

Live CS teaching without the chaos.

Host algorithm quizzes, watch students answer in real time, and debrief the exact concepts that need attention.

1197sQ4/5 1 Player
Exit BattleClassroom Code
Code
Choose language
Run testsSubmit solution
1# Pair Sum Exists
2import sys
3
4lines = sys.stdin.read().split("\n")
5nums = list(map(int, lines[0].split()))
6target = int(lines[1])
7
8seen = set()
9for x in nums:
10 if target - x in seen:
11 print("true")
12 break
13 seen.add(x)
14else:
15 print("false")
Ln 4, Col 37Spaces: 4
Test Result0/15 Passed (0%)
Testcase
Input
2 7 11 15
9
Your Output
Pending...
Expected
true
Custom testsLocal only Saved in the preview, not executed by the demo judge.

Use Add to open editable input fields for edge cases before a full submit.

Classroom coding

Q4/5

First Unique Number

0

Passed all

0

Submitted

0/0

Avg tests

Teacher controls

Hints only

No full code

Coding questions

Assessments

In progress

Hiring signal for AI-era engineering.

In-progress recruiter workflows for measuring how candidates plan, prompt, verify, and ship with AI in the loop.

Recruiter reportlooping preview

Recommendation

Advance

86%

Strong verifier. Highlight: ai tool usage.

Reviewer summary

The score explains the path: prompt quality, edit ownership, tests, and final correctness.

AI tool usage

Rena + Claude

balanced model choice

Prompt quality

high clarity

constraints + examples

Test discipline

6 runs

verified after edits

Iteration pace

3 cycles

42 min total

AFK

Concept

Away From Keyboard building for owned projects.

Early concept for turning ideas into repos, exports, benchmarks, and real code you can take anywhere.

AFK conceptearly access

Rena AFK

chat to app workspace

You

Build a tiny web app where students track daily algorithm practice and see streaks.

Generating first pass

Scaffold Next.js dashboard
Add local progress storage
Generate streak card and goal list
Run smoke check
arena-practice-app4 files
app/page.tsx+84
app/api/progress/route.ts+31
components/GoalCard.tsx+42
lib/storage.ts+18
npm run check
lint passed
preview ready
app/page.tsx
1export default function PracticeTracker() {
2 const goals = ["arrays", "graphs", "dp"];
3
4 return <main className="grid gap-4">
5 <StreakCard days={12} />
6 <GoalList goals={goals} />
7 <RunSummary accepted={8} />
8 </main>;
9}
Browser previewlive

Practice Tracker

June sprint

12 day streak

8

accepted

3

topics

42m

focus

Arrays5/6
Graphs2/4
Dynamic programming1/3
Next suggested build: add reminders and weekly review.

Vibecoding Courses

Concept

Learn to code with words, not syntax.

A future course where learners prompt Rena in plain English, watch the assistant translate intent into steps, and discover real CS concepts.

Vibecoding Courses001 to 050
Task 001live UI
1

pick

2

move

3

drop

first green ball, then nearest green box

Sequencing

Move the right objects in the right order.

Task 002live UI
->
only move the matching color

Precision

Say exactly what should happen next.

Task 003live UI
filter green
nearest box
repeat
repeat until no green objects remain

Optimization

Find the shortest repeatable plan.

Ask Rena

plain English to CS concepts

Learner

Move every green thing into the nearest matching box.

Rena

Great. That command has a loop, a condition, and a nearest-match rule hiding inside it.

Find green objects
Choose nearest box
Repeat until done
Verify every match
for each object -> if green -> nearest box -> move -> check

Stay close to the frontier.

Non-product surfaces for the ideas, docs, and evidence behind how AlgoArena is being built.

Research and field notes

CS education, AI-era assessments, keystroke/process-signal ideas, and product notes from building in public.

Read field notes
Product notesMay to Jun

CS classroom study

How live coding challenges change practice, debrief, and participation.

Keystroke signals

Process traces for integrity, effort, and AI-era assessment evidence.

LLM build notes

What the prompting, review, and shipping process taught the team.

Platform documentation

A calmer reference surface for product lanes, classroom setup, assessment flows, and how the platform fits together.

Open docs
Docs index
Compete
Classroom
Assessments
Vibecoding Courses

Classroom setup

Host a live algorithm session

Create quiz
Share room code
Review debrief

Benchmarks and evidence

The public direction for scoring, judging quality, and evidence that explains more than a pass/fail result.

Explore benchmarks
Evidence modelscoring notes

Tests

3/3

Process

clear

AI use

reviewed

Reviewer summary

Score should explain the path: prompt quality, edit ownership, test discipline, and final correctness.

Replay attached
Rubric notes

Product updates

Stay in the loop

Get updates as Assessments, AFK, and Vibecoding Courses move from concept to real product.

{A}

AlgoArena Newsletter

Live updates on battles & training

We respect your privacy. Unsubscribe at any time.

FAQ

{A}

Ask another model

Not sure if AlgoArena is right for you?

Open a prefilled prompt in the AI tool you already use and pressure-test the fit from the outside.

Ready to jump in?

Start with the concrete practice loop today, or explore the product lanes shaping where AlgoArena goes next.