Skip to content

Releases: Vishnuj-n/studyloop

Release v1.16.0

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 03 Oct 15:12

✨ Features

  • Flashcards

    • Added a Copy button to quickly duplicate flashcard content.
    • Improved accessibility for screen‑reader users.
  • Dynamic Prompt Compression

    • Background compression service (LLMLingua‑2) automatically trims oversized document chunks, reducing token usage and speeding up AI responses.
    • New settings let you control compression mode and target token retention.
    • UI now shows compression statistics and token‑saving badges in the Reader view.
  • Extension Setup Experience

    • Real‑time ExtensionSetupToast and ExtensionSetupModal give clear feedback while extensions install.
    • Progress badges and status indicators keep you informed of each installation step.
  • Toast System Revamp

    • Legacy toast notifications replaced with a modern useToast composable.
    • Updated styling includes a subtle backdrop filter for better readability.
  • Smooth Quiz Interaction

    • After submitting a quiz or scoring an answer, the page now smoothly scrolls to the top, keeping the flow natural.
  • Authentication Enhancements

    • More reliable session handling and synchronization across the app, reducing unexpected log‑outs.
    • Improved session verification and observability for a smoother login experience.
  • Compression Badge Component

    • A new UI badge lets you toggle detailed information about active compression settings.

🚀 Improvements

  • Search Performance

    • Lexical search now caches TF vectors and reduces lock contention, delivering faster results.
  • UI Consistency

    • Refreshed styling for setup badges, buttons, and toast components for a cleaner look across the app.
  • Environment Configuration

    • Build script now respects the ClerkPublishableKey environment variable, simplifying deployments.
  • Logging

    • Dynamic log‑level configuration and persistence make troubleshooting easier without affecting the UI.
  • Study Queue Queries

    • Refactored queries improve readability and maintainability, indirectly enhancing reliability.

🐛 Bug Fixes & Issue Resolutions

  • Fixed a crash when the notebook drafting toast was shown in an unexpected syllabus state.
  • Resolved a panic that could occur during quiz transaction rollbacks.
  • Ensured proper closure of resources in various backend functions, preventing leaks.
  • Added error handling for attempts to delete files outside the designated upload directory.
  • Corrected the privacy policy URL in Settings.
  • Improved log‑level restoration to avoid hidden errors.
  • Prevented session rollback panics and enhanced error handling in logging.
  • Updated markdown rendering to normalize LaTeX delimiters for better KaTeX compatibility.

Thanks for using Studyloop!

Release v1.15.0

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 01 Oct 14:00

✨ Features

  • Mastery Certificates

    • Earn a downloadable certificate when you complete a notebook (100% progress).
    • View the certificate in a new modal, with customizable recipient name and a polished design that respects your chosen theme.
    • Developers can instantly unlock certificates from the Settings → Developer panel for testing.
  • Export & Copy Certificates

    • Export certificates as images or copy them directly to the clipboard with a single click.
    • Visual feedback lets you know when the copy succeeds or if an error occurs.
  • Viva Exam Generation

    • After finishing a quiz, you can now generate a written “viva” exam that re‑uses the same questions and concepts, providing a seamless follow‑up assessment.
  • Inline Flashcard Editing

    • Edit flashcard questions and answers directly inside the deck manager modal. Changes are saved instantly, making it easy to keep your study material up‑to‑date.
  • Predicted Review Intervals

    • While reviewing flashcards, each rating button now shows the estimated next review time (e.g., “1 d”, “3 mo”), helping you understand the impact of your rating choices.

🚀 Improvements

  • Flashcard UI Refresh

    • Updated layout and styling for a cleaner, more readable flashcard experience.
    • Added a top bar with file‑type indicators and quick‑action buttons on notebook cards.
  • Certificate UI & Accessibility

    • Refactored colors to use theme tokens and improved contrast for better accessibility.
    • Added error handling and alerts for clipboard copy failures.
    • Simplified navigation between quiz and assessment pages, preserving the flashcardsPending flag only when needed.
  • Consistent Styling

    • Unified border styles using the outline-variant token across the app.
    • Introduced a design‑rule check to prevent low‑contrast pastel text.
  • Developer Experience

    • Replaced native confirmation dialogs with a custom dialog component for a consistent look and feel.

🐛 Bug Fixes & Issue Resolutions

  • Fixed clipboard copy errors on the certificate modal, now showing a clear alert and auto‑reset timer when copying fails.
  • Resolved navigation glitches that could cause redundant flashcard generation when moving from quizzes to written assessments.
  • Corrected quiz task ID handling to ensure proper redirection to the examiner view.

