0.6.0 (2026-04-02)
Bug Fixes
- auth: use dynamic port for trusted origins and postgres URL
- chatwoot: reinitialize widget on auth lifecycle changes
- romanization, syllable_parser, tokenizer: enhance handling of silent ร clusters
- romanization: update handling of ทร cluster pronunciation
- setup: copy Google credentials file in workspace setup
- setup: use POSTGRES_DATABASE env var for workspace DB setup
- syllable_parser, tokenizer: enhance syllable parsing and decomposition logic
Features
- add phrase-to-deck integration and sidebar redesign
- auth: add password recovery flow
- home: add translation history feed with voice input
- home: enhance history item display and save feedback
- home: enhance translation features with sentence breakdown and animation
- home: implement history feed and day grouping for translation history
- home: redesign translate input with iOS-style toggle, history drawer, and polish
- tone-quiz: standalone tone quiz game with leaderboard
- word-lookup: add favorite words with star/filter UI
0.5.0 (2026-03-15)
Bug Fixes
- deck: close dropdown menu when scrolling, closes #5
- resolve type error in backfill-tone-rules script
- update cumulative frequency threshold in MongoDB repository
Features
- add Anki APKG export and share/copy quiz prompt
- add ChatwootWidget for customer support integration
- add Google Translate-like translation page with romanization
- add LogRocket initialization for session tracking
- add microphone button and debounced translation hook
- add microphone search with TH/EN language toggle to word-lookup page
- add pre-commit hook for TypeScript checks and build process
- add reusable ListenButton with browser TTS for dictionary cards
- add Romanization feature with history management
- add speech-to-text input and server-side history pagination
- add Thai frequency dictionary with bilingual search
- add tone rules breakdown component and enhance card model for detailed tone analysis
- add translation history with cache and auto-save
- add workspace name environment variable and UI display
- enhance development setup with workspace script and dynamic port configuration
- enhance layout and components with new features and optimizations
- enhance MicButton and DeckBuilder components for improved UI
- enhance romanization engine with vowel overrides and glossary integration
- enhance Thai romanization logic and add deduplication and orphan card removal scripts
- enhance Thai text analysis and romanization with new features
- enhance Thai text normalization and audio synthesis parameters
- enhance Thai tone analysis API with detailed tone rules and documentation
- implement batch processing for Thai text analysis in API, enhancing performance and adding comprehensive documentation
- implement data-driven vowel pattern detection and enhance romanization engine
- implement deck builder functionality with user authentication
- implement DictionaryClient and Word Lookup page
- implement logging for tone enrichment process and enhance analyze URL retrieval
- implement translation history management and refactor actions
- integrate LogRocket component into layout for session tracking
- move romanization tool to user-facing page with history
- redesign mobile card layout with compact single-row design
- replace inline category pills with drawer filter on My Cards page
- restrict romanization page to admin users
- romanization
- show romanization in translation history and backfill missing data
- update deck management and viewing components
- update navigation and introduce flashcards feature
- update sidebar navigation for admin-only access
- update test paths and add comprehensive Paiboon+ compliance tests for Thai romanization
Performance Improvements
- progressive card loading, debounced search, and compact mobile cards
0.4.0 (2026-02-24)
Bug Fixes
- vercel: update API source path for CORS headers to include 'thaiscript'
Features
- api: add Thai romanization and tone detection functionality
- api: implement Thai tone detection API and local development server
- api: introduce Thai script analysis API for tone and romanization
- card issues, voice generation improvements
- docs: add comprehensive documentation for voice generation configuration system
- pdf: add PDF splitting functionality and voice playground components
- tone: enhance local development server and improve romanization engine
- tone: enhance Thai tone detection with corrections and API integration
- tone: implement custom Thai tone detection and romanization engines
0.3.0 (2026-02-19)
Bug Fixes
- changelog: clean up changelog display by removing commit and issue links
Features
- CardSearchInput: enhance search input with sticky behavior and focus management
- layout: update viewport settings for improved responsiveness
0.2.0 (2026-02-19)
Bug Fixes
- deck: resolve input state issue causing fade effect during deck name entry
- generate-audio: refactor database connection to use connectDB function for improved clarity and maintainability
- hooks: ensure session completion status reflects initialization state in study session
- layout: adjust padding and improve deck item layout for better UX
- layout: make sidebar navigation responsive for mobile
- sidebar: always show all nav items without auth loading skeletons
- SidebarNav: show skeleton placeholders during session loading and reorder admin item
Features
- account: enhance account page with profile and stats display
- account: refactor account page to fetch content tiers and remove unused components
- account: replace spinner with skeleton loader matching page layout
- add test-google-tts script and conversation saving hook
- admin: add support for file uploads in deck generation
- admin: add tier picker and tiers column to invitations UI
- admin: fetch and pass available content tiers to invitations UI
- alert: add Alert component for displaying notifications and integrate it into the account page with a test mode message; update .gitignore to exclude local environment files
- analytics: integrate Vercel Analytics for enhanced tracking
- app: add audio generation scripts and audio files
- app: add auto-play toggle and improve session reset confirmation in study deck
- app: add lesson decks for practicing Thai vowels and update page to display lessons
- app: add more content, alphabet and vowels
- app: add support for sub-decks and enhance deck display layout
- app: enhance study deck functionality with unknown card tracking and UI improvements
- app: implement audio preloading for study deck cards and display loading progress
- app: implement session reset functionality and update progress tracking in study deck
- app: init project and basic implementation
- app: integrate audio playback functionality in study deck
- app: update deck card component with enhanced status indicators and progress summary
- audio generation pipeline
- audio: enhance audio status management for cards and decks
- audio: optimize audio handling with caching and improve audio preloading logic for study decks
- auth: integrate better-auth for authentication, add sign-in and sign-up pages, and implement AuthStatus component for user session management
- branding: swap display font to Bricolage Grotesque and create shared AppLogo component
- cards: add ownerId to card model and update related endpoints
- cards: implement card management for user decks
- cards: implement card search functionality with fuzzy matching
- CategoryFilter: enhance category filtering with dynamic height and overflow handling
- components: refactor card rendering with CardTile and AudioButton components
- content-access: implement content access management for admin users
- database: migrate flashcard decks to MongoDB, update deck management scripts, and enhance vocabulary extraction skill
- deck-management: enhance deck navigation and loading experience
- deck-progress: enhance deck item display with progress tracking
- deck-repository: refine MongoDB queries for improved filtering
- deck-study: add slide-in animations for card transitions
- deck-study: enhance UI components and improve layout
- deck: add DeckViewClient and DeckViewPage components for viewing deck details and cards, including audio playback functionality
- deck: add Duke Day 2 lesson deck and integrate into existing decks
- deck: add reversed mode for flashcards to practice English to Thai and update UI elements accordingly
- deck: enhance deck view with new features and loading states
- deck: implement duplicate checking for deck creation and card management
- deck: implement undo functionality for study session actions and maintain history state
- deck: implement user session handling and loading state for deck display
- docs: add comprehensive documentation for authentication, database structure, and application features
- flashcards: introduce new command for creating flashcards from images, enhance Thai vocabulary extraction with JSON review step, and add comprehensive romanization rules documentation; remove outdated classroom expressions vocabulary file
- home: redesign homepage layout and content for Thai learning
- icons: add new icons and manifest for web app, including SVG and PNG formats
- invitation: add contentTiers field to Mongoose schema
- invitation: add contentTiers to Invitation type and repository interface
- invitations: grant content access on invitation acceptance
- invitations: implement invitation management system with admin interface
- invitations: pass contentTiers through invitation creation API
- invitation: wire contentTiers through MongoDB repository
- layout: unify navigation and layout across the application
- layout: update max-width for mobile site and refactor header/footer
- my-decks: enhance mobile-friendly design for deck components
- NewDeckPage: add image upload handling with improved file validation and user feedback; implement generator visibility toggles and reset functionality
- NewDeckPage: enhance image upload functionality with compression, improved validation, and dynamic error handling; integrate new upload limits and preview features
- package: add Qstash CLI command for development
- pnpm-lock: update dependencies and add new packages
- release: add release configuration and changelog support
- settings: add settings page for theme and palette customization
- study: move study settings into bottom drawer and polish UI
- study: replace fixed audio preloading footer with inline circular progress
- styles: enhance global styles with new color variables and remove redundant theme toggle
- styles: update color scheme and animations for improved UI
- subscription: implement Stripe integration for subscription management, including checkout and webhook handling; add account settings page for user subscription management
- tests: add screenshot tests and authentication setup for Playwright
- theme: add theme toggle component and update global styles for dark mode support
- theme: enhance theme toggle functionality and improve dark mode support in global styles
- todos: add a new TODOs file to track housekeeping tasks, bugs, features, architecture improvements, UI/UX enhancements, content creation, and troubleshooting items
- todos: create a new TODOs file to organize tasks related to global search, housekeeping, bugs, features, architecture, UI/UX, content creation, and troubleshooting
- todos: update TODOs with new features and housekeeping tasks
- translate: implement translation functionality for Thai words and add vowel lesson guidelines
- ui: improve header mobile spacing, Thai greeting, and collapsible categories
- ui: single-column deck list layout and standardized study page width
- vocabulary: add essential classroom expressions vocabulary and integrate new lesson deck for Duke Day 1
- vocabulary: introduce Thai vocabulary extraction skill and generate audio files for flashcard decks
- vocabulary: update vocabulary extraction process to include JSON review step and enhance deck addition script with dynamic JSON loading