You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As an educator, I want to generate engaging slide presentations for my class based on specific topics, text, or uploaded files so that I can save time and create visually appealing teaching materials tailored to my students' grade level and subject requirements.
The tool should allow users to:
Specify a grade level.
Define the number of slides (columns).
Input a topic for the presentation.
Provide standards/objectives using text input or file uploads.
Optionally include additional comments or customizations for the presentation.
Accept file uploads (one file per prompt) in supported formats:
Upload: CSV, PDF, DOCX, PPT, Plain Text
URLs: YouTube Video, Website, Google Sheets
Design
Acceptance Criteria
Feature Requirements:
Input Handling:
Users can specify a grade level from a dropdown menu (e.g., Pre-K to University).
Users can select the number of slides (columns) from a dropdown menu (e.g., 1 to 10).
Users can provide a topic for the presentation using:
Direct text input.
Users can input standards/objectives via:
Direct text input.
Document attachment (one file per prompt) in the following formats:
Upload: CSV, PDF, DOCX, PPT, Plain Text
URLs: YouTube Video, Website, Google Sheets
Users can optionally include additional comments or customizations via:
Direct text input.
Document attachment (one file per prompt) in the following formats:
Upload: CSV, PDF, DOCX, PPT, Plain Text
URLs: YouTube Video, Website, Google Sheets
Presentation Generation Logic:
The tool generates slide content based on the provided inputs, ensuring:
Slides are tailored to the topic and standards/objectives.
Content adheres to the specified grade level.
The tool structures the presentation logically, distributing content evenly across the number of slides.
Output Format:
The presentation is generated as text output detailing each slide's content. Additional improvement is to make the output downloadable slides in PPTX format.
Each slide includes:
A heading or title.
Content relevant to the provided topic and grade level.
Optionally, visuals or prompts for additional engagement.
Technical Implementation:
Create a new folder within app/features/ named presentation_generator.
Implement the executor function in core.py with input parameters matching the tool's functionality, including type hints.
Use tools.py for abstractions and helper functions to keep core.py clean and maintainable.
Include a metadata.json file defining the input parameters for proper validation.
Utilize a prompt/ folder for AI-driven generation prompts if necessary.
Implement logging and error handling as per platform standards.
Unit Tests:
Write unit tests for all functions and classes in core.py and tools.py using PyTest.
Tests cover:
Normal operation with valid inputs.
Edge cases and invalid inputs.
Error handling and exceptions.
Code Quality and Documentation:
Ensure code follows best practices for readability and maintainability.
Use consistent naming conventions.
Include type hints for all functions and methods.
Avoid redundant or unnecessary code.
Add docstrings to all functions and classes explaining their purpose and usage.
Provide comments within the code where necessary to explain complex logic.
Integration and Testing:
Ensure the feature integrates seamlessly with the existing Marvel AI platform.
The executor function is compatible with the router.py layer for request handling.
Inputs are validated as per the platform's requirements.
Test the entire feature from input handling to output generation.
Verify that users can input their data and receive the expected outputs without errors.
Sample Input and Output
Input:
Grade Level: University
Number of Slides: 5
Topic: Introduction to Python Variables
Standards/Objectives: Refer to CS101_Introduction_to_Python_Variables.pdf
Additional Comments: None
Output:
Slide
Content
Slide 1
Introduction to Python: Variables and Data Types
Slide 2
What is a Variable? - A container for storing data values in Python - Can hold various data types - Can be reassigned Example: x = 5 assigns value 5 to variable x.
Slide 3
Data Types in Python - Integers (int): Whole numbers - Floats (float): Numbers with decimal points - Strings (str): Text enclosed in quotes - Booleans (bool).
Slide 4
Declaring and Using Variables - Use descriptive names - Stick to lowercase with underscores - Avoid starting with numbers or special characters. Example: age = 20.
Slide 5
Hands-on Exercise Write a program that: - Assigns values to variables name, age, and grade - Prints these variables in a sentence. Example: name = "Alice".
Develop Presentation Generator Tool
Description
As an educator, I want to generate engaging slide presentations for my class based on specific topics, text, or uploaded files so that I can save time and create visually appealing teaching materials tailored to my students' grade level and subject requirements.
The tool should allow users to:
Design
Acceptance Criteria
Feature Requirements:
Technical Implementation:
app/features/
namedpresentation_generator
.executor
function incore.py
with input parameters matching the tool's functionality, including type hints.tools.py
for abstractions and helper functions to keepcore.py
clean and maintainable.metadata.json
file defining the input parameters for proper validation.prompt/
folder for AI-driven generation prompts if necessary.Unit Tests:
core.py
andtools.py
using PyTest.Code Quality and Documentation:
Integration and Testing:
executor
function is compatible with therouter.py
layer for request handling.Sample Input and Output
Input:
Output:
- A container for storing data values in Python
- Can hold various data types
- Can be reassigned
Example:
x = 5
assigns value 5 to variablex
.- Integers (
int
): Whole numbers- Floats (
float
): Numbers with decimal points- Strings (
str
): Text enclosed in quotes- Booleans (
bool
).- Use descriptive names
- Stick to lowercase with underscores
- Avoid starting with numbers or special characters.
Example:
age = 20
.Write a program that:
- Assigns values to variables
name
,age
, andgrade
- Prints these variables in a sentence.
Example:
name = "Alice"
.Resources
Please ensure that each of these criteria is fulfilled for the issue to be considered complete.
The text was updated successfully, but these errors were encountered: