Performance: - Convert admin dashboard from SSR to client-side tRPC (fixes 503/ChunkLoadError) - New dashboard.getStats tRPC endpoint batches 16 queries into single response - Parallelize jury dashboard queries (assignments + gracePeriods via Promise.all) - Add project.getFullDetail combined endpoint (project + assignments + stats) - Configure Prisma connection pool (connection_limit=20, pool_timeout=10) - Add optimizePackageImports for lucide-react tree-shaking - Increase React Query staleTime from 1min to 5min Applicant portal: - Add applicant layout, nav, dashboard, documents, team, and mentor pages - Add applicant router with document and team management endpoints - Add chunk error recovery utility - Update role nav and auth redirect for applicant role Database: - Add migration for missing schema elements (SpecialAward job tracking columns, WizardTemplate table, missing indexes) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
24 lines
530 B
TypeScript
24 lines
530 B
TypeScript
import type { NextConfig } from 'next'
|
|
import createNextIntlPlugin from 'next-intl/plugin'
|
|
|
|
const nextConfig: NextConfig = {
|
|
output: 'standalone',
|
|
typedRoutes: true,
|
|
serverExternalPackages: ['@prisma/client', 'minio'],
|
|
experimental: {
|
|
optimizePackageImports: ['lucide-react'],
|
|
},
|
|
images: {
|
|
remotePatterns: [
|
|
{
|
|
protocol: 'https',
|
|
hostname: '*.minio.local',
|
|
},
|
|
],
|
|
},
|
|
}
|
|
|
|
const withNextIntl = createNextIntlPlugin('./src/i18n/request.ts')
|
|
|
|
export default withNextIntl(nextConfig)
|