| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
perf(community): denormalize like_count, cache reads with unstable_cache - Add like_count column to community_theme table with backfill migration - Update toggleLikeTheme to atomically increment/decrement instead of COUNT(*) - Remove expensive GROUP BY subquery from getCommunityThemes and getCommunityDataForTheme - Wrap read queries with unstable_cache (60s themes, 300s tag counts) - Add revalidateTag calls to all write operations for cache invalidation - Increase React Query staleTime (themes 2m→5m, tags 5m→15m, published 5m→10m) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | 6 个月前 | |
switch to neon | 1 年前 | |
AI theme generation just got 10x better (#165) * feat: Add polar for tweakcn-plus checkout * migrate to polar nextjs for more control * chore: save closable chat suggestions state as a preference in local storage * chore: improve color contrast in user UI message * feat: add pro features components * chore: update TextArea styles * feat: adjust theme generation types, functions and API to support adding an image * feat: AI components now support and display images * feat: add support for multiple images * feat: add support for multiple images to components * feat: support image only prompts and clean up API code * chore: save closable chat suggestions state as a preference in local storage * chore: improve color contrast in user UI message * feat: add pro features components * chore: update TextArea styles * feat: adjust theme generation types, functions and API to support adding an image * feat: AI components now support and display images * feat: add support for multiple images * feat: add support for multiple images to components * feat: support image only prompts and clean up API code * add checkout link support * add ai-usage schema and actions * feat: dashboard: add AI usage stats with bar chart * feat: enforce subscription limits and improved error handling for AI theme generation * feat: Integrate alert-banner with actual usage * fix: pricing navigation * feat: Checkout link generation * feat: add quick action to create a theme from an image in ai page * feat: add drag and drop for images * chore: move Image Upload constant vars and update imports * feat: improve feedback while theme is being generated * feat: Add pricing page UI * refactor: Dashboard migration to Settings page * feat: improve pricing page * feat: add auth check in checkout and refactor implementation for consistency and typesafety * refactor: adjust code and API to follow new types and useQuery hook typesafety * refactor: alert banner displays correctly and uses the new subscription hook * feat: improve UI feedback for Pro users * feat: upload images by pasting (cmd/crtl + v) * feat: add Go Pro dialog, and global store (no implemented in app yet) * chore(WIP): scaffold of Pro subscription modal show logic * feat: Add openProModal logic to handleGenerateTheme in chat-interface * chore: save closable chat suggestions state as a preference in local storage * chore: improve color contrast in user UI message * feat: add pro features components * chore: update TextArea styles * feat: adjust theme generation types, functions and API to support adding an image * feat: AI components now support and display images * feat: add support for multiple images * feat: add support for multiple images to components * feat: support image only prompts and clean up API code * add ai-usage schema and actions * feat: dashboard: add AI usage stats with bar chart * feat: enforce subscription limits and improved error handling for AI theme generation * feat: Integrate alert-banner with actual usage * fix: pricing navigation * feat: Checkout link generation * feat: add quick action to create a theme from an image in ai page * feat: add drag and drop for images * chore: move Image Upload constant vars and update imports * feat: improve feedback while theme is being generated * feat: Add pricing page UI * refactor: Dashboard migration to Settings page * feat: improve pricing page * feat: add auth check in checkout and refactor implementation for consistency and typesafety * refactor: adjust code and API to follow new types and useQuery hook typesafety * refactor: alert banner displays correctly and uses the new subscription hook * feat: improve UI feedback for Pro users * feat: upload images by pasting (cmd/crtl + v) * feat: add Go Pro dialog, and global store (no implemented in app yet) * chore(WIP): scaffold of Pro subscription modal show logic * feat: Add openProModal logic to handleGenerateTheme in chat-interface * refactor: follow naming convention * chore: refactor components and layout/pages for consistency * fix: enforce auth checks or redirect in /settings routes * chore: update Go Pro dialog * refactor: create reusable theme toggle component * feat: add Get Pro dialog to header * chore: rename GoPro dialog to GetPro and update imports * feat: add AI generation section to Home page and adjust Get Pro dialog * chore: save closable chat suggestions state as a preference in local storage * chore: improve color contrast in user UI message * feat: add pro features components * chore: update TextArea styles * feat: adjust theme generation types, functions and API to support adding an image * feat: AI components now support and display images * feat: add support for multiple images * feat: add support for multiple images to components * feat: support image only prompts and clean up API code * add ai-usage schema and actions * feat: dashboard: add AI usage stats with bar chart * feat: enforce subscription limits and improved error handling for AI theme generation * feat: Integrate alert-banner with actual usage * fix: pricing navigation * feat: Checkout link generation * feat: add quick action to create a theme from an image in ai page * feat: add drag and drop for images * chore: move Image Upload constant vars and update imports * feat: improve feedback while theme is being generated * feat: Add pricing page UI * refactor: Dashboard migration to Settings page * feat: improve pricing page * feat: add auth check in checkout and refactor implementation for consistency and typesafety * refactor: adjust code and API to follow new types and useQuery hook typesafety * refactor: alert banner displays correctly and uses the new subscription hook * feat: improve UI feedback for Pro users * feat: upload images by pasting (cmd/crtl + v) * feat: add Go Pro dialog, and global store (no implemented in app yet) * chore(WIP): scaffold of Pro subscription modal show logic * feat: Add openProModal logic to handleGenerateTheme in chat-interface * refactor: follow naming convention * chore: refactor components and layout/pages for consistency * fix: enforce auth checks or redirect in /settings routes * chore: update Go Pro dialog * refactor: create reusable theme toggle component * feat: add Get Pro dialog to header * chore: rename GoPro dialog to GetPro and update imports * feat: add AI generation section to Home page and adjust Get Pro dialog * feat: Add customer portal * feat: add chat input draft persistence (not images) * styles: improve styles for ai generation and alert banner defaults * feat: Send whole chat context to AI * fix: silly typo lol * feat: support images persistence and sync * feat: edit message (text, mentions and images) * fix: add eslint-disable for exhaustive-deps warnings * chore: fix build error & improve text and styles in suggested prompts * refactor: handle session and subscription checks and handle post login actions * migrate to turbopack * refactor: use reducer builder pattern to sync ai-draft-store with image-uploader * fix: ai-usage computation: account for abort * feat: Theme limit handling for pro tier * refactor: remove duplicate code from ai-chat-form and chat-input * feat: Add faq to pricing page * fix: /dashboard navigations -> /settings * feat: update ui for success page * feat: Migrate ai chat and draft message store to idb-keyval * feat: move subscription details in-house * generate migration * fix: build err * styles: improve Message UI * fix: allow scroll in GoPro dialog chat preview * feat: improve AI usage feedback when theme generation when success or failure * feat: Message UI enhancement when assistant message is error feedback * feat: add latest features in /ai page and refactor Core Theme Generation logic hooks * styles: improve styles and layout for consistency * styles: improve styles in settings pages for consistency * cancelled theme doesn't cost requests * update next to latest (for turbopack compat) * fail build if polar webhook secret is not set * update polar sdk and nextjs plugin * feat: Create customer before creating checkout for them * chore: save closable chat suggestions state as a preference in local storage * chore: improve color contrast in user UI message * feat: add pro features components * chore: update TextArea styles * feat: adjust theme generation types, functions and API to support adding an image * feat: AI components now support and display images * feat: add support for multiple images * feat: add support for multiple images to components * feat: support image only prompts and clean up API code * add ai-usage schema and actions * feat: dashboard: add AI usage stats with bar chart * feat: enforce subscription limits and improved error handling for AI theme generation * feat: Integrate alert-banner with actual usage * fix: pricing navigation * feat: Checkout link generation * feat: add quick action to create a theme from an image in ai page * feat: add drag and drop for images * chore: move Image Upload constant vars and update imports * feat: improve feedback while theme is being generated * feat: Add pricing page UI * refactor: Dashboard migration to Settings page * feat: improve pricing page * feat: add auth check in checkout and refactor implementation for consistency and typesafety * refactor: adjust code and API to follow new types and useQuery hook typesafety * refactor: alert banner displays correctly and uses the new subscription hook * feat: improve UI feedback for Pro users * feat: upload images by pasting (cmd/crtl + v) * feat: add Go Pro dialog, and global store (no implemented in app yet) * chore(WIP): scaffold of Pro subscription modal show logic * feat: Add openProModal logic to handleGenerateTheme in chat-interface * refactor: follow naming convention * chore: refactor components and layout/pages for consistency * fix: enforce auth checks or redirect in /settings routes * chore: update Go Pro dialog * refactor: create reusable theme toggle component * feat: add Get Pro dialog to header * chore: rename GoPro dialog to GetPro and update imports * feat: add AI generation section to Home page and adjust Get Pro dialog * feat: Add customer portal * feat: add chat input draft persistence (not images) * styles: improve styles for ai generation and alert banner defaults * feat: Send whole chat context to AI * fix: silly typo lol * feat: support images persistence and sync * feat: edit message (text, mentions and images) * fix: add eslint-disable for exhaustive-deps warnings * chore: fix build error & improve text and styles in suggested prompts * refactor: handle session and subscription checks and handle post login actions * migrate to turbopack * refactor: use reducer builder pattern to sync ai-draft-store with image-uploader * fix: ai-usage computation: account for abort * feat: Theme limit handling for pro tier * refactor: remove duplicate code from ai-chat-form and chat-input * feat: Add faq to pricing page * fix: /dashboard navigations -> /settings * feat: update ui for success page * feat: Migrate ai chat and draft message store to idb-keyval * feat: move subscription details in-house * generate migration * fix: build err * styles: improve Message UI * fix: allow scroll in GoPro dialog chat preview * feat: improve AI usage feedback when theme generation when success or failure * feat: Message UI enhancement when assistant message is error feedback * feat: add latest features in /ai page and refactor Core Theme Generation logic hooks * styles: improve styles and layout for consistency * styles: improve styles in settings pages for consistency * cancelled theme doesn't cost requests * update next to latest (for turbopack compat) * fail build if polar webhook secret is not set * update polar sdk and nextjs plugin * feat: Create customer before creating checkout for them --------- Co-authored-by: Luis Llanes <luisllaboj@gmail.com> | 1 年前 | |
Community themes (#259) * add community themes feature Allow users to publish saved themes to a public community page, browse/sort community themes, and like them with auth-gated interactions. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * improve community themes UI and fix like state - Polish community page with better layout, sort icons, loading skeletons - Show author, date, like count on theme detail page - Fix isLikedByMe not being fetched in getCommunityDataForTheme - Remove Community link from app header - Replace Save with Publish button in editor action bar for saved themes - Include isPublished in getThemes() via server-side join to avoid layout shift Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * ui --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> | 7 个月前 | |
feat: add community theme tags with searchable selector Add a predefined tag system for community themes (50 tags across style, use-case, season, and aesthetic categories). Users select 1-5 tags when publishing via a searchable command dropdown. Tags display as overlay pills on community cards and as badges on theme view pages. Includes SEO metadata enrichment with tags. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | 7 个月前 | |
perf(community): denormalize like_count, cache reads with unstable_cache - Add like_count column to community_theme table with backfill migration - Update toggleLikeTheme to atomically increment/decrement instead of COUNT(*) - Remove expensive GROUP BY subquery from getCommunityThemes and getCommunityDataForTheme - Wrap read queries with unstable_cache (60s themes, 300s tag counts) - Add revalidateTag calls to all write operations for cache invalidation - Increase React Query staleTime (themes 2m→5m, tags 5m→15m, published 5m→10m) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> | 6 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 6 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 7 个月前 | ||
| 7 个月前 | ||
| 6 个月前 |