DoWarmUp - VS Code Typing Practice Extension

🚀 Overview
DoWarmUp is a comprehensive typing practice extension for Visual Studio Code that helps developers improve their coding speed and accuracy. Designed specifically for programmers, it offers various practice modes including code snippets, quotes, and customizable word lists.
✨ Features
🎯 Practice Modes
- ⏱️ Time Mode: Practice for 15, 30, 60, or 120 seconds
- 📝 Words Mode: Practice with 10, 25, 50, or 100 words
- 💬 Quote Mode: Type famous quotes of varying lengths
- 💻 Code Mode: Practice with real code snippets in multiple programming languages
🌐 Programming Languages Supported
- Python
- JavaScript
- TypeScript
- Java
- C++
- React/JSX
- And more...
📊 Detailed Statistics
- WPM (Words Per Minute): Track your typing speed
- Raw WPM: Measure your actual keystroke speed
- Accuracy: Monitor your typing precision
- Consistency: Track your performance stability
- Character Analysis: See correct, incorrect, extra, and missed characters
🎨 User Experience
- Clean Interface: Minimalistic design focused on typing
- Real-time Feedback: Instant visual feedback as you type
- Blur Protection: Screen blurs after inactivity to maintain focus
- Keyboard Shortcuts: Quick restart with Ctrl+Backspace
- Responsive Design: Works seamlessly in VS Code
🛠️ Installation
From VS Code Marketplace
- Open VS Code
- Go to Extensions (Ctrl+Shift+X)
- Search for "DoWarmUp"
- Click Install
Manual Installation
- Download the
.vsix
file from releases
- Open VS Code
- Press
Ctrl+Shift+P
and type "Extensions: Install from VSIX"
- Select the downloaded file
🎮 Usage
Getting Started
- Open Command Palette (
Ctrl+Shift+P
)
- Type "DoWarmUp: Start Typing Practice"
- Choose your preferred practice mode
- Start typing to begin!
Commands
DoWarmUp: Start Typing Practice
- Launch the typing practice interface
DoWarmUp: Quick Time Practice
- Start a quick 30-second practice session
DoWarmUp: Code Practice
- Start code-focused typing practice
Keyboard Shortcuts
Ctrl+Alt+T
- Open typing practice
Ctrl+Backspace
- Restart current test (while practicing)
Tab
or Escape
- Reset test (when inactive)
📋 Practice Modes Guide
⏱️ Time Mode
Perfect for quick warm-up sessions. Set a timer and type as much as possible within the time limit.
- 15s: Quick finger warm-up
- 30s: Standard practice session
- 60s: Extended typing practice
- 120s: Marathon typing session
📝 Words Mode
Practice with a specific number of words. Great for building consistency.
- 10 words: Perfect for beginners
- 25 words: Quick practice round
- 50 words: Standard practice length
- 100 words: Extended practice session
💬 Quote Mode
Type inspiring quotes and improve your typing rhythm.
- Short: Quick quotes under 100 characters
- Medium: Balanced quotes 100-200 characters
- Long: Extended quotes over 200 characters
- All: Random selection from all quote lengths
💻 Code Mode
Practice typing real code snippets to improve your programming speed.
- Choose from multiple programming languages
- Practice common coding patterns
- Improve your muscle memory for special characters
📊 Understanding Your Results
Metrics Explained
- WPM: Words per minute (5 characters = 1 word)
- Raw WPM: Total characters typed per minute ÷ 5
- Accuracy: Percentage of correctly typed characters
- Consistency: Stability of your typing rhythm
- Time: Total time taken to complete the test
- Focus on accuracy first: Speed comes naturally with practice
- Use proper finger positioning: Follow touch typing guidelines
- Practice regularly: Consistency is key to improvement
- Don't look at the keyboard: Train your muscle memory
- Take breaks: Avoid fatigue with regular breaks
⚙️ Configuration
The extension can be configured through VS Code settings:
{
"dowarmup.defaultMode": "time",
"dowarmup.defaultTimeLimit": 30,
"dowarmup.defaultWordCount": 25,
"dowarmup.autoBlurDelay": 5000,
"dowarmup.showTimer": true,
"dowarmup.preferredLanguage": "python"
}
🤝 Contributing
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
Development Setup
# Clone the repository
git clone https://github.com/shaileshthakur1/dowarmup.git
# Install dependencies
npm install
# Start development
npm run dev
# Build the extension
npm run build
# Package the extension
npm run package
🐛 Bug Reports & Feature Requests
Found a bug or have a feature idea? We'd love to hear from you!
📝 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Inspired by popular typing practice websites
- Built with the VS Code Extension API
- Special thanks to the open-source community
📞 Connect with the Developer
Happy Typing! 🚀
Made with ❤️ by Shailesh Thakur