Code Editor
FreeA full-screen editor designed for the phone first: compact tabs, a VS Code-style explorer, a command palette at the top, zero-config language servers and 24 runners that execute code on the device. Everything below is free except the premium themes: 3 themes are free, the other 19 and importing your own are Pro.
Editing engine
Built on the open-source Sora Editor. Edits are applied by minimal ranges, so a programmatic change never copies the whole document.
- •Real-time TextMate highlighting on the Sora editor engine, with a first paint that doesn't wait for the full tokenizer
- •Multi-cursor on every occurrence of a word (Ctrl+Shift+L or the menu), and it works with the on-screen keyboard, not only with a physical one
- •200 undo steps per tab, shared by Ctrl+Z and the menu
- •Structure outline and breadcrumb (no code folding yet), indent guides, sticky scroll, pinch-to-zoom and a magnifier on long-press
- •Large files open safely: from 512 KB a light mode turns off the heavy features, from 20 MB the file is read-only and from 80 MB it isn't loaded, so the app never runs out of memory
- •Line endings, BOM and .editorconfig are respected on save; the status bar shows the real encoding and line ending of each tab
- •Open any file from your phone or from another app (Android file picker), and Save As to any location
Tabs, explorer and palette
Always-visible tab strip
Compact browser-style tabs; the active one is marked with an accent underline. Unsaved changes show a dot
Preview tabs
Browsing reuses one italic tab; it becomes permanent when you edit, save or double-tap it (can be turned off)
Drag to reorder, pin, close in bulk
Long-press and drag a tab to move it; pinned tabs stay apart. Close others, to the right, saved or all
Session restore
Tabs, cursor, selection and scroll come back per project; restored tabs load only when you open them
Quick Open and command palette
At the top, VS Code style: Ctrl+P for files across the whole project, Ctrl+Shift+P for commands, @ for symbols and :N to jump to a line
Explorer
A VS Code-style side panel with open files and the project tree: create, rename and delete, Git marks and a filter. On tablets it stays docked and you resize it with your finger
Supported languages
Syntax highlighting for 29 languages via TextMate grammars, detected by extension and by file name (Dockerfile, Makefile, .gitignore…). You can override the language of any file from the status bar.
Language servers with zero configuration
Open a file and, if its language server is missing, the LSP item in the status bar offers to install it with one tap: you see what is downloaded, from where, its size and licenses. Servers are JavaScript packages from the public npm registry, pinned to an exact version and checksum inside the app, run by the Node.js bundled with PocketCode, and removable from the same sheet.
TypeScript / JavaScript
typescript-language-server + TypeScript 6
Python
Pyright
HTML · CSS · SCSS · Less · JSON
vscode-langservers-extracted
YAML · Bash
Used when your project ships the server in node_modules
Servers that are native binaries (Go, Rust, C/C++, Lua…) or need a JVM (Java, Kotlin) can't be downloaded under Google Play's rules, so the editor says so instead of failing.
Code intelligence
Go to symbol and outline
Fuzzy search of functions, classes and properties, plus a tappable structure tree
Definition, peek and references
Jump to or peek at a definition and list every reference in the project
Rename symbol
Preview separates code from strings and comments, including multi-line ones
Global search and replace
Text or regex across the project, whole word, preserve case and history
Auto-import and refactors
Suggested imports for undefined symbols; extract method or variable
Compare with…
Diff the current file against the version on disk, HEAD, another tab or the clipboard
Diagnostics and formatting
- •One Problems panel for every open tab: language-server errors, style rules and markers, deduplicated and filterable by source and severity
- •Local rules for 10 languages work even without a language server, with one-tap quick fixes
- •On-device formatting for 24 languages (C-style family, Python, XML/HTML, JSON, CSS/SCSS/Less, YAML, SQL, Markdown) with a configurable profile
Run code on the device
24 runners for 22 languages, all local — there is no remote sandbox. Some come with the app; the rest are optional packs you install once, after which they also work offline.
Included with the app
Optional packs
Run panel
Color-coded stdout/stderr, interactive stdin, live filter and jump to the failing line
Launch configurations
launch.json equivalent: command, args, env and working directory, plus run history
Debugging and testing
Node.js debugger
Real debugging over the Chrome DevTools Protocol: tap a line number to set a breakpoint, with optional conditions and logpoints that apply while the program runs; it also pauses on the first line and on uncaught exceptions. Step, call stack, variables, and Hot Reload that restarts the session when you save
Other languages
The debug panel shows a clearly labelled simulation with sample data — never presented as real
Tests
12 frameworks detected automatically (Jest, Mocha, Vitest, pytest, unittest, JUnit, Go, Cargo, PHPUnit, RSpec, Dart, Swift) with a suite tree, watch mode, coverage and snapshots
Git inside the editor
GitHub pull requests, issues and CI
List, filter and open PRs with checks and reviews, create a PR from your branch, merge and close — with the GitHub account you connected
Interactive rebase
Pick, reword, squash, fixup and drop for real, with a backup ref you can restore, abort that truly undoes, and conflict resolution
Blame, history and branches
Blame of the current line in the status bar, blame by blocks, file history, compare branches, cherry-pick and stage by hunk
Local history
Up to 50 saved versions per file on the device, even outside Git; restoring is an undoable edit
AI in the editor
- •Ghost text: inline suggestions after the cursor, accepted with one tap and fully undoable
- •Ask about the selection from the selection menu, the AI section of the menu or the palette
- •Generators: REST APIs, database schemas, code translation between languages, a vulnerability scan (OWASP Top 10 with CWE) and a performance analysis
- •Commit messages written from your staged diff
- •It uses the providers you configure in AI Chat with your own key; PocketCode charges nothing for AI
Tools and panels
Every tool opens as a sheet over the editor with the same layout and your app theme. Data is real or shown as “—”, never made up.
Snippets
Built-in and your own, plus the curated catalog of the PocketCode Marketplace, installable from the editor
Monitor
Measured metrics (the app's CPU and memory, battery, network, storage), the app's logs and alert rules you create, edit and delete
Backend generator
Templates for Express, FastAPI, Spring, Django, Gin and more, SQL migrations and OpenAPI in YAML or JSON, saved into your project
Developer utilities
11 on-device tools over the selection or clipboard: JSON, Base64, URL, UUID, hash, timestamp, color, Lorem Ipsum, regex, JWT and diff
Live collaboration
Edit the same file with people on your local network: presence, cursors and comments, with nothing leaving the network. Free
And more
Color picker, Pomodoro, scratchpad, TODO panel and a shortcut reference generated from the real commands
Previews
Markdown
Local render with tables, lists and highlighted code blocks
Images
PNG, JPG, GIF, WebP, BMP and SVG with zoom and pan
JSON / YAML · CSV
Collapsible tree, and a table with automatic delimiter detection
HTML
Live preview of web projects in the built-in browser
Made for touch
- •A symbol bar above the keyboard with a profile per language that you can customize
- •Command key: tap for the palette, drag to move the cursor precisely, hold and drag to select
- •Full Emmet for HTML and CSS (div.cls#id, ul>li*3, m10, df…)
- •Per-file language: tap the language in the status bar to change how a file is highlighted and which language server it uses
- •Zen mode with real full screen, and landscape that hides the top bar when the keyboard is open
- •Accessibility: F6 to move between regions, TalkBack labels, 48 dp touch targets and a chrome that grows with large system fonts
- •First-use hints that show once and can be reset in Settings
- •Works offline: editing, running, Git and the installed language servers need no connection
Pro
The 19 premium built-in themes, plus importing .tmTheme or VS Code JSON themes (up to 50) and editing them with a contrast check; 3 themes are free. Everything else on this page — tabs, LSP, runners, Git, local history, collaboration and AI with your own key — is free.