This guide will help you set up and run the AI Academic Assistant.
- Python 3.7+
- Docker & Docker Compose (optional, for containerized deployment)
- Google Account with Calendar enabled
- Gemini API Key from Google AI Studio
# Navigate to project directory
cd Calendar-Agent
# Create virtual environment (Windows)
python -m venv venv
.\venv\Scripts\activate
# Create virtual environment (macOS/Linux)
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt- Visit Google AI Studio
- Create an API key
- Create
.envfile in project root:
GEMINI_API_KEY=your_api_key_hereSee Configuration Guide for detailed OAuth setup.
Quick steps:
- Create OAuth client in Google Cloud Console
- Download
credentials.json - Place in project root
- Run authentication:
python authenticate.pyThis will open a browser to authorize calendar access and create token.json.
python app.pyAccess at: http://localhost:5001
# Build and start
docker-compose up -d --build
# View logs
docker-compose logs -f academic-assistant
# Stop
docker-compose down- Navigate to
http://localhost:5001 - Click "Create one" to register
- Enter email and password
- Click "Sign Up"
Type in the scheduler input:
"Schedule a study session tomorrow at 2pm for 2 hours"
Click "Schedule" and watch the AI create your event!
- The interactive calendar shows all your Google Calendar events
- Click events to view details or delete them
- Today's tasks appear in the checklist on the left
"Meet with professor tomorrow at 10am"
"Schedule dentist appointment Friday at 2pm"
"Add team meeting next Monday at 3pm for 1 hour"
"Work on ECEN 380 homework, due Friday"
"CS project deadline next week"
"Study for math exam on Thursday"
"Delete all side project events"
"Remove all meetings next week"
"Delete events with 'test' in the title"
"ECEN 380 homework takes 4-5 hours"
"Lab reports typically need 2 hours"
"CS projects require 8 hours"
- Learn about all features - Explore conflict resolution, task splitting, and more
- Configure advanced settings - Customize your deployment
- Troubleshoot issues - Solve common problems
✅ Be specific with times: "tomorrow at 2pm" works better than "tomorrow afternoon"
✅ Provide context: "ECEN 380 homework due Friday" helps the AI schedule better
✅ Use duration learning: Teach the AI once, benefit forever
✅ Review before confirming: Intelligent delete shows preview before deletion
✅ Check calendar sync: Events appear in both the app and Google Calendar