변경 내역
릴리스 노트 및 제품 업데이트
2026.07
2026.07dependency upgrades and E2E tests optimization
⚡ Cache
- Cloudflare KV Cache: Added optional KV-backed caching to TanStarter for read-heavy server data.
- Newsletter Status Cache: Newsletter subscription status checks can now reuse cached reads instead of calling the provider every time.
- Cache Docs: Added a short guide explaining when to enable KV cache and where it fits in the template stack.
🔐 Auth & Security
- Better Auth 1.6 Upgrade: Upgraded to Better Auth 1.6 with the API key
plugin, including a D1 migration that moves API keys from
user_idtoreference_id. - Paginated API Keys: API key listing now uses server-side pagination with accurate total counts.
- CSRF Protection: Added CSRF protection middleware for server functions.
🧪 E2E & Quality Tooling
- Production Smoke Tests: Added
pnpm e2e:productionto verify SSR and API responses against a production build, plusverify:upgradeto run checks, build, and both E2E suites in one pass. - Stripe Sandbox E2E: Added Stripe CLI-driven sandbox tests covering checkout flows, along with webhook unit tests and clearer webhook error logging.
- Expanded Coverage: Added E2E specs for settings (API keys, file management, security) and router boundary error handling.
🚀 Dependency & Runtime Upgrades
- Cloudflare Tooling: Upgraded Wrangler and the Cloudflare Vite plugin and regenerated worker types for the latest workerd version.
- Core Stack: Updated TanStack Start/Router/Query, React, and Playwright,
aligning server function validation with the new
.validator()API. - Base UI Update: Upgraded Base UI and migrated the drawer from Vaul to the Base UI Drawer with swipe support.
🎨 UI/UX Refinements
- Persistent Sidebar: The dashboard sidebar's collapsed state now persists across visits.
- Navbar & Mobile Navigation: Stabilized the navbar auth loading state, hid mobile navigation on desktop, and compacted language menu options.
- Visual Polish: Refined chart colors, the delete-account card border, and admin user detail layout.
2026.06
2026.06Internationalization support, E2E testing, AI model updates, and storage hardening
🌐 Internationalization
- i18n Support: Added full internationalization support with Paraglide, localized messages, translated content pages, localized blog and changelog entries, and locale middleware.
- Locale-Aware Routing: Updated authentication, checkout, customer portal, sitemap, and robots routes to respect localized paths.
- Localized UI Copy: Moved broad UI copy into English and Chinese message files and removed unused dashboard translations.
💳 Payment & Auth Flow Updates
- Localized Checkout: Added locale support for Stripe checkout and customer portal sessions.
- Auth Callback URLs: Updated login, registration, and social auth callback handling to preserve locale-aware paths.
- Optional SSR Handling: Fixed locale compilation and email development scripts to handle optional SSR setup more reliably.
🤖 AI Experience Updates
- Llama 3.2 Models: Updated AI model configuration, descriptions, docs, and AI cards to reflect Llama 3.2 support.
- Better Select Labels: Added clearer labels for AI model, language, and speaker selects across image, translation, and TTS components.
🧪 E2E & Quality Tooling
- E2E User Management API: Added a local-only E2E user management API for more reliable authentication and settings tests.
- Playwright Coverage: Added and updated E2E fixtures and specs for public pages, protected pages, auth flows, and settings profile journeys.
- Knip Configuration: Added project-specific Knip configuration and ignore rules for unused dependency/export checks.
📦 Storage & Provider Hardening
- Folder Path Sanitization: Added folder path sanitization utilities and updated the R2 provider to use sanitized object paths.
- Newsletter Provider Cache: Optimized newsletter provider creation and caching logic.
- Storage Docs Fix: Updated storage documentation function names for consistency.
🧹 Simplification & Cleanup
- Affiliate Script Removal: Removed Affonso and PromoteKit affiliate scripts, client configuration, and related root script injection.
- Route Formatting: Normalized spacing between imports and route definitions across route files.
- Sidebar Styling: Adjusted dashboard sidebar accent colors and button styles.
- Health Check Endpoint: Added an
/api/pinghealth check endpoint for uptime monitoring.
2026.05
2026.05SEO improvements, public storage access, Base UI upgrade, and deployment workflow refinements
🔎 SEO & Metadata Improvements
- SEO Foundation: Improved page metadata, Open Graph data, blog structured data, manifest configuration, and logo rendering for better indexing and sharing.
- Blog SEO: Added stronger blog metadata support, including canonical routing improvements and release-friendly metadata handling.
⚡ Performance Optimization
- Self-Hosted Fonts: Moved Bricolage Grotesque to self-hosted assets and optimized font loading to reduce external dependencies.
- Deferred Client Scripts: Deferred non-critical client-side script injection until the browser is idle.
- Crisp Chat Loading: Switched Crisp initialization to deferred, dynamic-import loading for better startup performance.
📦 Storage & File Access
- Public Folder Support: Enhanced the storage file route to support public folders while preserving access control for protected files.
- File Route Hardening: Improved storage route behavior for safer public and private file delivery.
🎨 UI & Component Updates
- Base UI 1.5.0: Upgraded Base UI components and refreshed sidebar and toggle group integration.
- Data Table Separators: Fixed separator height and alignment across data table filters and action bars.
- Navigation A11y: Corrected navbar role usage for better accessibility.
🚀 Deployment & Developer Experience
- Manual Deploy Workflow: Added support for manually triggering the GitHub Actions deployment workflow.
- Cloudflare Credentials: Moved Cloudflare deployment credentials higher in the workflow environment for clearer deploy configuration.
- Portless DevTools: Updated devtools configuration to support the portless event bus used in local development.
2026.04
2026.04Creem payment integration, Beehiiv newsletter support, multi-email provider setup
💳 Payment Provider Expansion
- Creem Integration: Added full Creem payment provider support with SDK integration, webhook handling, and configurable product pricing via environment variables.
- Payment Toggle: Allow disabling payment functionality by setting empty environment variable, providing flexibility for different deployment scenarios.
📧 Multi-Email Provider Support
- Resend Email Provider: Integrated Resend as an alternative mail provider with comprehensive documentation and full email functionality.
- Cloudflare Email Service: Added support for Cloudflare Email API with account ID and API token authentication.
- Email Preview Fix: Fixed preview email functionality in development mode.
📰 Newsletter Integration
- Beehiiv Support: Integrated Beehiiv as an alternative newsletter provider alongside existing Resend integration, giving users more choice for newsletter management.
🔐 Authentication Improvements
- Session Validation: Added session checks and redirects for login and registration routes for better security flow.
- Guest Route Middleware: Implemented
guestRouteMiddlewareto replacewebsiteConfigchecks for cleaner authentication logic.
⚡ Database & Storage Refinements
- Public Folder Handling: Generalized public folder handling for more flexible file management.
- Content-Type Validation: Enforced content-type validation and secure file downloads.
🎨 UI & Component Updates
- Shadcn UI Upgrade: Upgraded shadcn/ui components to the latest version with improved functionality.
- Admin UI Improvements: Streamlined ban/unban button logic and improved form structure in admin interface.
🛠️ Developer Experience
- Secret Sync Scripts: Added scripts for syncing GitHub and worker secrets, plus GitHub Actions environment variable management.
- DevTools Optimization: Consolidated devtools into lazy-loaded
DevToolscomponent for better performance.
🔧 Bug Fixes
- Webhook Security: Fixed webhook handling to return 400 for missing payload or signature.
- Price ID Fallback: Fixed non-null assertion with proper fallback for price IDs.
- Payment Verification: Fixed payment completion verification with auth middleware and user scope check.
- Mail Error Handling: Fixed mail error handling with improved renderer fallback logic.
2026.03
2026.03UI polish, Shadcn v4 upgrade, performance optimization, and deployment automation
🔧 Shadcn v4 Upgrade
- Upgraded to Shadcn v4: Migrated the entire UI component library to Shadcn v4 with improved component architecture, updated styling primitives, and enhanced dark mode support with new primary color tokens.
⚡ Performance Optimization
- LCP & Lazy Loading: Optimized Largest Contentful Paint by implementing lazy loading for homepage sections, fixing image aspect ratio issues, and improving overall page load performance.
♿ Accessibility & UI Hardening
- A11y & Consistency Fixes: Fixed contrast issues, normalized spacing and structure across pages with consistent layout distances, and ensured accessibility standards compliance throughout the template.
🎨 Homepage Redesign
- Visual Overhaul: Redesigned the homepage with animations, refreshed hero section intro, updated navbar and footer colors, updated integration blocks and blog card styles, and removed redundant feature sections for a cleaner layout.
🔗 Custom Domain & Environment
- Custom Domain Support: Added custom domain configuration capability, updated
.env.examplewith comprehensive configuration variables, and improved environment variable types for better validation.
🚀 GitHub Deployment Workflow
- CI/CD Automation: Added GitHub Actions deployment workflow for automated builds and deployments, along with pnpm version pinning in package.json for reproducible builds.
📱 Mobile Experience
- Mobile Login Fix & Avatar Optimization: Fixed login flow on mobile devices and optimized the user avatar component for better cross-device rendering and performance.
💳 Pricing & Subscription Fixes
- Auto-Subscribe Fix: Fixed the auto-subscribe feature after user sign-up, removed trial days from pricing configuration, and updated blog post card styling for improved visual consistency.
🛠️ Developer Experience
- Code Quality & Tooling: Applied polish, normalize, and harden patterns to optimize components and layouts, added
@better-auth/clias dev dependency for auth schema generation.
📝 Documentation & Config
- Environment & Worker Config Updates: Updated worker configuration files, added remote database environment variables, and improved
.env.exampledocumentation with local base URL and enhanced variable descriptions.
2026.02
2026.02Full-stack SaaS template foundation — from project init to production-ready features
🚀 Project Initialization & Core Framework
- TanStack Start + Cloudflare Workers: Bootstrapped the full-stack project with TanStack Start, TanStack Router, and React 19, running on Cloudflare Workers with custom server entry, form handling, and file-based routing.
🔐 Authentication & Authorization
- Better Auth Integration: Built a complete auth system with Better Auth — credential login, Google OAuth, password recovery, session management, API key support, admin roles, and route protection middleware with role-based sidebar filtering.
🗄️ Database & Storage
- Cloudflare D1 + Drizzle ORM + R2 Storage: Integrated Drizzle ORM with Cloudflare D1 for type-safe database operations (users, sessions, accounts, API keys), plus Cloudflare R2 for file uploads, avatar management, and secure file serving with validation and sanitization.
💳 Stripe Payment & Billing
- Stripe Payment Processing: Integrated Stripe with pricing plans, checkout sessions, customer portal, webhook handling, and billing card component — all with improved error handling, customer management, and notification integration for payment events.
🏠 Landing Page & Homepage Sections
- Comprehensive Homepage: Built a full landing page with Hero, Features, Integrations, FAQs, Testimonials, Call-to-Action, Pricing, and Newsletter sections, plus structured data (JSON-LD) for SEO.
📝 Blog, Content & Legal Pages
- Blog System & Content Pages: Implemented blog with Content Collections, Markdown rendering, pagination, and SEO. Added About, Contact, Waitlist, Privacy Policy, Terms of Service, and Cookie Policy pages with file-based routing.
🎨 Theme, UI Components
- Theme System & Internationalization: Built light/dark/system theme switching with SSR-safe rendering (ScriptOnce), added Chinese translations for localization support, and delivered a rich UI component set including Chart, Drawer, Table, Tabs, and more.
📊 SEO, Analytics & Notifications
- SEO & Multi-Provider Analytics: Implemented dynamic sitemap.xml, robots.txt, canonical URLs, PWA manifest, and unified analytics (Ahrefs, Clarity, Google, Plausible, Umami). Added notification system with Discord and Feishu webhook providers.
📧 Email & Newsletter
- Resend Email & Newsletter Subscription: Integrated Resend for transactional emails (password recovery, verification) with Toaster notifications, plus a newsletter subscription system with subscribe/unsubscribe APIs and auto-subscribe after sign-up.
🛠️ Admin Dashboard & Developer Experience
- Admin Dashboard & DX Tooling: Built admin user management with listing, sorting, filtering, and billing. Added T3 Environment for type-safe env vars, AGENTS.md documentation, EditorConfig, Biome linting config, and Crisp Chat integration.