EasyStarter Changelog
A concise timeline of what has shipped across the EasyStarter codebase.
337 commits
Jun 26, 2026
Latest update: 17:22
Jun 25, 2026
Latest update: 18:26
Jun 24, 2026
Latest update: 22:33
Jun 23, 2026
Latest update: 10:46
Jun 18, 2026
Latest update: 16:55
Jun 12, 2026
Latest update: 18:07
Jun 10, 2026
Latest update: 10:38
- 13807aefeat(analytics): add web and native analytics tracking with explicit initialization and documentation feat(auth): implement email OTP login and registration flow for web and native clients
- e835b94Merge pull request #10 from sunshineLixun/codex/email-otp-login
- 2cf6a7efeat(auth): implement email OTP login and registration flow with default username handling
Jun 9, 2026
Latest update: 18:04
- f51598dfeat(auth): enhance authentication methods and configurations
- 5bc0475feat(auth): add email OTP login flow for existing accounts
- caf4c5efeat(auth): refactor SignInScreen and SignInForm for improved UI and close button functionality
- d1e5e3ffeat(auth): add close button to SignInForm and improve conditional rendering for social sign-in options
Jun 6, 2026
Latest update: 09:04
Jun 2, 2026
Latest update: 18:09
Jun 1, 2026
Latest update: 18:02
May 31, 2026
Latest update: 08:23
May 30, 2026
Latest update: 06:52
May 28, 2026
Latest update: 18:16
May 23, 2026
Latest update: 11:31
May 22, 2026
Latest update: 20:30
May 18, 2026
Latest update: 10:10
May 14, 2026
Latest update: 14:39
May 13, 2026
Latest update: 08:23
May 12, 2026
Latest update: 13:00
May 11, 2026
Latest update: 22:14
- 59a3d77Merge pull request #4 from sunshineLixun/codex/add-web-native-analytics
- 32beb5ffeat: update environment configuration files with placeholder values for RevenueCat and server URLs
- baa3276feat: add Cloudflare integration variables to environment configuration files
- 7d76cdechore: resolve merge conflicts with master branch
- 6c1aa5bfix: add missing vars section in wrangler configuration
- ca84494fix: update @openpanel/web dependency version and remove unused vars from wrangler configuration
- 9991f27Potential fix for pull request finding
- f74a1d8Potential fix for pull request finding
May 10, 2026
Latest update: 08:01
May 7, 2026
Latest update: 18:08
- d0a76eefeat: add Aliyun OSS support with storage management features in English, Japanese, and Chinese translations
- a82d70fRefactor payments and storage provider selection, unify app config, and enhance web SEO
- 1041a21feat: add dependency optimization for development and SSR in Vite config
- 3e48344Merge pull request #3 from sunshineLixun/oss
May 6, 2026
Latest update: 16:11
May 5, 2026
Latest update: 02:00
May 3, 2026
Latest update: 07:30
May 2, 2026
Latest update: 08:01
Apr 30, 2026
Latest update: 16:49
- 60bbfc6chore: update documentation links in environment variable examples for better clarity
- 4083326feat: fix Load production Cloudflare credentials for remote D1 migrations
- 0aac23bRefactor code structure and remove redundant code blocks for improved readability and maintainability
- 76c7219feat(profile): add skeleton loading for profile header and conditionally render email display
- bb57018fix(sms): handle Aliyun OTP validation failure gracefully
- 0d221f2refactor(auth): extract SocialSignInButtons component
- 2b22de9refactor(auth): use HeroUI Tabs and extract EmailSignInForm
- 790c878feat(auth): add fade animation for email/phone tab switching
- 39a734dfix(auth): consolidate phone validation into single refine check
- 2ee73d8fix(auth): use absolute route path for phone OTP navigation
- cc988dfrefactor(auth): extract phone OTP verification into standalone page
Apr 29, 2026
Latest update: 14:18
- 1d575b7refactor(auth): simplify sign-out handling by removing unnecessary function
- 0ccd6c9refactor(i18n): update phone number description to remove E.164 format prefix
- 5483f08refactor(email): update phone compatibility email domain to phone-auth.invalid
- bc9cf68refactor(phone): centralize phone number handling and validation logic
- c8b1046feat: rename isPhoneOnlyUser to isPhoneUser for clarity and consistency
Apr 28, 2026
Latest update: 16:01
- ef73a5drefactor(auth): move password hashing and verification to separate module
- 44dbebachore: clean up empty code change sections in the changes log
- 8361a93- Generate non-phone display names for new phone-only users - Normalize existing phone-number names in user API responses - Add shared visible name/contact helpers and remove unused phone helpers - Show contact instead of email in dashboard users table - Use phone verification status for phone-only users - Simplify phone-only security settings UI - Update web i18n messages and OpenSpec phone auth notes
Apr 27, 2026
Latest update: 14:38
Apr 24, 2026
Latest update: 13:37
- e046642feat(auth): add fetchOptions to authClient for improved request handling
- 4891642fix(auth): move auth session middleware to session route for better context handling
- 68c563erefactor(auth): streamline OTP verification and session handling
- b72de08docs(openspec): track review-feedback fixes in add-phone-number-auth tasks
- 99406dafix(web/phone): lock input to +86, drop 876-line unused PhoneInput, fix countdown
- 410bb6brefactor(clients): share user-identity helpers from @repo/shared
- 916bb43feat(auth): hash phone into compatibility email and tighten OTP surface
- a726ebdfix(db): make phone_number_verified NOT NULL with default false
- e305412refactor(sms): tighten SmsProvider contract and surface Aliyun error context
- fc80822Merge remote-tracking branch 'origin/feat/add-phone-number-auth' into claude/review-easystarter-otp-dt6UL
Apr 22, 2026
Latest update: 22:47
Apr 21, 2026
Latest update: 23:13
Apr 20, 2026
Latest update: 22:19
Apr 17, 2026
Latest update: 10:08
Apr 16, 2026
Latest update: 13:02
- 438b27bMerge pull request #2 from sunshineLixun/feat/add-creem-web-payments
- 4330e2ffeat(payments): enhance webhook payload structure with provider details and timestamp
- ec19bd4Merge pull request #1 from sunshineLixun/feat/add-creem-web-payments
- c711496Add Stripe best practices, projects, and upgrade guides
- 901917ffix(server): harden creem webhook handling
Apr 15, 2026
Latest update: 22:44
Apr 14, 2026
Latest update: 15:04
Apr 13, 2026
Latest update: 22:44
Apr 11, 2026
Latest update: 22:18
Apr 9, 2026
Latest update: 18:06
Apr 8, 2026
Latest update: 18:10
Apr 7, 2026
Latest update: 15:54
- 2c1a9b7feat: add Orama tokenizers for Japanese and Mandarin search support and update deployment configuration
- 359fcf9refactor: replace custom JSONC parser with jsonc-parser package in vite.config.ts
- b0d8b92refactor: integrate wrangler.jsonc variables into vite environment configuration
- 71807f3chore: remove unused Cloudflare deployment and preview GitHub Actions workflows
Apr 6, 2026
Latest update: 15:41
Apr 4, 2026
Latest update: 08:33
Apr 3, 2026
Latest update: 18:21
- 47a84d9refactor: refine billing snapshot freeze logic to allow entitlement updates during sync phase
- 1826fd1refactor: improve entitlement reconciliation logic and update premium UI states
- 18815c8refactor: centralize RevenueCat types and improve product ID resolution for product change events
- b277207refactor: remove store-managed subscription message from billing settings page
Apr 2, 2026
Latest update: 16:04
Apr 1, 2026
Latest update: 10:19
Mar 31, 2026
Latest update: 23:00
- 5f58046docs: add section on TestFlight and embedded Expo assets for iOS builds
- bbd3c78docs: add local builds guide for native app development
- e170fdcrefactor: replace readEnv with process.env for environment variable access
- bb8d6effeat: add EAS build and update scripts for development, preview, and production environments
- 8134536Remove unnecessary dependencies from dev and dev:ios-device scripts in turbo.json
- 7605722refactor: replace ConfirmDialog import and remove unused feedback component
Mar 30, 2026
Latest update: 22:27
Mar 29, 2026
Latest update: 23:15
Mar 28, 2026
Latest update: 22:40
Mar 27, 2026
Latest update: 15:19
Mar 26, 2026
Latest update: 23:18
- e8e0b71feat(profile): add About, FAQ, and Privacy screens with navigation
- 136c570feat(premium): enhance purchase flow and entitlement management
- 2e523c7feat(premium): enhance premium subscription management and UI components
- ca765a5feat(native): implement local entitlement sync for improved billing status management
- 6993317feat(premium): introduce FullScreenHud component and enhance premium screen functionality
Mar 25, 2026
Latest update: 18:37
Mar 24, 2026
Latest update: 10:15
Mar 23, 2026
Latest update: 17:58
Mar 22, 2026
Latest update: 22:36
Mar 21, 2026
Latest update: 09:43
Mar 20, 2026
Latest update: 17:21
Mar 19, 2026
Latest update: 18:31
- 69cea01feat(native): add RevenueCat purchases UI dependency
- 9e767acfeat(native): implement social sign-in functionality
- b4e3d21feat(native): implement HeroUI Native theming system and UI overhaul
- 7f27c7erefactor(native): replace custom components with HeroUI Native components
- 20551cbfeat(native): implement avatar upload with image picker integration
Mar 18, 2026
Latest update: 22:42
Mar 17, 2026
Latest update: 22:43
Mar 16, 2026
Latest update: 19:28
Mar 15, 2026
Latest update: 22:54
Mar 13, 2026
Latest update: 09:29
Mar 12, 2026
Latest update: 23:59
Mar 11, 2026
Latest update: 23:35
Mar 10, 2026
Latest update: 14:23
Mar 9, 2026
Latest update: 23:27
Mar 8, 2026
Latest update: 23:01
- 1cf1ef6feat(auth): implement complete authentication flow with deep linking
- 6f5f6a7feat(i18n): implement comprehensive internationalization system
- edb3e82feat(native): add localization support
- 2a20616refactor(native): improve keyboard handling and auth integration
- 93c5908feat(native): implement authentication integration and environment setup
Mar 7, 2026
Latest update: 22:29
Mar 6, 2026
Latest update: 23:32
Mar 4, 2026
Latest update: 23:22
- b2fa582feat(native): add sign-up form and improve auth navigation
- 3e8c9b0feat: add dynamic content monitoring to table of contents
- 140da2dfeat: optimize blog navigation and enhance user management API
- 82affeefeat: enhance blog components with custom mobile drawer
- d173c67feat: refresh blog content and optimize code structure
- 9bc85bcfix(web): reorder blog category route configuration
- b35c038feat(web): add multi-collection blog system with content management
Mar 3, 2026
Latest update: 10:31
Mar 2, 2026
Latest update: 23:03
Mar 1, 2026
Latest update: 22:16
Feb 28, 2026
Latest update: 17:32
Feb 27, 2026
Latest update: 23:44
- ce9475afeat(native): add iOS deployment configuration
- 2d80a45feat(native): update app configuration and upgrade Expo SDK
- 4d22bdffix: add loading state to billing page CTA button
- 801aba0refactor: optimize Stripe webhook subscription handling with upsert pattern
- 5490f33feat: enhance layout components with logo and footer improvements
Feb 26, 2026
Latest update: 23:39
Feb 25, 2026
Latest update: 15:17
- edf518fdocs: update README with corrected project name and setup流程
- 94fd195docs: create comprehensive README with complete project documentation
- 847cca3fix(pricing): improve currency display with narrow symbol format
- d508058feat(auth): enhance session management and cookie configuration
- 3cc0555refactor(shared): extract domain utilities to shared package
Feb 24, 2026
Latest update: 23:55
Feb 23, 2026
Latest update: 23:53
Feb 20, 2026
Latest update: 22:59
Feb 13, 2026
Latest update: 23:51
- f984272fix(i18n): correct authentication provider references in sign-in descriptions
- 5906596feat(web): add @repo/shared dependency for utility functions
- 511647afeat(ui): add dynamic landing hero and new UI components
- f235609git commit -m "refactor(architecture): remove tenant system and simplify to user-only model
- 6174fd4git commit -m "feat(payments): add native payments configuration and RevenueCat webhook support
Feb 12, 2026
Latest update: 17:55
Feb 11, 2026
Latest update: 18:13
Feb 10, 2026
Latest update: 23:15
Feb 9, 2026
Latest update: 18:10
Feb 8, 2026
Latest update: 23:34
Feb 7, 2026
Latest update: 23:25
Feb 6, 2026
Latest update: 18:10
Feb 5, 2026
Latest update: 18:05
Feb 4, 2026
Latest update: 18:17
Feb 3, 2026
Latest update: 18:17
Feb 2, 2026
Latest update: 18:26
Feb 1, 2026
Latest update: 23:57
Jan 30, 2026
Latest update: 18:09
Jan 29, 2026
Latest update: 18:21
Jan 28, 2026
Latest update: 22:09
- 4f16998refactor: Rename `useUserAuthStatus` hook, remove AI tooling configurations, and update dependencies.
- f375d90feat: Add comprehensive, multi-language documentation for core features like authentication, database, and API, alongside dependency updates.
- fe8c04dfeat: Improve locale switching detection using session storage and configure Fumadocs to always hide locale prefixes for consistent URL handling.
Jan 27, 2026
Latest update: 23:50
Jan 26, 2026
Latest update: 18:29
Jan 25, 2026
Latest update: 22:34
Jan 24, 2026
Latest update: 23:33
- 5f6a2aefeat(web): migrate to Fontsource and refactor landing page components
- b7d4cd2chore(ci): translate workflow comments and messages
- 2c47614refactor(web): move set-password into security sheet modal fix(web): render set-password in security side sheet feat(web): open set-password via security sheet
Jan 23, 2026
Latest update: 18:04
- 94d7716refactor(web): update landing page components and remove unused logo assets - Enhance hero section with new messaging and animations - Implement comprehensive users table with sorting, filtering, and pagination - Update VS Code and Biome configurations for better development experience - Remove obsolete logo loop components
- 9cb5ad1feat: add hero section
Jan 22, 2026
Latest update: 01:17
Jan 21, 2026
Latest update: 00:13
Jan 20, 2026
Latest update: 11:08
- ed7cd28feat: Add i18n keys for new dashboard components, integrate Radix progress, and expand full-screen loading coverage.
- ad88541feat: implement comprehensive dashboard with internationalized data table and analytics components
- c8bdca5refactor: enhance social login security settings with type safety and improved UX
Jan 19, 2026
Latest update: 07:38
Jan 18, 2026
Latest update: 22:13
Jan 17, 2026
Latest update: 23:26
Jan 16, 2026
Latest update: 19:40
Jan 15, 2026
Latest update: 00:29
Jan 14, 2026
Latest update: 00:49
Jan 13, 2026
Latest update: 18:00
Jan 12, 2026
Latest update: 23:21
- 1cda1a6 refactor: apply code formatting and add dashboard i18n translations
- 97e65b1 - Reorganize router structure with common/web/native directories - Move users.ts to common/ for shared APIs - Add platform-specific route namespaces (web, native) - Remove status filter from users list API - Add debounced search with lodash-es (Enter key + 500ms fallback) - Fix sorting functionality with proper orderBy implementation - Simplify users table by using emailVerified directly
Jan 11, 2026
Latest update: 21:51
Jan 9, 2026
Latest update: 18:10
Jan 8, 2026
Latest update: 01:18
Jan 6, 2026
Latest update: 23:54
Jan 5, 2026
Latest update: 00:45
Jan 4, 2026
Latest update: 01:02
Jan 3, 2026
Latest update: 01:19
Jan 2, 2026
Latest update: 23:43
- f8f7baerefactor: deploy.yml
- 468215drefactor(theme): replace theme dialog with sheet sidebar
- 76a245afeat: add .npmrc public-hoist-pattern[]=@tanstack/*
- d8cc281fix(auth): remove locale prefix from auth callback URLs
- 669bf5afeat(auth): extract TermsAgreement component and improve mobile UI
- e43b647implement use-intl based internationalization system
Jan 1, 2026
Latest update: 21:17
Dec 31, 2025
Latest update: 01:12
Dec 30, 2025
Latest update: 00:17
Dec 29, 2025
Latest update: 01:24
Dec 28, 2025
Latest update: 21:56
Dec 26, 2025
Latest update: 01:27
Dec 25, 2025
Latest update: 16:33
Dec 24, 2025
Latest update: 17:56