Thanks for using Studyloop!

Release v1.14.0

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 30 Sep 09:33

✨ Features

  • Floating Study Pet Companion

    • A draggable, animated pet that follows you around the app.
    • Choose from multiple skins and customize its behavior from the new Rewards Overview tab.
    • Interactive speech bubbles let the pet give tips, encouragement, or respond to your actions.
    • Includes a hidden dev‑mode for extra fun controls.
  • Achievement Tiering & Claim System

    • Earn multi‑tier achievements and claim rewards (coins, items) directly from the Achievements view.
    • New “Claim” button and visual indicators for claimable tiers.
    • Celebratory confetti effects and enhanced milestone modals make each win feel rewarding.
    • Updated Rank Roadmap UI shows tier lock/unlock status more clearly.
  • Enhanced Settings Experience

    • Instant keyword search and filter rail for quick navigation to any setting category.
    • Dedicated RAG Settings panel with real‑time status badges (Active, Setting Up, Dormant) and a “Re‑index / Setup” button for manual vector‑embedding management.
    • New Privacy & Telemetry section gives transparent control over data collection.

🚀 Improvements

  • Dashboard Clarity – Updated subtitle on the Concept Rescue status banner for more precise information at a glance.
  • PDF Navigation – Internal links, bookmarks, and cross‑references now work reliably within PDFs.
  • Settings Loading State – Theme attributes no longer flicker while settings are loading, providing a smoother visual experience.
  • Floating Pet UI Polish – Refined design and resolved visual inconsistencies in the pet component and related modals.

🐛 Bug Fixes & Issue Resolutions

  • Prevented unintended theme changes during the Settings loading phase.
  • Fixed PDF internal‑link navigation to correctly jump to bookmarks and cross‑references.

Thanks for using Studyloop!

Release v1.13.0

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 29 Sep 14:22

✨ Features

  • Flashcards – A refreshed card library overview makes it easier to browse and manage your decks. Deleting FSRS‑based cards now includes an extra safety guard to prevent accidental loss.
  • Rewards Hub – Completely redesigned with a clear roadmap, new achievement badges, and celebratory milestones to keep you motivated.
  • PDF Reader – Clickable internal links are now supported, and a history back button lets you navigate PDF documents just like a web browser.

🚀 Improvements

  • User Interface polish
    • Added a subtle outline border to the flashcard session overlay for better visual separation.
    • Cleaned up redundant .currency-icon CSS and resolved design lint violations, bringing the UI fully in line with the latest DESIGN.md guidelines.
  • Tokenizer safety – Diagnostic prompt budgeting and built‑in safeguards help keep LLM interactions within token limits, reducing unexpected truncation.

🐛 Bug Fixes & Issue Resolutions

  • Authentication – The app now waits for the backend bridge to be ready before syncing Clerk sessions, preventing login hiccups.
  • Settings – Auto‑save is now guarded against premature triggers during the initial load, ensuring your preferences are stored correctly.
  • Reading flow – Force‑seeding of reading tasks works correctly when you continue after a quiz, eliminating stalls.

Thanks for using Studyloop!

Release v1.12.0

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 28 Sep 05:58

✨ Features

  • Profile‑scoped Settings – Each study profile now has its own word budget, queue rules, quiz settings, and theme. Switching profiles preserves its unique settings, with clear global‑scope badges. New profiles automatically clone the settings of the currently active profile.
  • Flashcard Deck Manager – A brand‑new UI for viewing and managing flashcards across notebooks and topics. See FSRS retention metrics, suspend or bulk‑suspend cards, delete cards, and get an overview of deck statistics.
  • Dynamic Reading Session Splitting – The “Complete Here” button lets you finish a reading task at any page while keeping quizzes and the queue intact.
  • Gamification Enhancements – Streak‑freeze inventory now has a cap, a 7‑day usage rate limit, and a cost of 150 coins.
  • Developer Tool – Revert Reading Sessions – A “Revert” action in the Reading Logs panel lets developers reset completed reading tasks back to an active state for testing or correction.

🚀 Improvements

  • Settings UI now shows loading states and better error handling when switching profiles.
  • Theme persistence is more reliable: the active theme is saved to user settings and localStorage, with automatic rollback on persistence errors.
  • Profile‑switcher dropdown styled using design‑system tokens for a cleaner look.
  • Global extensions badges are now normalized across the application.
  • Session management hardened with HMAC verification and grace‑period checks.
  • Prompt‑logging setting for the LLM now persists across app restarts.
  • Flashcard deck overview links are unified for consistent navigation.
  • “Complete Here” option is always displayed in the reader, even for multi‑page tasks.

