What's New

Changelog

Every feature, improvement, and fix in one place.

Latest: v1.6.55May 7, 2026Tool catalog alignment, memory updates stop consuming credits, audio explain TTS fixed, locked tool contrast improved, audio file upload support added, resizable dashboard sidebar, support page, and certificates page hidden for relaunch.
Tags:NewImprovedFixedSecurity
v1.6.55LatestMay 7, 2026

Tool catalog alignment, memory updates stop consuming credits, audio explain TTS fixed, locked tool contrast improved, audio file upload support added, resizable dashboard sidebar, support page, and certificates page hidden for relaunch.

Fixed

Audio Explain TTS now works correctly

The text-to-speech engine now recognizes Audio Explain as a valid tool, so spoken explanations play reliably and credit usage is tracked. TTS fallback behavior is also more debuggable.

Fixed

Memory updates no longer consume monthly credits

Background user memory refreshes (which run automatically after conversations) were incorrectly counting against monthly credit limits. They are now excluded from credit consumption while still recording for internal metrics.

Fixed

Credits Over Time chart no longer glitches on double-click

Removed a fragile mouse-event handler that could corrupt the interactive chart state when clicking quickly. The chart containers remain non-selectable via CSS only.

Fixed

Locked tool cards are now readable

Cards for tools you haven't unlocked no longer apply a broad opacity dim that made text unreadable. The lock overlay is clearer, the upgrade button is more visible, and the locked state is communicated through structure, not just color.

Fixed

Plan feature counts now match the actual tool catalog

Pricing page feature lists and AI chat context now show accurate tool counts: 6 tools for Basic, 8 for Normal, and 10 for Pro. The marketing tool list excludes internal-only surfaces.

Improved

Upload audio files (MP3, M4A, WAV, OGG) for transcription

You can now drop or browse audio-only files into any tool chat or AI Chat. They are transcribed via Whisper and added to the message context, just like video uploads, without requiring a video frame.

New

Resizable dashboard sidebar

The left navigation sidebar now supports drag-to-resize and keyboard arrow-key resizing (with Shift for larger steps). Your preferred width is saved per-device in localStorage. Collapsed mode still available via the toggle button.

New

Support page

A new Support page is available from the dashboard sidebar. It includes direct email contact, a bug report link, and links to self-help resources like AI Chat, Pricing, and the Changelog.

Improved

Certificates page hidden during relaunch

The Certificates nav item and dashboard page have been temporarily removed while we redesign the certification experience. Previously earned certificates remain safe in the database. Public certificate verification URLs are unaffected.

v1.6.54May 4, 2026

Repository paths shortened for reliable hosting clones by dropping dev-only folders from Git history.

Fixed

Longest paths in Git are now well under platform limits

Agent skill trees, internal docs, brainstorm exports, and related folders—which included the longest file paths—were removed from the entire commit history. Only paths required for the app (src, supabase, etc.) remain tracked. Re-clone or pull after this push; keep those materials locally if you need them.

v1.6.53May 5, 2026

Hosting can clone the repo again after removing stale branches that still carried old node_modules objects.

Fixed

Git clone no longer pulls dependency trees from abandoned branches

main had already been scrubbed, but other remote branches still pointed at commits with checked-in node_modules. A full clone fetched those objects and could fail with a filename or unpack error. Stale branches were deleted so only main remains; open new branches from main for future work.

v1.6.52May 5, 2026

Deploys clone reliably again after trimming historical paths from Git.

Fixed

Hosting can clone the repository without unpack errors

Large dependency folders and unused nested-repo paths were removed from the entire Git history, not only the latest snapshot. That keeps filenames and trees within platform limits so Vercel and other services can check out main normally.

v1.6.51May 5, 2026

AI Chat scrolls correctly on phones, video vision supports MP4 and WebM uploads, the owl tour is retired, and deploys clone faster without vendored dependencies.

Fixed

Dashboard and AI Chat respect the viewport on mobile

The dashboard shell now uses the dynamic viewport height at every breakpoint with overflow contained, so the conversation column gets a real scroll area and the composer stays reachable instead of clipping the last messages.

New

Upload MP4 or WebM for vision alongside video links

Choosing or dropping a short video file captures a representative frame in the browser and sends it with your message so OpenRouter vision can run. A 60 MB cap applies to keep decoding reliable; transcripts are still driven by YouTube links in chat.

Improved

Video vision routing recognizes more message shapes

OpenRouter is used when thumbnails or frames are present with transcripts, vision-only copy, uploaded video labels, frame-only fallbacks, or YouTube URLs in the text. Stream responses include optional headers so you can confirm which provider answered.

Improved

Corner owl spotlight tour removed

The bottom-right mascot and multi-step driver tour are gone for a quieter dashboard; first-run setup and tool flows are unchanged.

Improved

Smaller Git footprint for hosting

Root and remotion dependency folders are no longer tracked in the repository, which avoids huge clones and unpack errors on platforms like Vercel. Run npm install in remotion locally when editing motion projects.

v1.6.50May 4, 2026

Video questions can use OpenRouter vision on thumbnails; AI Chat gets a resizable history column; analytics and maintenance flows are clearer.

New

YouTube and video URLs can run through OpenRouter vision with the transcript

When you paste a supported video link, we attach the fetched thumbnail with your transcript for that turn and call OpenRouter using the configured vision model (default qwen/qwen3-vl-8b-instruct). Add OPENROUTER_API_KEY to your deployment; OPENROUTER_VIDEO_VISION_MODEL is optional and documented in .env.example.

Improved

AI Chat sidebar width is draggable and remembered

Drag the handle between the chat list and the conversation to resize the history column. The width is stored locally, clamped on narrow viewports, and driven by a CSS variable so layout stays stable.

Improved

Analytics credit charts focus on real study activity

Background memory refresh usage is excluded from tool usage totals. Credit events load from a single year-long query to power a daily activity view and a ninety-day per-day series for the main chart.

Improved

Maintenance overlays steer you to AI tools and add an explicit back control

Certificates and Team maintenance screens now point their primary action at Explore AI tools. Practice Exercises passes a back target to the overlay, and the overlay header includes a configurable back link for leaving locked areas.

Fixed

Browser read-aloud handles voices and overlapping playback more reliably

Speech synthesis cancels stale playback before starting a new utterance and picks an English voice after the browser finishes loading its voice list.

Improved

Dashboard sidebar shortens the primary link list

The Projects shortcut is removed from the main dashboard navigation to reduce noise; other paths to projects are unchanged.

Improved

Internal maintainer notes

Agent skill documentation for the repo was expanded for contributors.

v1.6.49May 2, 2026

Chat composer now sticks firmly to the bottom of the conversation panel and is never cut off.

Fixed

Chat composer no longer overlaps or cuts off message content

Removed the intermediate wrapper div for full-bleed routes in the dashboard shell so the chat shell is a direct flex child and receives a definite height from the flex chain. The composer's absolute bottom-0 positioning now resolves correctly every time.

Fixed

Chat scroll area reaches the composer on all screen sizes

Replaced height: 100% with align-self: stretch on ai-chat-main so it stretches to the shell's cross-axis without depending on percentage height propagation, which could silently fail in some browsers.

v1.6.48May 2, 2026

AI Chat and tool chats fill the dashboard main panel edge-to-edge without black gutters from a mismatched viewport height.

Fixed

Chat shell height follows the dashboard instead of forcing 100dvh

The chat layout now uses flex fill and min-height zero inside the dashboard so it does not overflow the shell, scroll the wrong layer, or leave empty bands on the right or bottom.

Improved

Full-bleed dashboard routes use a dedicated overflow mode

AI Chat and individual tool pages keep scrolling inside the conversation column while the surrounding dashboard stays fixed, which improves consistency on large monitors.

v1.6.47May 2, 2026

Uploaded images and other attachments appear above your message in AI Chat and tool chats, with chips for files, videos, links, and saved plans.

New

See images and attachment chips above your sent message

When you attach a picture and ask about it, the preview shows above the bubble; PDFs and similar files show a labeled chip, as do video links, web pages, and saved roadmaps when they are part of the same send.

Improved

AI Chat sends and saves attachment metadata with each turn

Context chip labels persist in saved chats (not full image bytes, to keep storage small); regenerate from a prior turn still forwards vision images when present.

v1.6.46May 2, 2026

Marketing and legal pages keep a fixed top bar while scrolling; the dashboard uses an in-flow navbar, and Privacy and Terms add top spacing so titles clear the bar.

Improved

Navbar is fixed on marketing routes only

On Home, pricing, and similar pages the bar stays visible while you scroll; inside the dashboard it sits in normal layout flow so it aligns with the app shell.

Fixed

Privacy and Terms clear the fixed marketing header

Both legal pages add top padding so the heading is not hidden under the navbar when you open them from marketing.

v1.6.45May 2, 2026

Loading labels during AI replies use a smoother gold-highlight shimmer and the same dots-plus-text pattern across AI Chat, every tool, and roadmap streaming.

Improved

Richer text shimmer for Thinking and Generating states

The gradient sweep now uses theme colors with a brighter peak and smoother timing; reduced-motion users still get a gentle opacity pulse instead of a moving gradient.

Improved

Consistent thinking affordance on all assistant surfaces

A shared status block pairs the bouncing dots with the shimmer label in AI Chat, tool chats (including flashcards and exam streaming), video handoffs, and roadmap generation.

v1.6.44May 2, 2026

The dashboard no longer shows the Next best action banner; the overview status line is simplified accordingly.

Improved

Removed the Next best action card from the dashboard

The accent banner that suggested onboarding, first tools, upgrades, or generic next steps is gone so the overview stays calmer. First-run setup and quick tools are unchanged.

v1.6.43May 2, 2026

First-run setup is now a lightweight card on the dashboard instead of a fullscreen wizard, so you can explore while you personalize.

Improved

Inline setup replaces the five-step onboarding overlay

New accounts see an optional card at the top of the dashboard for display name, learning goal, and experience, with one primary action into a recommended tool or Skip to dismiss without blocking the page.

Improved

Next best action matches the new flow

The dashboard hint now points to the setup card and clarifies that the mascot tour stays optional.

v1.6.42May 2, 2026

Dashboard polish: billing layout, centered chat composer, tool headers, Project Ideas grid, and a leaner AI Tools hub.

Fixed

AI tool pages keep the back control and title in the main column

The floating header and bottom composer are anchored inside the chat main region so they no longer sit over the global sidebar.

Fixed

Chat composer aligns with the message column

The input strip uses the same horizontal gutter as the scroll area and flex centering so the pill and credits line line up with content above.

Improved

Billing uses a compact, centered pricing layout

The dashboard billing view uses tighter spacing and vertical centering on large screens so plans and actions fit without excessive scrolling.

Improved

Project Ideas shows three columns on large screens

Language cards use a wider content area and a three-column grid on desktop while staying responsive on smaller devices.

Improved

AI Tools hub and Practice Exams empty state simplified

Removed the redundant tools grid heading and the preset topic chip grid on Practice Exams so the hub stays cleaner.

v1.6.41May 2, 2026

Marketing and dashboard layouts tuned for phones, tablets, common laptop sizes, and ultrawide monitors, with safer horizontal overflow handling.

Improved

Breakpoints and spacing from small phones to ultrawide

Tailwind now includes extra-small and very large screens so typography, gutters, and the dashboard shell scale smoothly from narrow portrait widths through 21:9 displays.

Improved

Hero, navbar, and pricing sections reflow more predictably

Landing sections use fluid headings, tighter padding on the smallest widths, and card grids that stack on mobile and breathe on wide screens.

Fixed

Horizontal overflow clipped on the main document

The root layout and several marketing blocks use min-width and overflow clipping so stray wide content does not cause sideways scrolling.

v1.6.40May 2, 2026

Responsive layout for AI Chat and all AI tool pages: no overlap with the composer, stable scroll, and better behavior on small screens.

Fixed

Chat and tool pages reflow across screen sizes

Introduced a shared flex-based shell with clamp-based padding so the bottom composer stays centered up to 960px wide without covering recent conversations or message content.

Improved

Empty states and subject shortcuts adapt to mobile

Empty views use gentler vertical centering, and practice exam subject shortcuts use a two-column grid on larger screens and one column on phones.

v1.6.39May 2, 2026

UI/UX enhancements: Navbar floating design, pricing card hover fixes, and scrolling polish in chat tools.

Improved

Floating modern Navbar

Updated the navigation bar to use a modern floating, pill-shaped design with improved background blur opacity.

Fixed

Bounce scrolling prevented in AI Chat and Tools

Added layout constraints to prevent accidental bounce scrolling and pull-to-refresh on the hero header in conversational tools.

Fixed

Pricing hover effects

Corrected the popular pricing tier to properly scale on hover instead of applying a static magnification.

Improved

Hero floating animations

Optimized the floating animations on the hero section cards to improve performance and battery life.

v1.6.38May 2, 2026

Security and UX audit: admin auth hardening, Mermaid SVG sanitization, and dashboard polish.

Security

Admin usage API now requires authorization

The admin-only usage stats endpoint now verifies authentication and admin permissions before returning data.

Security

Admin UI layout guard

Added a server-side gate to the admin section that redirects non-admin users before any page content is rendered.

Fixed

Mermaid diagram output is now sanitized

Applied SVG sanitization to Mermaid-generated diagrams to ensure safety against potential XSS vectors in assistant output.

Improved

Metric cards no longer show misleading hover

Removed interactive hover transforms from dashboard overview metrics that aren't clickable, aligning the UI with expected behavior.

Fixed

Footer copyright symbol corrected

Updated the site footer to use the proper © symbol instead of plain text characters.

v1.6.37May 2, 2026

Fixed floating chat composer overlap on AI chat and tool pages.

Fixed

Chat composer no longer covers recent conversations

AI Chat and tool pages now keep bottom scroll space reserved for the floating composer, so empty-state history and generated content stay visible above the input bar.

v1.6.36May 2, 2026

Enhanced chat streaming UX with visible loading indicators, shimmer animations, and a blinking typing cursor.

Improved

Chat loading state now shows 'Thinking...' label

The thinking indicator during AI response generation now includes a visible 'Thinking...' text label alongside the animated dots, so users can clearly tell the AI is working.

Improved

Streaming bubble gets shimmer animation and 'Generating...' indicator

Assistant message bubbles now have a soft shimmer gradient background while streaming, plus a 'Generating...' label with a pulsing dot that appears once content starts arriving.

Improved

Gold blinking typing cursor replaces static placeholder

The inline animated block during streaming is replaced with a proper gold blinking | cursor (via CSS) that appears at the end of the generated text for a more polished typing effect.

Fixed

TextShimmer component now actually animates

The text shimmer component used for tool-specific loading messages now applies a real opacity pulse animation instead of rendering static text.

v1.6.35May 1, 2026

Hero polish, per-message copy/regenerate buttons, typing animation, rubber-ducking removal, exercises lock, and admin usage dashboard.

Improved

Hero section refined for readability and fit

Headline now says 'Master anything at the speed of thought.' Subheadline shortened to fit on screen. Container height reduced so the hero cards display without scrolling on most screens.

Improved

Chat typing animation and loading states

AI responses now type out character-by-character with a smooth reveal. During generation each tool shows a descriptive status like 'Creating flashcards...' or 'Building practice exam...' instead of generic dots.

Improved

Per-message copy and regenerate buttons

Every assistant response now has Copy and Regenerate buttons at the bottom-left inside the message card. Regenerate works on any message, not just the last one. Card heights remain stable during streaming to prevent layout jumping.

Fixed

PNG uploads no longer fail magic bytes check

Client-side image compression now renames PNG outputs to .jpg so the server's file-type verification matches the actual JPEG content.

Improved

Rubber Ducking tool removed

The AI Rubber Ducking tool has been removed from the tools list, pricing plans, and AI context to simplify the tool lineup.

Improved

Practice Exercises placed under maintenance

The exercises page now shows a maintenance overlay while the exercise engine and grading logic are being upgraded.

New

Admin API usage dashboard

The admin page now shows real-time API usage stats: credits used today, this month, estimated monthly cost, and a breakdown by tool. Data comes from the credit_events table.

v1.6.34May 1, 2026

New developer-focused homepage hero, landing page motion polish, dashboard design alignment, and AI backend migration to DeepSeek.

Improved

New developer-focused homepage hero

The top of the homepage now uses a cinematic Socratica-branded workspace with knowledge mapping, practice exam, code refactor, smart notes, and AI tutor cards. The Socratica owl mascot logo anchors the section. Cards use the same panel surface design language as the dashboard.

Improved

Scroll-triggered reveal animations across the landing page

How It Works, Solutions, Pricing Teaser, and Feature Matrix sections now animate in with staggered reveals when they enter the viewport. Cards have refined hover lift effects. All animations respect reduced-motion preferences via prefers-reduced-motion and useReducedMotion.

Improved

Dashboard and landing page share one visual system

Dashboard shell surfaces, sidebar cards, tools grid, and overview widget now use the same socratica-surface and socratica-card-hover design tokens as the landing page. The shared glow, glassmorphism, shadows, and subtle hover layers make the experience feel like one continuous product.

Improved

AI backend migrated from Ollama to DeepSeek

All AI routes now use DeepSeek via OpenAI-compatible chat completions API. Set DEEPSEEK_API_KEY and DEEPSEEK_MODEL in your environment. Remove OLLAMA_BASE_URL, OLLAMA_API_KEY, and OLLAMA_MODEL_GENERAL.

v1.6.33April 27, 2026

Product copy and AI output sanitization no longer use em dashes; punctuation uses commas, colons, and semicolons instead.

Improved

Consistent punctuation across marketing, dashboard, and changelog text

Em dashes were removed from user-visible strings in favor of simpler punctuation. The assistant output sanitizer now maps em dashes to commas so chat matches the same style.

v1.6.32April 27, 2026

New public FAQ page with common questions, structured answers for search, and FAQ navigation in the header and footer.

New

FAQ page for product and comparison questions

A dedicated FAQ at /faq answers how Socratica differs from general chatbots, what tools are included, pricing and credits, privacy, certificates, and more. The page includes FAQ structured data to help search engines surface answers.

Improved

FAQ linked from the marketing header and footer

FAQ appears next to other public links so visitors can find answers without hunting through the site map.

v1.6.31April 27, 2026

Safer file uploads, PayPal webhook idempotency, clearer chat errors, and small UX hints for diagrams and AI memory.

Security

Uploads verify real file types

PDFs and images must match known magic bytes; plain-text uploads reject obvious binary content. Storage uses normalized content types so MIME spoofing is less useful.

Security

PayPal webhooks deduplicate by event id

Processed webhook events are stored in the database so legitimate retries do not apply subscription role changes more than once. Failed handling releases the claim so PayPal can retry.

Improved

Chat errors say what failed

AI Chat and tool chat surfaces prefix messages (for example Upload, Video, Web page) so you know which step broke.

Improved

Diagram and memory editor guidance

SVG diagram blocks explain that the preview comes from the assistant; Settings memory editing clarifies sections versus bullets before you save.

v1.6.30April 26, 2026

Home pricing teaser no longer shows the annual savings and "see all plans" footnote.

Improved

Simpler pricing section on the homepage

The line about paying annually and the extra link under the plan cards were removed so the teaser stays focused on the three plan cards and their CTAs.

v1.6.29April 26, 2026

Marketing pages no longer show the animated stats strip (tools, courses, learners).

Improved

Leaner home, Solutions, and About layouts

The three-column counter block with AI tools count, course subjects, and learners has been removed so those pages focus on the main content without placeholder-style numbers.

v1.6.28April 26, 2026

Assistant messages no longer show long typographic dashes; they are normalized automatically.

Improved

Consistent punctuation in AI replies

Model output is cleaned server-side so em dashes and similar characters become plain hyphens or spaced hyphens, matching the style we ask for in instructions. This applies to chat, grading, exercises, Think Aloud analysis, memory updates, and course prompt challenges.

v1.6.27April 26, 2026

Chat composer is a single clean shell: no double border or nested field frame.

Fixed

Floating message bar looks like one control again

Removed the extra outer focus ring and the second outline on the composer so you only see one rounded bar. The text area no longer picks up a separate bordered box; focus styling matches the rest of the pill, aligned with other glass panels that use a single light border.

v1.6.26April 26, 2026

Performance pass: lighter fonts, scoped onboarding CSS, deferred hero particles, leaner analytics bundle.

Improved

Faster first paint on marketing pages

Google font weights are trimmed to what the UI actually uses, and Source Serif 4 now uses Next.js default fallback tuning for less layout shift. Driver.js styles load only with the dashboard mascot tour, not on every public page.

Improved

Hero particles do less work until you scroll to them

Floating background particles are created only after the hero block enters the viewport (once), and stay off when reduced motion is requested; animations are unchanged when motion is allowed.

Improved

Analytics charts load in a separate chunk

Recharts is dynamically imported on the analytics page so the initial JavaScript for that screen is smaller; charts and motion behave the same once loaded.

Improved

Single Motion dependency tree

The duplicate direct framer-motion package entry was removed; the app continues to use motion/react as before.

v1.6.25April 26, 2026

Removed the automatic quick-reply suggestion bar above the chat composer.

Improved

Cleaner composer area in AI Chat and tool chats

The bar that offered AI-generated reply chips after assistant messages is gone. You still type or use context as before; only the auto suggestion strip was removed.

v1.6.24April 26, 2026

Devil's Advocate reframed as a topic-first oral-exam LARP: intense pressure on ideas, not fluff.

Improved

Devil's Advocate matches the pressure-test fantasy

The tool is now explicitly a study role-play: you name a topic or claim and the model acts as a skeptical examiner who refuses vague answers and drills edge cases and mechanisms, while staying respectful and safe on high-stakes subjects. The tool card description and placeholder explain that intent.

v1.6.23April 26, 2026

Unified chat composer and consistent input styling across AI Chat, tools, exams, and exercises.

Improved

Floating chat composer matches everywhere

AI Chat and every tool chat now share the same composer shell: a soft glass pill with a gold focus ring, clearer depth, and a textarea that uses brand caret and selection colors. Popover URL fields in tool chat use the same padding and corners as AI Chat.

Improved

Practice exams, Think Aloud notes, and exercises use the standard input style

Short answers, code boxes, line explanations, the Think Aloud notebook, and Practice Exercise text/code fields now use the shared ui-input treatment (border, background, and focus ring) so they feel consistent with the rest of the dashboard.

v1.6.22April 26, 2026

Deployment fix: Syntax Blinder prompt file parses correctly again.

Fixed

Production build no longer fails on Syntax Blinder prompt

A line in the Syntax Blinder system prompt used unescaped backticks inside a template string, which broke the JavaScript parser during the build. The backticks around the blank placeholder are now escaped so Vercel and local builds succeed.

v1.6.21April 26, 2026

Stop button for AI Chat, accessible deck/exam strips, and always-visible code copy on touch.

New

Stop generation in AI Chat

While the AI is responding in the main chat, a Stop button now appears in place of the Send button. Clicking it cancels the request and keeps any partial response that was already received, matching the behaviour in tool chats.

Fixed

Flashcard and exam deck strips no longer use nested buttons

Each deck and exam card in the horizontal strips was rendered as a button containing another button (the delete control), which is invalid HTML and breaks keyboard and screen reader navigation. The outer wrapper is now a div, with separate open and delete buttons as siblings.

Improved

Code block copy button is always reachable on touch and keyboard

The Copy button on code blocks was only visible on mouse hover, making it inaccessible on touch screens and hard to reach via keyboard. It now appears on touch devices and on keyboard focus as well.

v1.6.20April 26, 2026

Bug fixes and quality improvements across tools, diagrams, and AI output display.

Fixed

Practice exam progress bar now shows visibly

The in-progress exam question counter bar was rendering with a transparent fill, making it impossible to see how far through the exam you were. It now uses the correct accent color.

Fixed

Exam viewer no longer shows garbled separator text

A corrupted character (�) appeared between question count and date in the saved exam viewer. It now correctly shows a middle dot separator.

Fixed

Line-by-line exam questions labeled correctly

Questions of type "line-explain" were being labeled "Coding Challenge". They are now labeled "Line by Line" to match what the question actually asks.

Fixed

Mermaid diagram errors are now visible instead of silently disappearing

When a diagram could not be rendered, the component previously returned nothing, leaving a blank space with no explanation. It now shows an error notice and the raw diagram source so you can inspect or copy it.

Fixed

Learning Roadmap embed wiring repaired

The roadmap prompt used "Reference Path Slug" but the parser searched for "Roadmap.sh Slug", so roadmap.sh embeds never loaded. The prompt and parser are now aligned.

Improved

AI Roadmap tool: broader placeholder and accurate description

The tool card and input placeholder now reflect that the roadmap works for any subject or goal (not only career paths), and the description no longer implies the plan evolves automatically across sessions.

Improved

AI Diagrams tool: clarified description

The tool description now mentions that it produces SVG concept maps and flow diagrams, plus ER diagrams for database schema requests.

Improved

Devil's Advocate always ends with a structured score block

Responses now consistently close with a formatted Score / You defended well / Sharpen next block, making each exchange easier to scan and track.

Improved

Syntax Blinder sends one challenge per turn and uses correct language tags

The tool now explicitly sends exactly one challenge before waiting for your answer, and uses the proper language tag on every code fence regardless of programming language.

Improved

AI Chat error notice matches tool chat style

The error callout in AI Chat now includes an icon and uses the same flex layout as the tool chat error banner for visual consistency.

Improved

Back button on tool chat pages is accessible

The back arrow link now includes an aria-label so screen readers announce "Back to tools" instead of an unlabeled button.

Improved

Images in AI responses are constrained and lazy-loaded

Inline images in AI output now have a max-width constraint and a rounded border to prevent layout breakage, and load lazily to avoid blocking page rendering.

v1.6.19April 27, 2026

Manage saved roadmap library, and richer Mermaid diagrams with quick access to Mermaid Live.

New

Delete saved roadmaps and attach from a clearer library UI

Saved plans picker (AI Chat and tool chat) now lists each plan with attach on tap and a delete control that removes it from your library and from attached context. Learning Roadmap adds a horizontal Plans strip to attach or delete saved plans quickly, similar to flashcard decks.

Improved

Mermaid diagrams match the product and feel closer to Mermaid Live

Roadmaps and chat diagrams use a shared Socratica-themed Mermaid config (colors, Outfit, spacing). Diagram cards include a subtle canvas treatment, copy for the source, and a link to open mermaid.live for editing.

v1.6.18April 26, 2026

Saved roadmaps in AI Chat, collapsed sidebar alignment, and maintainer changelog guidance.

New

Attach saved roadmaps from AI Chat

The main AI Chat composer now includes the same Saved plans control as tool chat. Pick saved Learning Roadmap plans to add them as context chips and send with your message (including send-with-context-only when appropriate).

Fixed

Collapsed dashboard sidebar icons stay centered

When the sidebar is minimized, nav abbreviations and the logo row use centered layout and tighter horizontal padding so two-letter labels sit in the middle of each pill instead of drifting to one side.

Improved

Changelog expectations documented for releases

Project guidance now states that pushes to main should include an update to the public changelog when changes are user-visible, to keep release notes consistent.

v1.6.17April 26, 2026

Saved Learning Roadmap plans you can attach in tool chat, plus smoother roadmap streaming and markdown in the planner.

New

Save and reuse Learning Roadmap outputs in tool chat

Generated roadmaps can be saved to your library (manual Save plan). On any tool chat page, use Saved plans in the composer to attach one or more roadmaps as context chips; they are sent with your message with sensible size limits. Duplicate saves are detected and shown as Saved.

Improved

Learning Roadmap streaming feels steadier

The planner now updates live while the model streams instead of swapping from a placeholder card, which reduces layout jump and keeps structure visible as it arrives.

Improved

Roadmap planner renders inline markdown in structured sections

Goals, tasks, and related fields use lightweight markdown so emphasis and links from the model read correctly instead of raw syntax.

Fixed

Flashcard tool deck list only shows real flashcard saves

Saved content from other types (for example chat transcripts) no longer appears as empty decks when browsing flashcards.

Improved

Content API supports filtering by content type

GET /api/content accepts an optional contentType query parameter alongside toolSlug so clients can fetch only roadmap saves (or other types) without loading everything.

v1.6.16April 25, 2026

Accessibility heading-order fix and AI chat typography hierarchy polish.

Fixed

AI Tools page heading order corrected

Added a section-level H2 landmark for the tools grid so heading structure no longer skips from H1 to H3.

Improved

AI chat type scale normalized

Replaced ad-hoc 11px/13px/15px text sizes in chat surfaces with consistent semantic sizes (xs/sm/base) to improve hierarchy clarity.

Improved

Assistant markdown typography strengthened

Updated ChatContent heading and body scales for better visual rhythm and clearer emphasis across long assistant responses.

v1.6.15April 25, 2026

Overview action-path fixes and billing/status copy polish.

Fixed

Pro plan messaging no longer shows upgrade prompt

Overview Current Plan card now shows 'Highest plan active' for Pro users instead of 'Upgrade any time from billing.'

Fixed

Dashboard sidebar no longer links to maintenance-locked Courses

Removed the dead-end Courses nav item from the dashboard sidebar to prevent users from being routed into a maintenance-only page.

Improved

Overview quick-launch cards now adapt by plan tier

Quick Launch suggestions are now tier-aware so users see higher-value tools for their current access level instead of one static set for everyone.

Improved

Overview usage panel copy de-duplicated

Removed repeated reset-date messaging in the usage block to reduce noise and keep status information cleaner.

Improved

What's New link now stays in same tab

Dashboard sidebar changelog link no longer forces a new browser tab for a more consistent in-app navigation flow.

v1.6.14April 25, 2026

Accessibility contrast fix for active dashboard sidebar icon badges.

Fixed

Active sidebar icon badge contrast corrected

Adjusted active nav badge colors so icon text no longer renders on a same-color background, improving readability and WCAG contrast compliance.

v1.6.13April 25, 2026

Dashboard overview and sidebar UI consistency polish pass.

Improved

Overview status and action hierarchy tightened

Refined top-bar copy and supporting labels so the overview reads in a clearer order: current status, next action, then quick launch.

Improved

Overview status line shortened for cleaner scan

Reduced the top-bar status sentence length so the message stays concise and easier to parse at a glance.

Improved

Sidebar nav keyboard focus visibility strengthened

Added consistent focus-visible rings on dashboard sidebar navigation links for clearer keyboard navigation and accessibility.

Improved

Brand typography consistency in expanded sidebar

Adjusted expanded sidebar brand text styling for cleaner, more stable visual rhythm with the rest of dashboard typography.

v1.6.12April 25, 2026

Sidebar branding reliability fix on dashboard.

Fixed

Socratica text in sidebar brand no longer disappears intermittently

Replaced animated brand-text render path with a deterministic static render so the sidebar header label is consistently visible whenever the sidebar is expanded.

v1.6.11April 25, 2026

Dashboard overview visual tweak for cleaner header presentation.

Improved

Removed heavy shadow from overview top status bar

The overview header panel now renders without the strong elevation shadow for a cleaner, flatter look while keeping the same content and spacing.

v1.6.10April 25, 2026

Dashboard overview polish pass: better next-action routing, stronger readability, and accessibility upgrades.

Fixed

Next best action no longer points to maintenance-locked Courses

Overview fallback routing now sends continuation actions to AI Tools flow instead of dead-ending in maintenance-only sections.

Improved

Overview hierarchy and copy now prioritize status first

Hero and supporting copy now present current usage status first, then next action, then quick launch for faster scan and clearer decision flow.

Improved

Overview accessibility and focus visibility pass

Added clearer section semantics, stronger muted-text contrast, and consistent keyboard focus states on primary overview actions.

v1.6.9April 13, 2026

Memory pipeline reliability and performance update for personalized AI responses.

Improved

User memory indexing now focuses on recent user-authored context

The memory updater now indexes only recent user messages (not assistant turns), reducing prompt noise and improving memory extraction quality and speed.

Fixed

Memory storage now fails loudly on DB write issues

User memory save/clear operations now surface storage failures instead of silently succeeding, improving reliability and debugging when database issues occur.

Improved

Memory injection path now has dedicated regression coverage

Added tests to verify memory and display-name context are injected into AI chat prompts and that memory update flows skip unnecessary model calls.

v1.6.8April 13, 2026

Resilience and desktop UX update: Gemini high-demand fallback chain plus responsive dashboard scaling.

Improved

Automatic fallback when Gemini is under high demand

AI chat now attempts Gemini first, then falls back to GLM-4.7-FlashX (Z.AI), and finally to Ollama when providers return 429/503/5xx or temporary unavailability.

Fixed

Provider raw errors are now normalized for users

Users now see clear friendly errors such as high-demand retry messaging instead of raw upstream JSON payloads.

Improved

Desktop dashboard and chat layouts scale cleanly across common resolutions

Updated dashboard shell widths, sidebar breakpoints, and chat content/composer containers so UI fit is improved from 1366x768 through 2560x1440.

v1.6.7April 12, 2026

Practice exam question rendering now supports markdown code fences.

Fixed

Multiple-choice questions now render fenced code blocks correctly

