Skip to content

About

A structured touch typing learning platform inspired by Ratatype that helps users build typing speed and accuracy through guided lessons and real-time performance feedback. The application tracks words per minute (WPM), accuracy, and error patterns while progressively unlocking lessons based on user performance.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Repository files navigation

Touch Typing Learning Platform

A production-ready full-stack touch typing application built with Next.js, TypeScript, Prisma, and PostgreSQL.

The system delivers structured lessons with real-time WPM and accuracy tracking, server-validated progression logic, persistent performance history, and dynamic PDF certificate generation.

Deployed on Vercel.


Overview

  • Real-time keystroke processing with performance-conscious state updates
  • Server-side validation of session results and progression logic
  • Relational data modeling using Prisma and PostgreSQL
  • Secure authentication and protected routes via NextAuth
  • Client-side certificate generation using html2pdf.js

Core Features

  • Structured lesson progression
  • Real-time WPM and accuracy calculation
  • Character-level typo detection
  • Persistent session history
  • Performance statistics per lesson
  • Downloadable PDF certificates

Tech Stack

Next.js (App Router), TypeScript
Prisma ORM, PostgreSQL
NextAuth
Vercel


Performance Metrics

WPM = (Total Characters Typed ÷ 5) ÷ Time (in minutes)
Accuracy = (Correct Keystrokes ÷ Total Keystrokes) × 100

All metrics are computed in real time during active typing sessions.


Roadmap

  • Adaptive difficulty based on error patterns
  • Leaderboard with aggregation queries and indexing
  • Per-key error analytics and keyboard heatmap
  • Server-side anti-manipulation verification
  • Test coverage and API rate limiting

About

A structured touch typing learning platform inspired by Ratatype that helps users build typing speed and accuracy through guided lessons and real-time performance feedback. The application tracks words per minute (WPM), accuracy, and error patterns while progressively unlocking lessons based on user performance.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages