Commit Graph

70 Commits

Author SHA1 Message Date
039e126d9a Update auto-sync scripts to use git reset --hard 2025-12-28 10:17:18 +11:00
929477c1f7 Enable Capture Filmstrip by default 2025-12-28 10:12:22 +11:00
a037b6f2e1 Remove temporary test and debug files 2025-12-28 10:09:01 +11:00
d4ce23b19a Restore filmstrip feature, fix server crash, and rename Grade label 2025-12-28 09:42:24 +11:00
cc5460fa7a Fix: Add missing Filmstrip Checkbox to HTML 2025-12-28 05:29:03 +11:00
7d9c7d9651 Feat: Complete UI implementation for GTmetrix dashboard 2025-12-28 05:09:13 +11:00
3797a45628 Feat: Update UI with GTmetrix dashboard and filmstrip checkbox 2025-12-28 05:08:20 +11:00
50dcf9b498 Feat: Add backend support for filmstrip capture 2025-12-28 05:08:12 +11:00
d345694b01 Fix: Add missing generateTestId function causing server crash 2025-12-28 04:50:41 +11:00
98b92c1a20 Complete README overhaul with comprehensive feature documentation and real screenshots 2025-12-28 03:57:41 +11:00
6df9b0e44f Make Recent Tests URLs clickable to reload results 2025-12-28 03:40:18 +11:00
39bf1e1dc8 Phase C.3 - Add multi-run frontend UI (dropdown, progress, polling) 2025-12-28 03:26:57 +11:00
aaa712b7e4 Phase C.2 - Multi-run frontend (UI, progress, results display) 2025-12-28 03:15:17 +11:00
88358406f4 Phase C.1 - Multi-run backend implementation (database + execution logic) 2025-12-28 03:13:08 +11:00
0e29d75bc3 Phase B.1 - Add Connection View with socket grouping 2025-12-28 03:07:07 +11:00
c6a9d914df Add images gallery link handler to main.js 2025-12-28 03:00:49 +11:00
f01a829ca4 Phase A.4 - Add Page Images Gallery with optimization analysis 2025-12-28 03:00:03 +11:00
9c5cb3bf7a Phase A.3 Complete - Integrate grades display into UI 2025-12-28 02:57:35 +11:00
ec6793753c Phase A.3 - Add Performance Grades (A-F letter grades) 2025-12-28 02:56:26 +11:00
fbd73f4cdc Phase A.2 - Add expandable Request/Response Headers view 2025-12-28 02:54:45 +11:00
aefa41f273 Phase A.1 - Add sortable Request Details Table to waterfall 2025-12-28 02:48:12 +11:00
d2a695ac36 Add waterfall sorting controls - default slowest to fastest 2025-12-28 02:42:49 +11:00
1d39e77fd6 Waterfall Phase 1.3 - Add resource type badges (HTML, CSS, JS, IMG) 2025-12-28 02:34:02 +11:00
600d231e7c Waterfall Phase 1.2 - Add vertical grid lines for time visualization 2025-12-28 02:32:38 +11:00
50fee336c1 Waterfall Phase 1.1 - Add request numbering, status colors, inline metrics 2025-12-28 02:31:10 +11:00
038e62415a Fix waterfall and comparison dark mode backgrounds 2025-12-28 02:24:18 +11:00
4ca5ab1d71 Fix corrupted main.js syntax error that broke entire site 2025-12-28 02:14:56 +11:00
9323293464 Critical fixes: Cache busting + Remove throttling + Ensure correct defaults
1. Browser Cache Fix:
   - Added ?v=4.0 to main.js to force browser reload
   - This ensures new comparison/waterfall UI loads

2. Remove ALL Throttling:
   - Disabled Lighthouse network throttling (rttMs=0, throughput=0)
   - Disabled CPU throttling (cpuSlowdownMultiplier=1)
   - Set throttlingMethod to 'provided' (no simulation)
   - Applies to both mobile and desktop tests

3. Backend Default Already Fixed:
   - isMobile defaults to false (desktop) matching frontend

This fixes all 3 reported issues
2025-12-28 02:01:45 +11:00
79439f7bfa Fix device selection default mismatch + Integrate Waterfall & Comparison
Bug Fix:
- Backend was defaulting to mobile (isMobile ?? true)
- Frontend was defaulting to desktop
- Changed runner.js default to false (desktop) to match frontend

Feature Integration:
- Added Waterfall button to each history item
- Added comparison checkboxes to history for easy test selection
- Auto-limit to 2 tests for comparison
- Comparison controls appear dynamically when tests selected
- Auto-load comparison when URL params present
2025-12-28 01:55:27 +11:00
ce1aa88d87 Add Test Comparison View (Phase 13)
Features Added:
- Side-by-side test comparison page
- Metric delta calculation with percentage changes
- Color-coded indicators (green=better, red=worse)
- Test metadata display (URL, timestamp, device)
- Performance score, LCP, CLS, TBT comparison

Technical Implementation:
- Created compare.html with dual-test input
- Automatic metric fetching from test IDs
- Nested value extraction for flexible comparison
- Responsive comparison grid layout
2025-12-28 01:45:05 +11:00
fd67a8a4fa Add Export APIs & Optimization Checks (Phases 14-15)
Features Added:
- HAR file export endpoint (/api/export/:testId/har)
- CSV metrics export endpoint (/api/export/:testId/csv)
- Optimization checker analyzing 8 categories:
  * Image optimization
  * Text compression (gzip/brotli)
  * Cache policies
  * Render-blocking resources
  * Unused JavaScript
  * Unused CSS
  * HTTP/2 adoption
  * Code minification
- Frontend optimization checklist with color-coded warnings
- Export buttons integrated into results UI

Technical Implementation:
- Created lib/optimization-checker.js with Lighthouse audit analysis
- Added optimization score calculation (0-100%)
- Potential time savings displayed for each check
- Export buttons wired to download endpoints
- Optimization data saved alongside each test result
2025-12-28 01:41:33 +11:00
57c5209108 Add Advanced Test Settings foundation (Phase 12 WIP)
Features Added:
- Throttling presets (4G, 3G Fast, 3G, 2G, Cable, Custom)
- Advanced settings toggle component
- Settings extraction API for test configuration
- Network throttling configuration UI

Technical Implementation:
- Created advanced-settings.js with throttling management
- Prepared foundation for multiple runs support
- Ready for backend integration with Lighthouse throttling flags

Note: Full Phase 12-19 implementation in progress
2025-12-28 01:37:15 +11:00
8d9e0380b6 Add Content Breakdown & Domain Analysis
Features Added:
- Canvas-based pie chart showing resource distribution by type
- Content breakdown statistics table
- Compression savings percentage display
- Resource counts and sizes by type
- Automatic rendering after test completion

Technical implementation - Created breakdown.js with drawPieChart and renderContentBreakdown functions
2025-12-28 01:33:42 +11:00
4aa890da6f Add Waterfall Chart & Request Inspector
Features Added:
- Interactive waterfall timeline visualization
- Color-coded timing bars (DNS, Connect, SSL, TTFB, Download)
- Request filtering by resource type (HTML, JS, CSS, Images, Fonts)
- Detailed request inspector dialog with timing breakdown
- HAR data extraction from Lighthouse results
- Size/compression metrics display
- Third-party resource identification
- Render-blocking resource detection

Technical Implementation:
- Created lib/har-parser.js for network data extraction
- Built waterfall.html with SVG-based timeline renderer
- Added waterfall.js with interactive controls
- Integrated HAR generation into test runner workflow
- Updated main UI with View Waterfall link
2025-12-28 01:32:27 +11:00
541f451f15 Restructure README layout to match design requirements 2025-12-28 01:19:46 +11:00
c448b183c8 Update license to GPL-3.0 and enhance README link visibility 2025-12-28 01:13:04 +11:00
ad613e8c5e Update README with hosted repo screenshots 2025-12-28 01:06:35 +11:00
4a07d680fe Overhaul README with real project screenshots and feature list 2025-12-28 01:05:14 +11:00
91dd847339 Fix: History query logic to prioritize UUID over IP 2025-12-28 00:52:53 +11:00
ae862f0f84 Set default emulation to Desktop 2025-12-28 00:46:08 +11:00
7206412704 Fix: Implement Test Queue and Unique Profiles for Concurrency 2025-12-28 00:41:38 +11:00
c475c2cee0 Update project title and description 2025-12-28 00:40:29 +11:00
f757106f89 Fix: Force random port for Chrome to resolve concurrency issues 2025-12-28 00:35:19 +11:00
5ae3b0d036 Implement PostgreSQL history with user isolation 2025-12-28 00:13:43 +11:00
d83a93da7e Cleanup debug scripts 2025-12-28 00:00:32 +11:00
31b5b11ff2 Add debug all imports 2025-12-27 23:55:35 +11:00
073c65dd6f Add debug lighthouse import 2025-12-27 23:54:09 +11:00
82c4e9f7c1 Fix Runner: Use correct import for chrome-launcher 2025-12-27 23:50:50 +11:00
931c773dfd Add debug import script 2025-12-27 23:50:12 +11:00
561d0a9824 Add ESM debug script 2025-12-27 23:49:08 +11:00