macOSv0.19.4
Practice coding.
Keep everything local.
Solve LeetCode-style problems in JavaScript, TypeScript or Python, then build engineering projects scored on concurrency, latency and code quality. Everything runs on your machine.
Free & open sourcemacOSWindowsLinux
28 problems
1 function twoSum(nums: number[], target: number) {
2 const map = new Map<number, number>();
3
4 for (let i = 0; i < nums.length; i++) {
5 const complement = target - nums[i];
6 if (map.has(complement)) {
7 return [map.get(complement)!, i];
8 }
9 map.set(nums[i], i);
10 }
11 return [];
12 }
Test case 1✓
Test case 2✓
Test case 3✓
nums = [2,7,11,15], target = 9
Output [0,1] PassedHow a practice session works.
Two ways to practice: algorithm problems, or engineering projects.
- 01
Pick a problem or a project
LeetCode-style problems by topic and difficulty, or a multi-stage engineering project.
- 02
Write code in a real editor
The Monaco editor, with a full file tree on engineering projects.
- 03
Run the tests locally
WebAssembly runs every test case on your machine.
- 04
See how it scored
Test results for problems; concurrency, latency and code quality for projects.
// your approach stays here
return result;
}
Keep practicing.
Less More
Engineering projects,
built stage by stage.
Each project is a multi-file workspace you clear one stage at a time. Hidden tests check that it works, measured gates check how it behaves — peak concurrency, latency, retries, duplicate calls — and static analysis reviews the code itself.
- Resilient fetch pipelineBounded concurrency, backoff, single-flight caching, cancellation
- Event-driven order pipelineEvent bus, onion middleware, idempotency, dead letter queue
- Resilient API gatewayToken bucket, circuit breaker, timeout budgets
const results = new Array(items.length);
const size = Math.min(limit, items.length);
// one pull-based worker per slot
await Promise.all(runners);
return results;
}
- Peak concurrency at most 44 / 4
- Never throttled by upstream0 / 0
- 12 requests within 300ms300ms / 300ms
From a topic to a complete problem.
Context-aware hints while you work.
Several approaches, with their complexity trade-offs.
AI when you want it.
Focus when you don’t.
Generate a problem, ask for a hint, or compare solutions. Connect DeepSeek, OpenAI, Claude, Qwen, any OpenAI-compatible endpoint local or remote, or run it all on your own machine with Ollama or LM Studio — or skip AI entirely.
Set up an AI provider →Two Sum
Return the indices of two numbers that add up to the target.
const complement = target - nums[i];Give me a hint without revealing the full answer.
Think about what information you need to remember as you scan the array once.
Three languages.
One local runtime.
JavaScriptNative browser execution
TypeScriptReal-time transpilation
PythonCPython through Pyodide
No account. No telemetry. Your attempts stay on your machine.
Download AlgoLocal.
Free and open source, for macOS, Windows and Linux.
Windowsv0.19.4
Linuxv0.19.4
- Open AlgoLocal from Applications and click Done on the warning.
- Go to System Settings → Privacy & Security, scroll to Security, and click Open Anyway.