Scope of Work – Concise SummaryDecks Implement complete proficiency-score logic based on study results, card scores, and percentage calculation. Build full study-mode logic: randomized card order, card counters, non-repeating “Easy” cards, repeating other difficulties until completion, and a final completion popup. Update card difficulty buttons and logic. Add UI improvements: auto-hide previews, remove timer audio, reverse numbering, reveal text box on click.Assignments Add list functionality within Kanban. Add submit confirmation and related rules. Add filter for complete/incomplete items.Tasks Add submit confirmation and rules. Add filter for complete/incomplete items. Add Kanban view.Notes Add a new Notes tab with a WYSIWYG editor. Remove the preview column.Courses Add auto-filter functionality to the search bar.Calendar Add sorting options and new view modes.General UI Add expandable columns.Design Updates Rename/recolor the preview button. Add end-markers to Kanban columns.Bug Fix Resolve the card-flip issue in Decks. Tech Stack (Concise Overview) Backend: Ruby on Rails 8 (API + Server-rendered views), PostgreSQL, Redis Frontend: Hotwire (Turbo + Stimulus), TailwindCSS, Flowbite UI components Rich Text Editing: ActionText (Trix) + integrated Quill editor Auth: Devise + Devise-JWT for secure user authentication Storage & Services: Cloudinary for file uploads, SendGrid for email, Stripe for payments Deployment Style: Standard Rails monolith with Turbo-driven interactivity, no SPA framework required Important Architectural Details (Extremely Concise) Project uses a modular Rails domain structure under the Planner:: namespace (Decks, Flashcards, Notes, Assignments, Tasks, Courses, Events). UI behavior is handled by Stimulus controllers + Turbo Streams for dynamic updating (e.g., flashcard slider, deck settings, Kanban interactions). Models are cleanly separated: Decks/Flashcards, Assignments, Tasks, Notes, Courses, Events each have controllers, models, and concerns. Rich text, uploads, and state changes rely on Rails-native systems (ActionText, ActiveStorage, enums). Contractor must extend existing patterns, not introduce new frameworks. All work must comply with your Service Agreement: Full IP transfer, no unapproved external code, consistent architecture, and maintainable Rails/Hotwire patterns.