Skip to content

An AI-powered interactive storytelling app for children where narrative adventures seamless blend with educational content. Where to go and what to learn? Your choice!

Notifications You must be signed in to change notification settings

DesmondChoy/adventures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

71 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Learning Odyssey

An AI-powered interactive storytelling app for children where narrative adventures seamless blend with educational content.
Go anywhere and learn anything - your imagination is the limit!

🚀 Try it live

  • Real-time WebSocket communication
  • Structured logging system
  • AI/LLM integration (Multi-provider support: OpenAI, Google Gemini)
  • Modern web interface with dynamic loading
  • Middleware stack for request tracking and logging

Tech Stack

  • Backend: FastAPI, Python 3.x
  • Frontend: HTML, CSS, WebSocket
  • Database: SQLAlchemy with SQLite
  • AI Integration:
    • OpenAI GPT-4o
    • Google Gemini
  • Logging: Structured logging with JSON format

Setup

  1. Clone the repository
  2. Create and activate a virtual environment:
    python -m venv venv
    source venv/bin/activate  # Linux/Mac
    # or
    .\venv\Scripts\activate  # Windows
  3. Install dependencies:
    pip install -r requirements.txt
  4. Create a .env file with required environment variables:
    # Choose one of these API keys based on your preferred provider
    OPENAI_API_KEY=your_openai_key
    GOOGLE_API_KEY=your_google_key
    
  5. Run the application:
    uvicorn app.main:app --reload

Project Structure

app/
├── main.py             # Application entry point
├── routers/            # API routes and WebSocket handlers
├── services/           # Business logic and LLM services
├── middleware/         # Custom middleware components
├── templates/          # HTML templates
├── static/             # Static assets (CSS, JS)
└── utils/              # Utility functions

Development

  • Run tests: pytest
  • View logs: Check logs/app.log
  • Development server runs on http://localhost:8000

About

An AI-powered interactive storytelling app for children where narrative adventures seamless blend with educational content. Where to go and what to learn? Your choice!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published