A terminal-based typing speed test for Python developers
Project description
devdash
A terminal-based typing speed test designed for Python developers. Practice typing real code from LeetCode problems while tracking your progress over time.
Features
- Real Code Practice: Type actual Python solutions from 499 LeetCode problems
- Live Statistics: See your CPM (Characters Per Minute) and accuracy in real-time
- IDE-like Experience: Line numbers, auto-indentation on Enter, smart cursor
- Progress Tracking: Historical data with terminal-based graphs
- Pause Support: Press
Escto pause without losing progress - Configurable: Customize settings via
~/.devdash.json
Installation
pip install devdashh
Or with pipx (recommended for macOS with Homebrew):
brew install pipx
pipx install devdashh
pipx ensurepath
Usage
devdash
Or run as a module:
python -m devdash
Controls
| Key | Action |
|---|---|
| Any key | Start typing (timer begins on first keypress) |
Backspace |
Delete previous character |
Tab |
Insert spaces (configurable, default: 2) |
Enter |
New line with auto-indentation |
Esc |
Pause/Resume |
Ctrl+C |
Quit |
Configuration
Create ~/.devdash.json to customize settings:
{
"tab_spaces": 2,
"show_live_stats": true
}
Options
| Setting | Type | Default | Description |
|---|---|---|---|
tab_spaces |
int | 2 | Number of spaces inserted when pressing Tab |
show_live_stats |
bool | true | Show CPM/accuracy in header while typing |
Metrics
- CPM (Characters Per Minute): Correct characters typed per minute
- Accuracy: Percentage of correct keystrokes (capped at 100%)
Data Storage
Your typing history is stored in data.txt in the package directory with the format:
timestamp,cpm,accuracy,elapsed_seconds
Requirements
- Python 3.8+
- macOS or Linux (uses
termiosfor terminal input)
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file devdashh-1.0.1.tar.gz.
File metadata
- Download URL: devdashh-1.0.1.tar.gz
- Upload date:
- Size: 55.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
628abc219bc1730cf1c355a6591ec0ce529a5b8741e6542fdd3b231c141efce3
|
|
| MD5 |
2532e14dba8d0034d7851eafaed45393
|
|
| BLAKE2b-256 |
fa83b2f1d82d49fca95ba7c14d9a056aa39a752d65c1585f4d6556b3c221f005
|
Provenance
The following attestation bundles were made for devdashh-1.0.1.tar.gz:
Publisher:
publish.yml on neilthomass/devdashh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
devdashh-1.0.1.tar.gz -
Subject digest:
628abc219bc1730cf1c355a6591ec0ce529a5b8741e6542fdd3b231c141efce3 - Sigstore transparency entry: 812591591
- Sigstore integration time:
-
Permalink:
neilthomass/devdashh@77900c965e4669d3fd7973fef3bf4d73fd55c096 -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/neilthomass
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@77900c965e4669d3fd7973fef3bf4d73fd55c096 -
Trigger Event:
release
-
Statement type:
File details
Details for the file devdashh-1.0.1-py3-none-any.whl.
File metadata
- Download URL: devdashh-1.0.1-py3-none-any.whl
- Upload date:
- Size: 55.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27a4203a435d8e3eff3624b3840cd8ad297125db249f08a383c252a3c9f4278b
|
|
| MD5 |
87fcd0bebbc441a0f97083becad2d4ab
|
|
| BLAKE2b-256 |
ec25c6c912df5649eeb15e6c76dfe6179137e6f90a5d533269e8f2a9f74a4f2f
|
Provenance
The following attestation bundles were made for devdashh-1.0.1-py3-none-any.whl:
Publisher:
publish.yml on neilthomass/devdashh
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
devdashh-1.0.1-py3-none-any.whl -
Subject digest:
27a4203a435d8e3eff3624b3840cd8ad297125db249f08a383c252a3c9f4278b - Sigstore transparency entry: 812591644
- Sigstore integration time:
-
Permalink:
neilthomass/devdashh@77900c965e4669d3fd7973fef3bf4d73fd55c096 -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/neilthomass
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@77900c965e4669d3fd7973fef3bf4d73fd55c096 -
Trigger Event:
release
-
Statement type: