-
Notifications
You must be signed in to change notification settings - Fork 21
Description
As a developer working on the Adaptive Learning project, I want to integrate an intelligent Idea Generator module into the unified Panel-based user interface. This module will allow students to generate AI-powered project ideas by selecting a subject, grade level, and project type. The system will use GPT-4 to suggest project descriptions and DALL·E to generate representative images.
The new tab will be added to the panel_gui_tabs.py interface and should work independently while sharing the same unified layout.
Acceptance Criteria
- The Idea Generator tab appears in the Panel UI
- GPT-4 generates project titles, descriptions, and step-by-step instructions
- DALL·E generates and displays an image representing the idea
- Typing animation is applied to reveal the generated text
- A PDF export includes both the AI-generated content and image
- A loading spinner and message are shown while content is being generated
- Application runs via
python -m src.UI.panel_gui_tabswithout errors - Code is well-documented and reviewed by a peer or professor
Conditions of Satisfaction
Tab Structure
Condition: Idea Generator tab appears
Test: Launch app and check for tab label
Satisfaction: Tab is present and clickable
Agent & API Integration
Condition: GPT-4 and DALL·E handle idea and image generation
Test: Run multiple generations and observe results
Satisfaction: AI responses are appropriate and image appears correctly
Typing Animation
Condition: Idea content is revealed with animation
Test: Click “Generate Idea” and observe output
Satisfaction: Smooth, readable animated typing
PDF Export
Condition: Idea and image are exported as a PDF
Test: Click “Download PDF” and inspect content
Satisfaction: PDF includes formatted idea + embedded image
Independent Tab Operation
Condition: Tab works without interference
Test: Test Idea tab independently
Satisfaction: No cross-tab data issues or UI conflict
Peer Review
Condition: Code and functionality reviewed
Test: Share with peers/professor
Satisfaction: Positive feedback and no blockers
Definition of Done
- Idea Generator tab is functional and appears in
pn.Tabs()layout - Tab includes subject, grade, and project type selectors
- GPT-4 generates content with title, description, and steps
- DALL·E image is displayed after description
- Typing animation is visible during content display
- Download button exports content and image as PDF
- App runs locally without any errors
- All code is commented and reflected in
README.md - Peer or professor has reviewed and approved the submission
Tasks & Subtasks with Estimates (15 hours) #475
ALP.10.1 Create and Configure Idea Generator Tab (8 hours) #475
- ALP.10.1.1 Create
idea_generator_tab.py - ALP.10.1.2 Add dropdowns for subject, grade, and project type
- ALP.10.1.3 Use GPT-4 to generate project content
- ALP.10.1.4 Add animated text output for idea display
ALP.10.2 Add Image and PDF Export Logic (5 hours) #475
- ALP.10.2.1 Use DALL·E to generate an image from the idea prompt
- ALP.10.2.2 Display image between description and steps
- ALP.10.2.3 Add PDF export using
reportlabwith embedded image - ALP.10.2.4 Show loading spinner and generation message
ALP.10.3 Final Integration and Validation (2 hours) #475
- ALP.10.3.1 Import tab using
create_idea_generator_tab()inpanel_gui_tabs.py - ALP.10.3.2 Test full app for UI alignment and generation logic
- ALP.10.3.3 Add docstrings and update
READMEwith new tab usage