Skip to main content

What's New in Helium 3.0

Helium 3.0 brings significant improvements to performance, developer experience, and reliability. This document details all the new features and enhancements.

Major Updates

1. Modern Build Tooling

Vike (formerly vite-plugin-ssr)

Updated from: vite-plugin-ssr 0.4.x
Updated to: vike 0.4.195
What changed: Official rebrand and improved API

Benefits:

  • Better documentation at vike.dev
  • Improved error messages
  • More active development and support
  • Future-proof for upcoming features

Vite 5

Updated from: Vite 3.x
Updated to: Vite 5.4.x

Benefits:

  • Faster builds and improved build performance
  • Better HMR (Hot Module Replacement) in development
  • Improved caching and build optimization
  • Enhanced TypeScript support with faster type checking

2. Performance Improvements

Server-Side Rendering Optimization

Server-side rendering performance has been improved in the Cloudflare Workers deployment environment:

Manifest Caching

  • Before: Manifest parsed on every request
  • After: Manifest parsed once at server startup
  • Impact: Eliminates unnecessary processing overhead
  • Result: Faster response times for all pages

Memory Management

  • Apollo Client cleanup: Automatic cleanup prevents memory leaks in long-running sessions
  • Better resource management: Proper disposal of unused clients
  • Impact: Consistent performance even after many page navigations

3. Developer Experience Enhancements

Enhanced Vite Configuration

Vite configuration has been enhanced and expanded in @thoughtindustries/helium-server:

Before (2.x):

import { tiConfig } from '@thoughtindustries/helium-server';

export default defineConfig(async () => {
tiConfig.plugins.push(mdx());
return tiConfig;
});

// tiConfig had: plugins, optimizeDeps, envPrefix

After (3.x):

// Factory function provides complete config with all critical settings
import { createVikeConfig } from '@thoughtindustries/helium-server';

export default defineConfig(async () => {
const config = await createVikeConfig();
config.plugins.push(mdx());
return config;
});

// Now includes: plugins, build.manifest, optimizeDeps, envPrefix,
// ssr.noExternal, resolve.dedupe - all critical settings

Benefits:

  • ✅ Added critical build settings (manifest, ssr, resolve)
  • ✅ Factory function pattern prevents shared reference bugs
  • ✅ Dynamic imports for ESM/CJS compatibility
  • ✅ Can't accidentally break production deployment settings
  • ✅ Consistent configuration across all projects

Better Error Messages

3.0 includes improved error handling throughout:

  • Vike loading failures: Clear error messages with troubleshooting steps
  • Missing dependencies: Specific instructions on what to install
  • Configuration errors: Helpful hints about what went wrong
  • Build failures: Better stack traces and context

4. Security Improvements

Dependency Updates

Helium dependencies have been updated to more recent versions with a better security posture. These updates mitigate several security vulnerabilities from these dependencies:

  • GraphQL: 16.6.0 → 16.11.0
  • universal-cookie: ^4.0.4 → ^7.2.2
  • remark-mdx-frontmatter: ^2.0.3 → ^5.2.0
  • tsup: Updated to ^8.5.0
  • Apollo Client: ^3.7.0 (updated with latest security patches)
  • Vite: 3.x → 5.4.11

These updates ensure your Helium applications are built on secure, well-maintained dependencies with the latest security patches applied.

5. Enhanced Features

Improved Client Routing Support

Helium 3.0 makes Client Routing easier to implement and more reliable:

Server Routing (Default)

  • Full page reload on navigation
  • Better for SEO and initial load
  • Simpler to implement

Client Routing (Optional)

  • Instant page transitions
  • App-like navigation experience
  • Perfect for dashboard-heavy applications

Enable Client Routing by adding a single export:

// In renderer/_default.page.client.tsx
export const clientRouting = true;

Learn more in the Routing documentation.

Enhanced TypeScript Support

  • Better type definitions across all packages
  • Improved autocomplete in IDEs
  • Catch more errors at compile time

6. Updated Development Tools

Storybook 8

  • Updated from: Storybook 7.x
  • Updated to: Storybook 8.6.14
  • Benefits:
    • Faster startup times
    • Better component testing
    • Improved documentation generation
    • Modern UI

i18next Ecosystem

  • i18next: v21 → v23.16.8
  • react-i18next: v11 → v13.5.0
  • Benefits:
    • Better React 18 compatibility
    • Improved performance
    • More translation features

7. Reliability Improvements

Improved Module Loading

Server-side module loading has been improved:

  • Critical modules loaded once and cached
  • More reliable initialization
  • Better performance under load

Better Error Recovery

  • Graceful handling of failed imports
  • Clear error messages instead of silent failures
  • Helpful troubleshooting guidance in error messages

8. Build Output Improvements

Automatic Manifest Generation

The build process now automatically generates:

  • manifest.json - Maps routes to assets
  • asset-tags.json - Pre-calculated asset references
  • Optimized bundle splitting

No manual configuration needed - everything is generated automatically during npm run build.

Upgrade Benefits Summary

CategoryImprovementImpact
PerformanceServer manifest cachingFaster page loads
PerformanceApollo Client cleanupNo memory leaks
Security8 vulnerabilities fixedMore secure applications
Developer ExperienceCentralized configLess boilerplate
Developer ExperienceBetter errorsFaster debugging
ReliabilityImproved initializationMore stable deployments
FeaturesEnhanced Client RoutingEasier to implement
Build SpeedVite 5 improvementsImproved build performance

Compatibility

Backward Compatibility

Helium 3.0 maintains backward compatibility for:

  • ✅ All GraphQL queries and mutations
  • ✅ Component APIs (no breaking changes)
  • ✅ Routing patterns (file-based routing unchanged)
  • ✅ Deployment process (same commands)
  • ✅ Environment variable patterns
  • ✅ ti-config.json structure

What Requires Migration

Only these items need updating:

  • Import statements (vite-plugin-ssrvike)
  • vite.config.ts (use createVikeConfig())
  • Dependencies in package.json

Migration Effort

Typical migration times:

Project SizeEstimated Time
Hello World (essentials)30-60 minutes
Small (3-5 pages)1-2 hours
Medium (10-15 pages)2-4 hours
Large (custom components)4-8 hours
Enterprise (extensive customization)8-16 hours

Most of the time is testing and verification, not code changes.

Future-Proofing

Helium 3.0 sets the foundation for future enhancements:

  • Vike V1 compatibility: Ready for upcoming Vike V1 migration
  • React 19 ready: Compatible with future React versions
  • Modern standards: Uses latest web platform features
  • Active development: Based on actively maintained dependencies

Get Started

Ready to upgrade? Follow the Migration Guide for step-by-step instructions.


Last updated: November 2025 Helium version: 3.0.0