Skip to content

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.

Notifications You must be signed in to change notification settings

msanjayachar/ctp-touch-typing-learn

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

Watchers

Forks

Releases

No releases published

Packages

No packages published