⌨ DotTypeA distraction-free typing practice extension for Visual Studio Code. Open any What It DoesDotType turns a plain Everything is stored locally in the Features
Getting Started1. Install the extensionInstall from the VS Code Marketplace, or clone this repo and press 2. Create a
|
| Action | Shortcut |
|---|---|
| Show stats | Ctrl+Alt+T |
DotType ships a custom icon theme so .type files show the DotType icon in the Explorer sidebar.
To activate it:
- Open the Command Palette —
Ctrl+Shift+P - Select DotType Icons
To revert, select any other icon theme from the same list.
Project Structure
dottype/
├── extension.js # Extension entry point & custom editor provider
├── package.json # Manifest — commands, keybindings, icon theme
└── icons/
├── dottype.svg # File icon (used in Explorer)
└── dottype-icon-theme.json # Maps *.type → dottype.svg
How It Works
DotType registers a Custom Text Editor for *.type files. When VS Code opens one of these files, the extension renders a full-page webview instead of the default text editor.
The webview handles all typing logic in plain JavaScript — no frameworks. When the session ends or the paste modal is submitted, the webview sends a message back to the extension host, which writes the content to the file using WorkspaceEdit and saves it.
The stats panel (Ctrl+Alt+T) is wired to a VS Code command that posts a message to the active webview, keeping the extension host and the webview in sync.
Development
Prerequisites
- Node.js 18 or later
- VS Code 1.74 or later
Run locally
git clone https://github.com/hassaanhaider88/DotType
cd DotType
npm install
Open the folder in VS Code and press F5. A new Extension Development Host window opens with DotType active.
Packaging
npm install -g @vscode/vsce
vsce package
This produces a .vsix file you can install with:
code --install-extension dottype-x.x.x.vsix
Tips
Use real content. Typing through material you actually want to read (documentation, blog posts, book excerpts) is more useful than synthetic word lists. Save different .type files for different topics.
Shorter sessions are fine. A 2–3 minute focused session on a dense paragraph does more than a 10-minute run through easy words.
Revisit your misses. The "Most Missed" chips in the stats panel show which characters trip you up most. Use that to pick your next practice text.
License
MIT — see LICENSE for details.