Test your real-world international internet speed with production-grade performance
π Try it live β’ π Africa-Optimized β’ π Learn More
SpeedCheck measures your real-world international connectivity with a distributed global architecture:
| Feature | SpeedCheck | Traditional Speed Tests |
|---|---|---|
| Server Location | Amsterdam, Netherlands (Primary) + Nairobi, Kenya (Regional) | Nearest server |
| What It Measures | Real international performance with geographic optimization | Local network capacity |
| Architecture | Production-grade with Web Workers, comprehensive audit system | Basic client-side testing |
| Use Case | Global content streaming, international calls, CDN performance | Local ISP testing |
- β‘ Real-time Testing - Live gauge with download, upload, latency & jitter using Web Workers
- π Variance Graph - Real-time speed visualization with bufferbloat detection (stability analysis)
- π― Measurement Quality - Confidence scoring (0-100%) with detailed quality indicators
- π§ͺ Physics-Aware Analysis - Educational context explaining latency, jitter, and speed results based on distance and routing
- π Transparent Metrics - Sample counts, outlier detection, measurement methodology visible
- π Geographic Context - Distance calculation, network type detection, server location display
- π History & Statistics - Local storage with averages, trends, and test count (privacy-focused)
- π οΈ PWA Support - Add to home screen for app-like experience with background sync
- π Zero Dependencies - Pure vanilla JavaScript, fast loading, secure by design
- π Comprehensive Audit - Built-in monitoring system for performance & security validation
- π Educational Content - Learn page explaining internet concepts and performance metrics
- βΏ Accessibility - Screen reader support, ARIA labels, keyboard navigation
- π¬ Scientific Accuracy - TCP slow start compensation with statistical outlier removal (MAD)
- π Visual Polish - Smooth animations, loading skeletons, button interactions, tabular numbers
- π Dual Deployment - Europe (Railway) + Africa (Cloudflare) for optimized global access
- π‘οΈ Production Security - HSTS, CSP, security headers, X-Powered-By removal, helmet.js protection
- Europe/Asia/Americas: speed-test.up.railway.app
- Africa Optimized: speed-test-ahc.pages.dev
# Comprehensive health check (11 test phases)
./audit.sh# Clone repository
git clone https://github.com/ny-collins/internet_speed_test.git
cd internet_speed_test
# Install dependencies
cd backend && npm install
cd ../frontend && npm install
# Run locally
cd backend && npm run dev # API server on :3000
cd ../frontend && npm start # Frontend on :8080SpeedCheck uses a production-grade distributed architecture with Web Workers for optimal performance:
- Frontend: Pure HTML/CSS/JS with Web Workers for heavy computation
- Backend: Node.js + Express API with pre-generated buffers for CPU efficiency
- Deployment: Railway (EU West) + Cloudflare Pages (Africa regional)
- Audit System: Comprehensive 11-phase monitoring and health checks
- π§΅ Web Workers: Heavy stream processing off main thread prevents UI blocking
- β‘ Progressive Enhancement: Device-aware update intervals (50-200ms)
- π§ Memory Management: Pre-allocated buffers prevent GC pauses during tests
- π― Idle Task Scheduling: Non-critical monitoring during browser idle periods
- π Request Caching: 24-hour CORS preflight caching for instant repeated tests
βββββββββββββββββββ βββββββββββββββββββ
β Nairobi β β Amsterdam β
β (Cloudflare) βββββΊβ (Railway) β
β Frontend β β Backend β
β 14ms latency β β 180ms latency β
βββββββββββββββββββ βββββββββββββββββββ
β² β²
β 3x faster for β Global users
β African users β
SpeedCheck includes a comprehensive 11-phase audit system for production monitoring:
./audit.sh # Run complete system health checkAudit Coverage:
- β Geographical Latency - User perspective performance
- β Infrastructure Forensics - Cloudflare location verification
- β Backend Handshake Analysis - Connection overhead measurement
- β Security & CORS Compliance - Access control validation
- β Cache Optimization - Preflight caching verification
- β Performance Deep Dive - Response consistency & cold starts
- β Security Headers & SSL - Certificate & header validation (HSTS, CSP, X-Frame-Options)
- β Network & Protocol Tests - IPv6, HTTP/2, compression
- β Load & Stress Testing - Concurrent requests & rate limiting
- β Error Handling & Edge Cases - Robustness validation
- β Frontend Specific Tests - SEO, caching, page optimization
- π§ͺ Physics-Aware Analysis - Educational explanations replacing subjective quality badges (speed-of-light calculations, routing context)
- π¨ UI Refinements - 45:55 split ratio, secondary metrics layout (compact ping/jitter), transparent gauge styling
- π Complete Graph History - Removed 50-sample limit, all data shown with horizontal compression
- π Critical Fixes - JavaScript selectors updated for secondary metrics, eslint compliance achieved
- π Gauge Sizing - Increased to 360px for better visual impact, resolved CSS conflicts
- π¨ Desktop UI Overhaul - Two-column layout with sticky gauge and hierarchical results matrix
- π Real-time Variance Graph - Canvas-based speed visualization with bufferbloat detection (stability <10% excellent, >30% poor)
- π Interactive Accordion Footer - 6 expandable sections for methodology, privacy, and educational content
- π― Enhanced Start Button - 360px circular gradient design with pulse animation
- β‘ Real-time Data Collection - Rolling buffer at 100ms intervals for smooth graph updates
- π¬ Scientific Measurement Accuracy - TCP slow start compensation with byte tracking for professional-grade results
- π Bufferbloat Detection - Loaded latency measurement during active transfers for network quality analysis
- β‘ Enhanced Responsiveness - Asynchronous completion handling prevents UI freezing during test results
- π Critical Bug Fixes - Race condition resolution, cancellation logic fix, ES module integration
- π Production-Grade Architecture - Web Workers implementation for smooth 60fps UI during speed tests
- π Comprehensive Audit System - 11-phase automated monitoring and health checks
- π Geographic Optimization - Dual deployment: Europe (Railway) + Africa (Cloudflare)
- β‘ Performance Optimizations - Progressive enhancement, idle task scheduling, frame monitoring
- π‘οΈ Security Improvements - PWA update banner security fix
- π§ Critical Bug Fixes - Module imports, speed calculations, sparkline rendering
Measurement Quality Visibility
- Confidence scoring (0-100%) for all test types (download/upload/latency)
- Color-coded indicators: High (β₯85%), Medium (70-84%), Low (50-69%), Very Low (<50%)
- Detailed modals with sample counts, outlier info, and methodology
- 5-factor confidence calculation for speed tests, 3-factor for latency
Geographic Context
- Real-time distance calculation to Amsterdam server
- Network type detection (WiFi, 4G, etc.) via Network Information API
- Test context panel with server location, distance, connection, timestamp
- Geolocation integration with Great Circle distance formula
Local History & Statistics
- localStorage-based history (50 test limit)
- Privacy notice: "History stored locally on this device only"
- Aggregate statistics: average download/upload/latency, test count
- Chart visualization with export/clear functionality
Learn Page Integration
- Tooltip helper functions for contextual education
- Smooth navigation from results to learning content
- Enhanced accessibility and mobile responsiveness
Visual Polish
- Tabular numerals for consistent number display
- Smooth number counting animations with easing
- Button ripple effects and micro-interactions
- Loading skeletons with shimmer animations
- Professional tooltip system with positioning
- Pulse animations for loading states
See DEPLOYMENT_CHECKLIST.md for complete implementation details.
MIT License - see LICENSE for details.
- Architecture - System architecture, test flow, and API reference
- Design - Design decisions and technical rationale
- Deployment - Deployment guide and environment configuration
- Security - Security architecture and audit results
- Changelog - Version history and release notes