|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | + |
| 5 | +The format is based on "Keep a Changelog" and this project adheres to Semantic Versioning. |
| 6 | + |
| 7 | +For more information, see: |
| 8 | + |
| 9 | +- https://keepachangelog.com/en/1.0.0/ |
| 10 | +- https://semver.org/ |
| 11 | + |
| 12 | +--- |
| 13 | + |
| 14 | +## [v1.0.0-beta.2] - 2025-08-17 |
| 15 | + |
| 16 | +### Added |
| 17 | + |
| 18 | +- Global Sidebar context and layout wrapper for unified sidebar state and responsive content shifting. |
| 19 | +- Sidebar overlays and shrinks main content on desktop; mobile layout remains full width. |
| 20 | +- Navbar now renders on all pages and uses shared sidebar logic. |
| 21 | +- Sidebar links grouped: main site links always visible, dashboard links and sign out button for authenticated users. |
| 22 | +- Created a global loading spinner (`GlobalLoader`) shown for all pages during suspense/loading. |
| 23 | +- Changelog API and `/changelog` page: fetches and displays GitHub releases with full metadata, author, assets, and badges latest release. |
| 24 | +- User and global stats APIs: `/api/stats/user` and `/api/stats/lexicon` for dashboard and homepage stats. |
| 25 | +- Dashboard now shows user stats (definitions, rephraser results, activities, quiz attempts, tests created, public results). |
| 26 | +- Homepage now displays live Lexicon stats (totals, recent public definitions, popular terms). |
| 27 | +- Public sharing for Definer and Rephraser results: users can make results public and copy/share links. |
| 28 | +- Latest release badge in changelog page. |
| 29 | +- Expanded Tailwind color palette: blue, orange, purple, etc. |
| 30 | +- Spellcheck tool: AI-powered spell/grammar correction with API endpoints (`/api/spellcheck/generate`, `/api/spellcheck/store`, `/api/spellcheck/public`), dashboard UI, and Prisma `Spellcheck` model for saved results and public sharing. |
| 31 | +- OpenAI helpers: added `src/lib/openai/spellcheck.ts` and `src/lib/openai/rephraser.ts` to centralize model prompts and streaming logic for increased maintainability. |
| 32 | +- Centralized NextAuth options in `src/lib/auth.ts` to provide a typed, single source of truth for server-side authentication config. |
| 33 | + |
| 34 | +### Changed |
| 35 | + |
| 36 | +- Dashboard layout refactored to remove duplicate header/sidebar; now relies on global Navbar/sidebar. |
| 37 | +- `SidebarLayoutWrapper` uses margin and max-width to shrink content when sidebar is open (desktop). |
| 38 | +- Hydration mismatch fixed by using mobile padding on SSR and switching to desktop after client mount. |
| 39 | +- Navbar sidebar footer shows sign out for authenticated users and social links for guests. |
| 40 | +- Updated server API routes to import `authOptions` from `@/lib/auth` instead of exporting them from the NextAuth app route; this prevents runtime route module types from leaking into other compiled route modules. |
| 41 | +- Dashboard: gate stats, activity and verification checks on auth `status` and prefer `session.user.emailVerified` when present to avoid unnecessary roundtrips and UI flicker on initial load. |
| 42 | + |
| 43 | +- Rephraser and Definer pages now use unified result panel UX: input panel becomes result panel after generation, with public sharing and link copy. |
| 44 | +- Changelog client and API now expose full release metadata and latest-release detection. |
| 45 | +- Improved homepage and dashboard layouts for stats and activity cards. |
| 46 | +- Rephraser API now delegates OpenAI streaming to `src/lib/openai/rephraser.ts` (keeps route slim and centralizes model logic). |
| 47 | +- Spellcheck generation moved to `src/lib/openai/spellcheck.ts` to ensure consistent extraction of model output and avoid leaking SDK objects to clients. |
| 48 | +- Authentication: added NextAuth `redirect` callback to default post-auth navigation to `/dashboard` (honors explicit callbackUrl when provided). |
| 49 | + |
| 50 | +### Fixed |
| 51 | + |
| 52 | +- Build error in `SidebarLayoutWrapper` due to missing function declaration. |
| 53 | +- Hydration mismatch caused by inconsistent SSR/client padding logic. |
| 54 | + |
| 55 | +- Build error in changelog API route (missing export async function GET). |
| 56 | +- Parsing error in changelog API route (misplaced closing brace). |
| 57 | +- Minor UI bugs in stats and changelog pages. |
| 58 | +- Fixed spellcheck endpoint returning raw SDK payloads by normalizing OpenAI responses to plain corrected text. |
| 59 | +- Resolved Next.js build-time type error caused by exporting `authOptions` from the NextAuth app route. |
| 60 | +- Fixed verification banner sometimes appearing during initial page load by ensuring the banner only shows when the user is authenticated and explicitly unverified. |
| 61 | +- Minor TypeScript/ESLint fixes (replaced `any` with `unknown`/`Record<string, unknown>` and fixed unused catch variables) in API routes. |
| 62 | + |
| 63 | +### Removed |
| 64 | + |
| 65 | +- Old dashboard-specific sidebar/header logic. |
| 66 | +- Old dashbaord and public pages layout |
| 67 | +- ignore eslint errors on build |
| 68 | +- ignore typescript errors on build |
0 commit comments