As a user, I want the backend to accurately evaluate both basic arithmetic and advanced scientific expressions via a REST API. Implement FastAPI endpoints (POST /api/calculate) accepting an expression string and returning the computed result. Handle edge cases (division by zero, invalid expressions) gracefully. Supports the Calculator page.
As a user, I want the backend to handle unit conversions accurately via a REST API. Implement FastAPI endpoints (POST /api/convert) supporting length, weight, temperature, and INR currency conversions. Return the converted value with appropriate formatting. Supports the Converter page.
As a user, I want the scaffold pages to look exactly identical to the mock-design pages. Apply the wild-calculator color palette (light/dark modes, blue accents, teal/white dark accents), global typography, button styles, layout structure, and remove any scaffold pages not present in the design (login, signup, welcome, dashboard sub-pages). All five designed pages (Home v2, History v2, Settings v2, Calculator v2, Converter v2) must match the JSX designs pixel-perfectly. This task is independent of all other tasks and must be completed first.
As a user, I want my theme and appearance preferences to be saved so they persist across sessions. Implement FastAPI endpoints (GET /api/preferences, PUT /api/preferences) backed by MySQL to store the selected theme mode (light/dark) and color palette choice per user/session. Supports the Settings page.
As a user, I want to get natural-language explanations and step-by-step breakdowns of my calculations powered by GPT 5.2. Integrate Langchain and Litellm on the backend (POST /api/ai/explain) so that when a user requests an explanation of a result on the Calculator or History page, the AI returns a friendly, easy-to-understand response.
As a user, I want to land on an engaging Home page that showcases the wild-calculator concept. Implement the Home (v2) JSX design: display the calculator interface as a glowing artifact with animated jungle vines/leaves, floating numbers/symbols like fireflies, and clear entry points to the Calculator, Settings, and History pages. Ensure smooth micro-interaction animations and the signature 'mathematical jungle' aesthetic as per the v2 design.
As a user, I want to customize my calculator experience on the Settings page. Implement the Settings (v2) JSX design: provide toggles for light/dark mode with a ripple-effect transition, a color theme picker (default, teal, orange, green, purple), and appearance options. Accessible from the Home page and Calculator page.
As a user, I want my calculation history to be persisted and retrievable via a backend API. Implement FastAPI endpoints (GET /api/history, DELETE /api/history, DELETE /api/history/{id}) backed by MySQL. Store each calculation with its expression, result, and IST timestamp. Supports the History page.
As a user, I want to use a fully functional Calculator page for both basic arithmetic (addition, subtraction, multiplication, division) and advanced scientific functions (trigonometry, logarithms, exponents). Implement the Calculator (v2) JSX design with button bounce micro-interactions, glowing calculation trails, and clear/reset functionality. Navigates from Home and links to History and Converter.
As a user, I want to convert between units (length, weight, temperature) on the Converter page. Implement the Converter (v2) JSX design: allow users to select a unit type, enter a value, and view the converted result. Navigate to from the Calculator page and link back. INR currency formatting available as a conversion option.
As a user, I want to discover a hidden 'wild mode' that transforms the calculator into a playful, animated experience with sound effects and quirky animations (e.g., numbers turning into animals momentarily). Implement the Easter Egg trigger (e.g., a specific key sequence) on the Calculator page and build the animated overlay experience.
As a user, I want to view and manage my calculation history on the History page. Implement the History (v2) JSX design: list all past calculations in chronological order (IST timezone), support clearing individual entries or the entire history, and link back to the Calculator page. The page should reflect the current theme (light/dark).
As a user, I want to use the wild-calculator offline after the initial download without any degradation in basic functionality. Implement Progressive Web App (PWA) service workers, manifest, and caching strategies on the React frontend so that the Calculator page and core assets are available offline.

No comments yet. Be the first!