Homework 4: AI Reel Maker with AI Chat Tools

In this assignment, you will add features and AI chat tools to a reel generator app.

Clone the reel maker app ([GitHub]), then implement the following features:

Important Tool Requirement: For every Chat Tool implemented (Tasks 4-7), you must explicitly define and describe its purpose in public/chat_prompt.txt. This helps the AI understand what tools are available to it.

Task Instructions

  1. Smart Chat Context: Load the generated script (descriptions and narrations for every scene) into the chat context. The AI should be able to reference and suggest improvements to the specific content of your movie. Test the chat tool by generating a movie script and asking it to suggest improvements to the generated script.
  2. Translation Feature (UI): Add a translation suite to the scene editor:
    • A dropdown menu to select target languages.
    • A "Translate" button that triggers AI translation of all narrations.
    • A toggle switch to view the "Original" vs. "Translated" text in the text boxes.
    • Include language options from all human-inhabited continents. Points will be deducted if you miss a continent.
  3. YouTube Metadata Suite (UI): Create a YouTube metadata section with:
    • Title & Description: Buttons to generate (with AI) a YouTube Title and Description for the movie. Display the title and description in the UI. Ensure the AI uses the script and images as context to generate them.
    • Thumbnail: A dropdown for image model selection (cheap or expensive model), a Generate Image button, and a display for the resulting image. Ensure the AI uses the script and images as context to generate the image.
  4. Chat Tool: translateNarrations: Create a chat tool that allows the user to translate the narrations via chat and update the narration boxes with the translated text.
  5. Chat Tool: generateYouTubeTitle: Create a chat tool that generates a catchy title based on the script and images as context via chat.
  6. Chat Tool: generateYouTubeDescription: Create a chat tool that generates a description based on the script and images as context via chat.
  7. Chat Tool: generateYouTubeThumbnail: Create a chat tool that generates a thumbnail image based on the script and images as context via chat.

Make sure each YouTube chat tool displays the output in the app.

Submission Checklist

Zip ONLY the following into hw4.zip. Submitting node_modules will result in a heavy penalty. Ensure your zip file is not too large.

Grading Breakdown (100 Points)

Task ComponentPointsRequirement
1. Smart Context15Full script is passed to chat; AI can answer questions about specific scenes.
2. Translation UI20Dropdown, AI-logic for translation, and Original/Translated toggle all functional. Languages from all human-inhabited continents are included.
3. YouTube UI Suite20Title, Description, and Thumbnail generation buttons work and display results in the UI.
4. Translation Chat Tool15Tool is functional and is defined in code and mentioned in public/chat_prompt.txt.
5. YouTube Chat Tools20Title, Description, and Thumbnail tools are functional, defined in code, mentioned in public/chat_prompt.txt, use the script and images as context, and display output in the app.
6. Proper Submission10Zip contains only public/chat_prompt.txt and the complete src/ directory.