🐛 Bug Fixes & Issue Resolutions

  • Fixed race conditions that could overwrite active‑profile settings when updating global settings.
  • Prevented accidental clobbering of profile‑specific settings during profile switches.
  • Added a dedicated mutation to persist the active profile ID independently, eliminating race‑related bugs.
  • Enforced ACTIVE task status to protect reading completion logic.
  • Resolved flashcard deck manager mutation errors and blocked review hotkeys while the modal is open.
  • Corrected pace calculations to prioritize profile‑specific target session words before falling back to user defaults.
  • Fixed theme rollback on persistence errors and standardized badge display.
  • Unified session persistence across authentication flows.
  • Persisted LLM prompt‑logging settings in SQLite across restarts.
  • Unified flashcard deck overview notebook‑topic links via a union query.
  • Various minor UI and backend stability fixes.

Thanks for using Studyloop!

Release v1.11.1

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 22 Sep 11:48

What's New

✨ Features

  • Installer & Fast‑Track Guidance
    The README now includes a direct installer link, step‑by‑step fast‑track remediation instructions, and detailed guidance for using Ollama.

🚀 Improvements

  • Consistent Flashcard Scheduling
    The initial flashcard due‑date logic has been simplified: every newly generated card now starts with a uniform 24‑hour (1 day) offset, making the calibration process more predictable and easier to understand. Documentation in doc/SCHEMA.md has been updated accordingly.

🐛 Bug Fixes

No bug fixes in this release.

🧹 Maintenance

  • Version bump to v1.11.1.

📦 Full Changelog

  • Simplified the due‑date calculation for flashcards to a fixed 24‑hour offset.
  • Updated schema documentation to reflect the new calibration approach.
  • Added installer link, fast‑track remediation steps, and Ollama usage guidance to the README.

Thanks for using Studyloop!

Release v1.11.0

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 20 Sep 08:25

What's New – v1.11.0

✨ Features

  • Database Backup & Recovery
    Introduced a robust backup system that creates atomic SQLite snapshots using VACUUM INTO, compresses them with gzip, and stores them safely. Users can now manually restore the latest backup directly from the Settings → Database & Recovery page, with clear status feedback and confirmation dialogs.

  • Enhanced Upgrade Button Tooltip
    The “Upgrade” deep‑button now displays a richer tooltip that explains the upgrade process in detail. A fallback message is also shown in the syllabus modal when upgrade information cannot be loaded.

🚀 Improvements

  • Flashcard Prompt Quality
    Refined the wording and structure of flashcard prompts for a clearer learning experience. Added documentation on backup retention policies to help users understand how long backups are kept.

  • Dashboard Refactor
    Extracted DashboardBanners and ProfileSwitcher into their own components, simplifying the main Dashboard code and improving maintainability.

  • General UI Polish
    Minor visual tweaks and accessibility enhancements across the application.

🐛 Bug Fixes

No bug fixes in this release.

🧹 Maintenance

  • Bumped project version to v1.11.0.
  • Updated release‑note templates and documentation for the previous release.

📦 Full Changelog

For a complete list of changes, see the commit history between the previous tag and v1.11.0.


Thanks for using Studyloop!

Release v1.10.0

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 19 Sep 09:34

What's New – v1.10.0

✨ Features

  • Real‑time update progress – The app now emits an update:progress event, showing download statistics (MB downloaded vs total) during updates.
  • Clear conversation button – Users can instantly wipe the current chat history with a single click.
  • Default retrieval scope – The reader now automatically searches within the current chapter, and quick‑action chips are available without emojis.
  • Enhanced clipboard support – Improved copying of session content and richer clipboard interactions.
  • Tutor style shortcuts – Direct, detailed, and Socratic tutoring modes can be toggled from the header for faster workflow.
  • Dynamic prompt logging – LLM prompt logs are now resolved automatically for both development and production environments.

🚀 Improvements

  • Chat component refactor – Switched to composable functions for state management, making the codebase cleaner and easier to maintain.
  • BaseIcon adoption – Replaced raw emojis across the UI with the new BaseIcon SVG component, delivering a consistent visual language and fixing several prop mismatches (e.g., custom-class).
  • Icon registry expansion – Added a comprehensive set of SVG icons (grid, flame, alert‑triangle, gift, cloud, etc.) and unit‑tested the BaseIcon component.
  • Responsive layout tweaks – Streamlined viewport and flexbox calculations for the reader and overall UI, ensuring a stable height on all devices.
  • Navigation enhancements – Integrated useRouter in Socratic views for smoother page transitions.

🐛 Bug Fixes

  • Fixed brittle viewport‑height calculations that caused layout glitches on certain screens.
  • Resolved chat flexbox height issues, improving responsiveness on mobile and desktop.

🧹 Maintenance

  • Updated the README with richer descriptions and a new retention‑loop diagram.
  • Added a design‑linter rule (EMOJI_HAS_SVG) and de‑duplicated smell detectors.
  • Introduced linting and testing scripts for the new BaseIcon implementation.

📦 Full Changelog

View all changes

Thanks for using Studyloop!

Release v1.9.0

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 18 Sep 08:55

What's New – v1.9.0

✨ Features

  • Robust Clipboard Export – A new clipboard utility now falls back to execCommand when the modern navigator.clipboard API is unavailable (e.g., inside iframes).
  • YouTube Session Exports – Exported sessions include human‑readable timecodes (mm:ss / hh:mm:ss) instead of raw page numbers.
  • Improved Notebook Title Resolution – The reader now correctly picks up titles supplied by bundles, fixing edge‑case naming issues.
  • Timezone‑Aware Scheduling – Review tasks and due‑card counts respect the user’s local day‑boundary rather than UTC, with a new clientEndOfDayUnix helper and optional timezone offsets throughout the scheduling API.
  • Settings Repository & Vector Storage – Added a dedicated settings store (active profile, RAG status, etc.) and expanded vector handling with batch embedding updates and a new vec0‑based search table.
  • Cross‑Profile Dashboard Badges – The profile switcher now shows pacing badges and task counts for each profile, giving a quick overview of progress across multiple study profiles.
  • AI‑Powered Quiz Diagnostics – New diagnostic view surfaces why AI‑generated quiz questions failed, helping users understand and improve content quality.
  • Quiz Performance Analysis UI – Detailed breakdown of quiz results by topic clusters, score percentages, and failed questions, plus a “Detailed Performance Breakdown” button to navigate to the analysis page.
  • Audio Overview Range Selector – Reader now offers a dropdown to select audio playback ranges (full session, current page to end, or custom range).

🚀 Improvements

  • Page Navigation Logic – Refined effectiveMinPage / effectiveMaxPage handling for smoother navigation and removed redundant calculations.
  • Reader Base Hook – Enhanced useReaderBase to better resolve titles from bundled content.
  • Backend Topic Bundle Handling – Fixed GetReaderTopicBundle to correctly process raw content for YouTube and other file types.
  • Quiz Cluster & Analysis State – Adjusted front‑end handling of quiz cluster ranges and analysis state for more reliable results.

🐛 Bug Fixes

  • Fixed backend review‑related queries, diagnostics, vector handling, and telemetry issues.
  • Resolved frontend quiz cluster range calculations and pacing errors.
  • Enabled free seeking and a one‑time soft pause in the YouTube player for smoother playback control.
  • Prevented telemetry data from being sent to production endpoints during test runs.

🧹 Maintenance

  • Added database migrations for the new settings repository and study profile schema.
  • Refactored profile‑scoped query helpers into study_queue_queries.go.
  • Cleaned up unused imports, improved error handling, and updated integration tests across the codebase.

📦 Full Changelog

View the complete commit history for v1.9.0


Thanks for using Studyloop!

Release v1.8.1

Choose a tag to compare

@Vishnuj-n Vishnuj-n released this 16 Sep 09:52

What's New

✨ Features

  • Benchmark suite for flashcards – Added a new benchmark suite to evaluate flashcard generation performance and quality.

🚀 Improvements

  • Cross‑platform OpenDataDirectory – The command now works reliably on Windows, macOS, and Linux.
  • Test script hygiene – Added go:build ignore directives and resolved lint warnings in test scripts, improving CI stability.

🐛 Bug Fixes

  • Flashcard bias mitigation – Fixed a misconception bias in flashcard generation that could produce misleading study material.
  • OpenDataDirectory edge‑case handling – Resolved failures caused by platform‑specific edge cases.

🧹 Maintenance

  • Updated release notes for the previous v1.8.0 release.
  • Version bump to v1.8.1.

📦 Full Changelog

View all changes in the repository

Thanks for using Studyloop!