Skip to content

mmizan85/TyFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

2 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

โšก TyFlow: Advanced CLI Typing Speed Tester & Practice Tool ๐Ÿš€

Welcome to TyFlow โ€” a cutting-edge, highly visual Command-Line Interface (CLI) based typing speed tester, analytics dashboard, and training ecosystem built for developers, terminal enthusiasts, and speed-typing purists.

Unlike traditional web-based typing tools, TyFlow brings a gamified, minimalist, and ultra-focused typing environment straight to your terminal, complete with predictive text animations, SQLite-driven insights, and integrated media utilities.


โœจ Key Features

๐ŸŽจ 1. High-Fidelity Terminal UI/UX

  • Live Color-Coded Feedback: Instant visual validation (Green for correct keys, Red Background for errors).
  • Smart Cursor Engine: A distinct, pulsing underline indicator showing exactly where your next keystroke belongs.
  • Focus Mode Animation: A rolling text carousel where past text fades out, the current word pops in neon contrast, and upcoming sentences are hidden (...) to optimize raw subconscious focus.

๐Ÿ“ˆ 2. 15-Tier Progressive Learning & Custom Practice

  • The 15-Level Ladder: Move systematically from basic home-row training to advanced symbolic text configurations.
  • Level 15 (The Endless Scroll): An infinite, unrestricted time mode featuring complex literature, philosophy, and code strings for endurance mapping.
  • Custom Snippet Loader: Feed any raw .txt file path or code snippet into the engine instantly.

๐ŸŽฎ 3. Interactive Mini-Game: "Ghost Typist"

  • A high-stakes, memory-driven typing game where words flash momentarily ($0.5\text{s} - 1\text{s}$) and completely vanish. You type from active recall! Includes a lives/hearts system and scaling speeds.

๐Ÿ“Š 4. Deep Data Analytics (AI-Inspired Execution)

  • Error Heatmap Trackers: Records structural errors down to the exact keystroke/finger node, highlighting your weakest typing junctions.
  • Adaptive Paragraph Generation: Dynamically builds automated practice sessions utilizing words heavily weighted with your historically missed characters.

๐Ÿ› ๏ธ Tech Stack & Architecture

TyFlow is built on top of robust, modular Python engineering constraints:

  • Core Interface: Python 3.10+ combined with Rich / Curses for high-performance terminal redrawing.
  • Data Layer: SQLite with SQLAlchemy (ORM) configured in WAL (Write-Ahead Logging) mode for bulletproof, crash-resistant persistence.
  • Visualization: Plotext for terminal-embedded line graphs.
  • Media Pipelines: FFmpeg and yt-dlp integration ready for auxiliary tasks.

๐Ÿ“ฆ Installation & Setup

You can deploy TyFlow using two primary paradigms: the quick automated Windows installer or manual cloning.

Method A: The One-Click Windows Installer (Recommended) ๐Ÿ–ฅ๏ธ

For a native, stress-free setup that packages all binaries (ffmpeg and yt-dlp included), use the Inno Setup Installer:

  1. Navigate to the Releases tab.

  2. Download TyFlow_Setup.exe.

  3. Run the installer wizard.

  4. Magic: The installer automatically writes the operational binaries directly into your Windows System PATH Environment Variables. Open any system Command Prompt or PowerShell instance and type:

    tyflow --help 

Method B: Manual Source Build ๐Ÿ

If you prefer running the application straight out of the Python engine environment:

  1. Clone the Repository:
git clone https://github.com/yourusername/TyFlow.git

cd TyFlow
  1. Install Dependencies:
pip install -r requirements.txt
  1. Run the Application:
python main.py

๐Ÿš€ Usage & Command Parameters

TyFlow is entirely controllable directly through system argument flags. Skip deep menus by targeting your operational profile:

Command Action
tyflow --level 5 Instantly drops you into Progressive Level 5 training.
tyflow --custom ./my_text.txt Loads your personal raw text or code block into the Focus engine.
tyflow --game ghost Starts the "Ghost Typist" memory flash mini-game.
tyflow --stats Draws the interactive statistics dashboard and error heatmap charts.

๐Ÿ‘จโ€๐Ÿ’ป Developer Guide

Project Directory Structure

TyFlow/
โ”‚
โ”œโ”€โ”€ main.py                 # Primary entry point & CLI Router
โ”œโ”€โ”€ config.py               # Theme dictionaries and application settings
โ”‚
โ”œโ”€โ”€ core/                   # Algorithmic and calculation modules
โ”‚   โ”œโ”€โ”€ engine.py           # Keystroke parser, WPM/Accuracy math calculations
โ”‚   โ”œโ”€โ”€ database.py         # SQLAlchemy schemas and WAL log controller
โ”‚   โ””โ”€โ”€ words_loader.py     # Content parsing and adaptive text synthesis
โ”‚
โ””โ”€โ”€ ui/                     # Presentation layer
    โ”œโ”€โ”€ components.py       # Custom text blocks and progress bars
    โ””โ”€โ”€ screens.py          # Dashboard layouts and terminal drawing matrices

Compiling to Binary manually

To compile your modifications into a standalone .exe or bundle an installer yourself:

pyinstaller --onedir --console --name="AdvancedTyper" main.py

Open installer_config.iss within the Inno Setup Compiler to generate the distributed installation suite.


๐Ÿ‘จโ€๐Ÿ’ป Credits & Core Team

  • Lead Architect & Developer: Mohammad Mijanur Rahman (Mohammad Mizan)
  • Built with a passion for high-efficiency automation and minimalist software aesthetics.

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for complete visibility.


About

๐Ÿš€ An advanced, highly visual CLI Typing Speed Tester & Training Ecosystem built in Python. Features focus-mode animations, interactive mini-games, and SQLite-driven error heatmap analytics.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors