Learn By Doing
Start coding immediately, from small code snippets to full projects
██╗ ███████╗ █████╗ ██████╗ ███╗ ██╗
██║ ██╔════╝██╔══██╗██╔══██╗████╗ ██║
██║ █████╗ ███████║██████╔╝██╔██╗ ██║
██║ ██╔══╝ ██╔══██║██╔══██╗██║╚██╗██║
███████╗███████╗██║ ██║██║ ██║██║ ╚████║
╚══════╝╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝
██████╗ ██████╗ ██████╗ ██████╗ ██████╗ █████╗ ███╗ ███╗███╗ ███╗██╗███╗ ██╗ ██████╗
██╔══██╗██╔══██╗██╔═══██╗██╔════╝ ██╔══██╗██╔══██╗████╗ ████║████╗ ████║██║████╗ ██║██╔════╝
██████╔╝██████╔╝██║ ██║██║ ███╗██████╔╝███████║██╔████╔██║██╔████╔██║██║██╔██╗ ██║██║ ███╗
██╔═══╝ ██╔══██╗██║ ██║██║ ██║██╔══██╗██╔══██║██║╚██╔╝██║██║╚██╔╝██║██║██║╚██╗██║██║ ██║
██║ ██║ ██║╚██████╔╝╚██████╔╝██║ ██║██║ ██║██║ ╚═╝ ██║██║ ╚═╝ ██║██║██║ ╚████║╚██████╔╝
╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚═════╝
// Learn programming
right in your terminal
// Practice First / AI Assistance
/ Fully Offline
[use ↑↓ to navigate, enter to run tests]
→ click to focus, then use keyboard
Learn Programming is a CLI application built in Rust that simplifies how you learn to code. Unlike traditional browser-based platforms, learnp is IDE agnostic, allowing you to use code editor of your choice, bringing you close to real programmer environments.
Feeling stuck? With Ollama installed, you can get AI-powered hints and explanations directly in terminal.
Your progress is tracked in a local SQLite database, so you can pick up exactly where you left off.
[Why it's cool]
Start coding immediately, from small code snippets to full projects
Each exercise includes automated tests to validate your solutions right away
Local SQLite database saves your learning journey
Leverage AI assistance directly within the app to help you learn faster
Available training modules...
Git helps manage code. Download from git-scm.com and follow the installation wizard
Download a local model for AI hints. Mistral is recommended for quality and low resource usage.
ollama pull mistralollama run mistral # test it (Ctrl+C to exit)Download and install the learnp CLI for your operating system
Create a folder for courses and download the JavaScript course from GitHub
cd ~/coursesgit clone https://github.com/artur-kot/learn-programming-javascript.gitMove into the course folder using the 'cd' (change directory) command
cd ~/courses/learn-programming-javascriptLaunch the learning interface by typing 'learnp' and pressing Enter
learnpGet a code editor like VS Code to write and edit your code comfortably
[frequently asked questions...]