NoRaincheck/helixert

Learn Helix Motions. Inspired by Vim Scoops

★ 0Forks 0JavaScriptGitHub ↗Compare

Project website ↗

README

Helixert

A browser-based game that teaches Helix editor keybindings through 45 levels across 9 worlds. Helix uses noun-verb semantics — you select text first, then operate on it.

Inspired by vimMaster.

How to Play

# With Deno
deno task dev
# Then open http://localhost:3000

Or serve statically with any HTTP server (ES6 modules require a server, not file://).

What You'll Learn

World Name Focus Commands
0 First Steps Basic Movement h, j, k, l, g
1 Navigation Advanced Movement w, b, e, 0, G
2 The Stock Room Select & Delete (Noun-Verb) x, d, u
3 The Flavour Shelf Replace & Swap r, x, p
4 The Express Lane Find & Till f, F, t, T, Alt-.
5 The Order Book Insert Mode i, a, A, I, o, O
6 The Modes Tour Select Mode v, d, y, c, p
7 Spot Check Search /, ?, n, N
8 The Back Office Advanced Techniques ., u, U, m

Each world has 5 levels (45 total), and later levels combine techniques from earlier worlds. Along the way you will also meet:

  • Operator-pending changes — cw, dw and friends work Vim-style even in a noun-verb world.
  • Dot repeat — . replays your last change; combine with motions such as n or w between repeats.
  • Counts — prefix motions like 3w, 9j or 11l, and goto-line 5G.
  • Select all (%) and split-select (s) for bulk edits via search.
  • Match bracket (m) to jump between ()/{}/[].
  • Undo & redo — u and U.
  • Line bounds the Helix way — gl line end, gh line start, gs first non-blank. There are no $ or ^ motions here; this is Helix, not Vim.

Helix vs Vim

Helix uses noun-verb order (opposite of Vim):

Vim (verb-noun) Helix (noun-verb)
dd delete line x select → d delete
dw delete word w move → d delete
yy yank line x select → y yank
ciw change word v select → c change

Development

deno task dev          # run the game at http://localhost:3000
deno test              # engine unit tests
npx playwright test    # end-to-end tests

Tech Stack

  • Vanilla HTML/CSS/JavaScript (ES6 modules)
  • Tailwind CSS (CDN)
  • Deno for development server
  • No frameworks, no build step

Credits

Contributors

NoRaincheck

Issues