PERFORMANCE OPTIMIZATION
TECHNICAL DOCUMENTATION
Documentation of FYT's performance optimization strategies. Built for low-bandwidth environments and maximum efficiency.
CURRENT METRICS
Measured performance
Bundle Sizes (Home):
- JavaScript: 61.46 KB
- CSS: 14.00 KB
Lighthouse Scores (Home):
- Performance: 91%
- First Contentful Paint (FCP): 1.96s
- Largest Contentful Paint (LCP): 3.16s
- Total Blocking Time (TBT): 17ms
- Cumulative Layout Shift (CLS): 0.05
OPTIMIZATION STRATEGIES
How we achieved these metrics
1. Font Optimization:
- Removed Unused Fonts: Oswald, Fjalla One, Staatliches, Barlow Condensed, Special Elite, Roboto Slab
- Retained Fonts: Bebas Neue, Anton, Russo One, Courier Prime, Zilla Slab, Bitter, Arvo
- Benefit: Reduced font loading time and bundle size
- Implementation: Optimized
@importstatements insrc/index.css
2. CSS Optimization:
- Print Media Optimization: Comprehensive print stylesheet
- Tailwind Optimization: Purged unused utility classes
- Result (current): 63.58 KB gzipped CSS
3. JavaScript Optimization:
- Code Splitting: Lazy-loaded components
- Tree Shaking: Removed unused code
- Minification: Production builds optimized
- Result (current): 61.46 KB gzipped JavaScript
4. Image Optimization:
- SVG Optimization: Inline SVGs for critical graphics
- Responsive Images: Proper sizing for different viewports
- Lazy Loading: Deferred loading for below-fold images
PERFORMANCE TARGETS
Goals and achievements
| Metric | Target | Current | Status |
|---|---|---|---|
| JS Size (gz) | < 700 KB | 61.46 KB | |
| CSS Size (gz) | < 80 KB | 14.00 KB | |
| FCP | < 2.5s | 1.96s | |
| LCP | < 4s | 3.16s | |
| Lighthouse (Home) | > 90 | 91% |
TESTING & VERIFICATION
How to verify performance
Run Lighthouse:
BASH
# Build and run Lighthouse
npm run lighthouse:build
# Run Lighthouse CI
npm run lighthouse:ciCheck Bundle Sizes:
BASH
# Build and check output
npm run buildLighthouse CI Configuration:
- Configured in
lighthouserc.json - Assertions ensure performance doesn't regress
- Runs automatically in CI pipeline