Exam question text now uses the markdown renderer, so snippets like ```python display as formatted code blocks instead of raw backticks.

v1.6.6April 12, 2026

CI stability fix for exercise evaluation validation order.

Fixed

Exercise evaluate API now validates request payload before provider config checks

Invalid exercise requests once again return correct 400/404 responses instead of surfacing 502 config errors, restoring expected test behavior and CI pass conditions.

v1.6.5April 12, 2026

Legal baseline added: Terms/Privacy pages, signup consent notice, and stronger rights language.

New

Terms of Service and Privacy Policy pages are now live

Added dedicated /terms and /privacy pages covering account use, intellectual property, acceptable use, AI processing, and data handling expectations.

Improved

Signup now includes explicit policy agreement notice

Free signup now routes through /signup with a required agreement checkbox before continuing to account creation, with direct links to Terms and Privacy.

Improved

Legal links and discovery improved across site

Footer now includes Terms and Privacy links, marketing signup CTAs now route through /signup, and sitemap includes both legal pages.

v1.6.4April 12, 2026

Tier-based AI provider routing expanded across exercise and analysis APIs.

Improved

Paid users now use Gemini on grading and evaluation APIs

Grade Answer and Exercises Evaluate now follow the same provider split as chat: Free uses Ollama, paid plans use Gemini 2.5 Flash.

Improved

Prompt Challenge and Think Aloud analysis now follow tier-based routing

Prompt-course challenge responses and think-aloud gap analysis now route paid plans to Gemini 2.5 Flash while keeping free-tier behavior on Ollama.

Fixed

User memory updater intentionally stays on Ollama

Memory extraction remains on the existing Ollama-only path by design, regardless of plan tier, to keep that background flow stable.

v1.6.3April 12, 2026

LLM routing split by plan tier: free stays on Ollama, paid plans now run on Gemini 2.5 Flash.

Improved

Paid plans now use Gemini 2.5 Flash in AI chat

Users on Basic, Normal, and Pro are now routed to Gemini 2.5 Flash for stronger price-performance and production-grade multimodal handling.

Improved

Free tier remains on local/cloud Ollama path

Free users continue using the existing Ollama routing and model configuration, preserving current behavior and cost controls.

New

Gemini search grounding enabled for paid AI-chat search prompts

When paid users ask to search, AI chat now enables Gemini Google Search grounding instead of the previous Tavily injection path.

v1.6.2April 11, 2026

Onboarding UX polish: smoother transitions, less visual noise, and reliable post-completion behavior.

Fixed

Onboarding flow no longer jumps between steps

Background scrolling is now locked while the wizard is open, autofocus-induced viewport jumps were removed, and step layout height is stabilized for smoother transitions.

Improved

Onboarding UI made more responsive and less visually busy

Overlay spacing and mobile anchoring were refined, and the tools step now shows concise previews instead of a long, noisy list.

Fixed

Onboarding CTA no longer persists after completion

Dashboard next-action now respects local onboarding completion immediately, preventing stale cache states from repeatedly showing the onboarding CTA after finishing the wizard.

v1.6.1April 11, 2026

Onboarding CTA reopen fix and analytics schema stabilization.

Fixed

Dashboard onboarding button now reliably reopens the wizard

Open onboarding now resets both local onboarding flags and server onboarding completion state, then replays the wizard immediately on the dashboard.

Fixed

Product events tracking schema mismatch resolved

Added a migration to create public.product_events with indexes and service-role-only RLS so /api/events inserts no longer fail when analytics is enabled.

Improved

Courses route restored to maintenance lock

The /dashboard/courses route now renders a hard maintenance screen again to prevent users from entering the relaunch catalog while rollout is paused.

v1.6.0April 11, 2026

Activation and retention sprint: events API, courses relaunch v1, onboarding simplification, and pricing consistency.

New

Product events API for activation tracking

Added /api/events with validated event names for page views, CTA clicks, onboarding steps, tool starts, and upgrade intent.

Improved

Usage API now includes activation fields

Usage responses now include onboarding completion status and first tool usage timestamp for dashboard next-action logic.

Improved

Courses relaunch v1 is now live

The courses catalog has been reopened with staged rollout messaging while Team and Certification remain temporarily gated.

Improved

Pricing and marketing copy now share a single source of truth

Tool counts and plan messaging were unified across Hero, Solutions, Pricing, and dashboard surfaces to remove inconsistencies.

Fixed

Next.js 16 middleware deprecation warning resolved

Auth guarding moved from middleware.ts to proxy.ts for compatibility with current Next.js conventions.

v1.5.5April 11, 2026

Security hardening pass for URL fetch safety, search abuse controls, cron auth, and certificate integrity.

Security

SSRF protections strengthened for web URL tools

Web Link and Link Extract now validate and resolve target hosts against private/internal IP ranges and re-check redirect hops before fetching content.

Security

Web search endpoint now enforces abuse and credit controls

Tools web search now applies authenticated IP abuse checks, monthly credit enforcement, and usage debit recording to prevent quota abuse.

Security

Cleanup cron route switched to fail-closed auth

The uploads cleanup route now returns a server misconfiguration error when CRON_SECRET is missing, instead of allowing unauthenticated access.

Security

Certificate PDF name override locked to owner-only

Public certificate downloads always use the canonical saved name unless the authenticated certificate owner requests a valid override.

v1.5.4April 11, 2026

Quality foundation sprint: lint debt cleanup and CI guardrails.

Fixed

App lint debt removed

Cleared remaining active-product lint issues by resolving onboarding JSX entity escapes, converting immutable heatmap state to const, and cleaning up an unused tools-chat helper argument.

Improved

Tools chat thumbnail rendering compliance

Replaced the raw inline thumbnail image element in tools chat context chips with a compliant Next.js image pattern while preserving the same visual output.

Improved

CI quality checks on main

Added a GitHub Actions workflow that runs npm ci, lint, and test from src/ on pull requests to main and pushes to main using Node 20 with npm dependency caching.

v1.5.3April 11, 2026

Maintenance screen design refresh across blocked dashboard sections.

Improved

Maintenance UI polish

Refined the in-construction screen with a stronger visual hierarchy, clear status row, and improved spacing for better readability.

Improved

Section-specific upgrade messaging

Team, Certification, and Courses now show tailored highlight bullets so users understand exactly what is being improved.

Improved

Reusable maintenance component controls

MaintenanceOverlay now supports configurable status labels, action text/links, and highlight lists while keeping one clear primary action.

v1.5.2April 11, 2026

Hard maintenance lock enabled for Team, Certification, and Courses.

Fixed

Team page refresh loop removed

The Team route now renders a static maintenance screen only, so no background fetch/redirect logic runs while maintenance mode is active.

Improved

True route blocking for maintenance sections

Team, Certification, and Courses routes are now fully blocked behind a coming-soon page instead of rendering live page logic underneath.

Improved

Original page implementations preserved

Existing page code was kept in dedicated content files so each route can be restored quickly without rebuilding from scratch.

v1.5.1April 11, 2026

Maintenance overlay applied to Team, Certification, and Courses pages.

Improved

Maintenance mode for key dashboard sections

Team, Certification, and Courses now show an in-construction panel so users see a clear status while we ship the next update.

Improved

Non-destructive maintenance layer

A reusable MaintenanceOverlay now sits above each page. Existing page logic and UI remain in code underneath, so sections can be restored quickly without rebuilds.

v1.5.0April 10, 2026

Transcript engine rebuilt, drag-and-drop everywhere, security hardening.

New

Rebuilt YouTube transcript engine

Replaced the third-party library with a direct YouTube page parser. Browser-like headers and consent cookies bypass bot detection, so virtually any video with captions (manual or auto-generated) now works reliably.

New

Vision fallback for captionless videos

When a video has no captions at all, the AI now receives the high-res thumbnail plus the video title and channel name from oEmbed. It can still answer questions from visual context. A small 'AI' badge appears on the chip so you know the mode.

New

Drag-and-drop images in AI Chat

Drop any PNG, JPG, WEBP, PDF, TXT or CSV directly onto the AI Chat window. Images over 3.5 MB show a size-limit modal instead of silently failing. Clipboard paste (Ctrl+V) also works for screenshots.

Improved

Transcript, thumbnail and metadata fetched in parallel

All three network calls now run concurrently via Promise.allSettled, cutting load time roughly in half compared to the previous sequential approach.

Fixed

"Out of credits" false positive for paid users

Tool routes (video download, web link, link extract) were calling getUserId() then a separate dynamic getAuthSession() import. When the second call didn't resolve the tier, it defaulted to 'free' (20 credits). All routes now use a single static getAuthSession() call - the same pattern the AI chat route uses.

Fixed

File uploads failing with Bucket not found

The Supabase 'uploads' bucket was missing, causing a hard 500. Since the storage URL is never used client-side (only extractedText matters), the upload step is now best-effort - a missing bucket logs a warning and processing continues normally.

Security

XSS: block javascript: / vbscript: / data: URLs in chat

AI-generated markdown links with javascript: or data: schemes now render as plain text instead of clickable anchors. The regex is compiled once at module level instead of per-render.

Security

SSRF: block private IPs in web fetch routes

Web link and link-extract routes now reject URLs that resolve to localhost, loopback, link-local (169.254.x.x), and private RFC-1918 ranges.

Security

SVG sanitizer: normalize unicode escapes before filtering

Attackers could previously encode 'javascript:' as unicode escape sequences to bypass the sanitizer. All unicode escapes are now decoded before the deny-list is applied.

Improved

IP abuse check: allow up to 3 accounts per IP

The previous limit of 1 account per IP was blocking legitimate users on shared networks (households, university networks, VPNs). Raised to 3; abuse is still caught at 4+.

Improved

Activity heatmap empty state

New users now see a friendly placeholder instead of an invisible SVG.

v1.4.0April 8, 2026

Vision model for video & web links, stop streaming, QuickPick redesign.

New

Vision model context for YouTube videos

High-resolution thumbnails are now fetched alongside transcripts and passed to the AI as image context. The model can reference the visual style of a video, not just its text.

New

Web link context (Jina Reader)

Paste any URL - articles, docs, blog posts - using the Globe button. Content is extracted via Jina Reader and added to the AI context before your message is sent.

New

Stop streaming button

A square stop icon appears in place of the send button while the AI is responding. Clicking it immediately halts the stream and keeps whatever was already generated.

Improved

QuickPick popup redesigned

Replaced the tall vertical list with compact horizontal chips so the AI output stays visible. Added a 'type your own answer' input with Enter key support.

New

Drag-and-drop for tools

Drop images or documents directly onto any tool chat. Shows a size-limit modal for files over 3.5 MB.

v1.3.0April 6, 2026

Activity heatmap, loading skeletons, testimonials, SEO.

New

GitHub-style activity heatmap

Analytics page now shows a 52-week heatmap of your credit usage - built as pure SVG with no D3 dependency.

New

Loading skeletons

Courses, tools, and analytics pages now show shimmer skeletons while data loads instead of a blank screen.

New

Testimonials section

Added a masonry testimonials grid to the solutions page.

Improved

SEO: static sitemap dates

Sitemap lastModified dates are now static per page instead of regenerating on every Vercel deploy, preventing unnecessary re-crawls.

v1.2.0March 30, 2026

Tool chat history, XP system, exercises, external link fixes.

New

Tool chat history

The last 3 conversations in each tool are auto-saved and shown in a compact strip below the header. One click restores a previous session.

New

XP awarded on exercise pass

Completing an exercise now awards XP to your course progress record.

Fixed

External links opening in same tab

AI-generated markdown links to external sites now open in a new tab with rel=noopener.

You've reached the beginning of the changelog.