← Back to Home

Changelog

Last Updated: March 31, 2026

1.3.5

New Features

  • Custom topics: Enter your own desired topic(s) for questions
  • Added AP Spanish support

Fixes

  • Bug fixes

Security

  • Security hardening
  • Refactored Content Security Policy (CSP) handling for Svelte

1.3.4

New Features

  • Added a stats API and a new stats page at /stats

Fixes

  • Fixed UI inconsistencies across various pages

Removals

  • Removed incorrect reference sheets

1.3.3

New Features

  • Added enhancements to the calculator experience
  • Improved reference sheets with better navigation and display

Improvements

  • Optimized code for better performance and reuse across components
  • Refined FRQ handling with slight quality improvements

1.3.2

Improvements

  • Questions now rarely repeat the same topics within a unit
  • Improved mobile responsiveness for blog posts
  • Added quick actions to blog posts
  • Improved styling of the about page

1.3.1

New Additions

  • Added a blog with 4 articles so far
  • Added an about page

Improvements

  • Fixed mobile responsive design on the topbar and sidebar
  • Fixed inconsistent design for logged in users
  • Improved accessibility with better ARIA attributes and keyboard navigation
  • Improved consistency of UI elements across pages, including buttons and links
  • Improved SEO optimization with better meta tags and structured data

1.3.0

Major Changes

  • Migrated project to SvelteKit while keeping compatible APIs

New Features

  • Added a new dashboard for loggin in users including a home, practice, progress and settings page
  • Added alpha support for FRQs for logged in users, does not affect progress statistics yet

Improvements

  • Optimized SvelteKit integration for faster page loads and better routing
  • Fixed awkward UI for practicing questions on mobile devices

1.2.2

Changes

  • Added more settings options for a better user experience
  • Improved code security across the application

Warning

  • Version 1.3.0 will migrate the project to SvelteKit while keeping compatible APIs

1.2.1

Fixes

  • Fixed UI errors and topbar consistency across pages
  • Fixed no settings button when not logged in
  • Fixed questions not being saved properly

Changes

  • Code now renders using highlight.js with tokyo night theme
  • Icons changed to consistent solid svgs

Improvements

  • Optimized more code, and also cleaned it up
  • Improved prompting for tutor responses, prohibiting it from giving answers
  • 404 error directs to "Not Found" page

Technical

  • Changed server security to helmet.js
  • Changed request logging to use the structured server logger

1.2.0

Changes

  • Project is now Open-Source, repo at github.com/5cisummai/freeappractice
  • Added optional cookies for analytics features that improve this site

Improvements

  • Optimized backend code, removing depricated features
  • Updated node modules to lastest versions

1.1.1

Fixes

  • Fixed UI errors and topbar consistency across pages
  • Improved SEO optimization across pages

1.1.0 - Update

New Features

  • User accounts: track progress and stats across devices
  • New AI Tutor: interactive assistant to help with questions and explanations

Fixes

  • Bug fix for question progress tracker
  • Mobile responsiveness fixes
  • Theme consistency and messy UI fixes
  • Fixed question caching consistency

Improvements

  • Greatly improved question generation accuracy
  • Performance improvements with dynamic JS loading and HTML components model

Technical

  • Server logging improved for better diagnostics and observability
  • Every-question storage now backed by AWS S3 (durable, searchable storage)
  • Updated privacy handling for account data and S3 storage guidance
  • Dependency and build improvements to reduce runtime module issues

1.0.2

Fixes

  • Fixed critical bug that prevented user from getting questions

Improvements

  • Fixed theme consistency across pages
  • Fixed UI consistency across pages.
  • Focus Mode UI improvements

1.0.1

Improvements

  • Fixed mobile responsiveness.

1.0.0 - Stable Release

Major Features

  • Intelligent hybrid caching system: Instant first question from database cache, fresh AI-generated questions for subsequent requests
  • Smart prefetch system: Next question pre-generates in the background while you review the current one
  • Enhanced question variety: Each new question uses a random unit selection for maximum diversity
  • MongoDB question cache with automatic background refresh
  • Seamless provider fallback: Automatically switches from local to OpenAI if local model fails

Performance Improvements

  • First question now loads instantly from pre-cached database
  • Subsequent questions appear instantly from client-side prefetch cache
  • Background refresh keeps database cache up-to-date without blocking user requests
  • Optimized API architecture with service layer separation
  • Rate limiting (20 req/min) for OpenAI provider to manage costs

Bug Fixes

  • Fixed MongoDB connection errors with deprecated options
  • Resolved provider variable scope issues in error handling
  • Fixed LaTeX rendering issues with proper JSON escaping
  • Corrected cache key behavior when switching between classes/units

Technical Details

  • Refactored API to accept className and unit parameters directly
  • Implemented skipCache parameter for prefetch vs initial request control
  • Database cache always uses OpenAI for consistent quality
  • Client-side hasShownFirstQuestion flag for session state management
  • Unit range handling now correctly picks random units for variety

Warnings

  • Some cached questions may be of lower quality as they were generated with earlier, less refined prompts. New questions generated after this update will use the latest improved prompts for better accuracy and relevance.
  • Some cached questions may contain formatting issues due to previous JSON escaping bugs. New questions will have correct formatting.

0.9.4 - Beta

Improvements

  • Questions are now more accurate per class and per unit
  • More data for questions to be created on

Changes

  • Added Advertisements to run when ever it is not testing times

0.9.3 - Beta

Fixes

  • Changelog page now follows the correct color theme
  • Settings button now toggles the setting modal rather than just opening it

Changes

  • More complex subjects now use gpt-5-mini instead of o4-mini
  • Order of elements in footer changed

Improvements

  • New show/hide button for the progress sidebar
  • How to use section now more interactive

0.9.2 - Beta

Changes

  • Removed info about AI provider while a question is showning

Improvements

  • Improved prompt wording to enhance formatting in answer choices and explanations
  • Added a "Show Explanation" toggle for referring back to explanations

0.9.1 - Beta

Improvements

  • Improved unit selection logic for "All Units" and custom range modes
  • Questions now randomly select a single unit from the range instead of trying to cover multiple units
  • Better question quality by focusing on specific unit content

0.9.0 - Beta

Initial Release

  • Launch of FreeAPPractice.org (Beta)
  • Support for 20+ AP subjects
  • AI-powered question generation
  • Dual provider support: Local (LM Studio) and OpenAI
  • Real-time feedback and detailed explanations
  • Customizable theme (Light/Dark/System)
  • Local progress tracking
  • Focus Mode for distraction-free practice
  • Customizable unit range selection with range slider
  • Progress tracking sidebar showing performance metrics
  • Math rendering with KaTeX for equation display
  • Code syntax highlighting with Highlight.js
  • Question caching for improved performance
  • Responsive design for mobile and desktop devices
  • Comprehensive FAQ and documentation
  • Bug report feature for user feedback
  • Privacy-focused design with local data storage