Version Standards
Standardized dependency versions across all Juniro repositories
Last Updated: January 8, 2026
Overview
This document defines the standardized dependency versions used across all Juniro repositories. All repositories must adhere to these standards to ensure consistency, compatibility, and maintainability.
Core Versions
| Dependency | Standard Version | Rationale |
|---|---|---|
| Node.js | >=20.0.0 | LTS, modern features, better performance |
| Next.js | ^15.1.3 | Latest stable, App Router improvements |
| React | ^18.3.1 | Stable, widely used |
| TypeScript | ^5.9.2 | Latest stable, better type inference |
| Zod | ^3.24.1 | Stable, API compatibility |
Node.js
Standard: >=20.0.0
Required in:
package.jsonenginesfield- GitHub Actions workflows
- CI/CD pipelines
- Local development (use
.nvmrcif present)
Rationale:
- Node.js 20 is the current LTS version
- Better performance and security
- Modern JavaScript features
- Better TypeScript support
Next.js
Standard: ^15.1.3
Required in:
- All frontend repositories
- Design system (
juniro-design) - All web applications
Rationale:
- Latest stable version
- Improved App Router
- Better Server Components support
- Performance improvements
Repositories:
juniro-designjuniro-web-publicjuniro-web-parentsjuniro-web-providersjuniro-web-adminjuniro-web-launchjuniro-platform
React
Standard: ^18.3.1
Required in:
- All frontend repositories
- Design system
Rationale:
- Stable and widely adopted
- Good TypeScript support
- Compatible with Next.js 15
TypeScript
Standard: ^5.9.2
Required in:
- All TypeScript repositories
Rationale:
- Latest stable version
- Better type inference
- Improved performance
- Better error messages
Zod
Standard: ^3.24.1
Required in:
- All repositories using Zod
- API (
juniro-api) - All web applications
Rationale:
- API uses Zod 3.x
- Shared schemas compatibility
- Stable and well-tested
Note: All repositories must use Zod 3.x to ensure compatibility with shared validation schemas.
Package Manager
npm
Standard: >=9.0.0
Used in:
juniro-apijuniro-web-publicjuniro-web-parentsjuniro-web-providersjuniro-web-adminjuniro-platform
bun
Used in:
juniro-designjuniro-docs
Note: Package manager choice is repository-specific. Use the package manager specified in the repository's package.json or packageManager field.
CI/CD Requirements
GitHub Actions
All workflows must use:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm' # or 'bun' for bun repos
Vercel
Vercel automatically detects Node.js version from package.json engines field. Ensure "node": ">=20.0.0" is specified.
Version Updates
Process
- Audit: Run version consistency audit
- Plan: Create standardization plan
- Update: Update all repositories
- Test: Verify builds pass
- Document: Update this document
Frequency
- Major versions: Quarterly review
- Minor versions: Monthly review
- Security updates: Immediate
Checking Versions
Local Check
# Check Node.js version
node --version
# Check package.json engines
grep -A1 '"engines"' package.json
# Check installed versions
npm list next react typescript zod
CI/CD Check
All workflows should verify Node.js version matches package.json engines field.
Exceptions
Exceptions to these standards must be:
- Documented in repository's
CLAUDE.md - Justified with technical rationale
- Reviewed and approved
- Added to this document's exceptions section
Related Documentation
- Version Consistency Audit - Initial audit findings
- Version Standardization Plan - Implementation plan
- CLAUDE.md files - Repository-specific context
Last Updated: January 8, 2026