- Jazmin Carlos
- Cedar Hudgens
- Check in Demo: https://www.youtube.com/watch?v=kytr02STaDs
- Final Demo: https://www.youtube.com/watch?v=EDmgZXrFrrE
The Interactive Storytelling Application uses AI to create stories based on what the user writes or chooses. Users can pick a genre, make characters, and shape the world of their story. The app can build different types of stories and let users save or export them.
- Genre selection (Horror, Romance, Fantasy, SciFi)
- Save / export stories
- Length Selection (Short, Medium, Long)
- Complexity selection (Child friendly, Average, Difficult)
- Pace selection (Slow, Normal, Fast)
- Perspective selection (1st or 3rd)
- Added Prompts for Setting, Tone, Time Period
- Ability to ask for specific characters
- Fully functional GUI
- Strategy Pattern - Multiple story generation strategies.
- Horror, Romance, Fantasy, SciFi
- Factory Pattern - Centralizes the creation of StoryStrategy objects based on the user's selected genre (e.g., automatically creates a FantasyStrategy instance when 'Fantasy' is chosen).
- Observer Pattern - Ui updates when story and/ or model changes
- Singleton Pattern - Configuration manager or API rate limiter
- Get API key from Open API
- Update "sample.config.properties" with the API key and API URL.
- Change name to "config.properties"
- Java 11 or higher
- Dependencies:
- org.json (20231013)
- okhttp 4.12.0
- JUnit 4.13 (unit tests)
- Mockito 5.21.0 (unit tests)
- OpenAI API key
- Clone repository
- Edit sample.config.properties as described above.
- Go To main.java.TerminalTest
- Run the current file
- Clone repository
- Edit sample.config.properties as described above.
- Go To main.java.Main
- Run the current file