A full-stack AI agent web application that provides personalized wellness insights by analyzing your calendar, health logs, and daily context.
- Smart Calendar Integration: Sync with Google Calendar to analyze your schedule
- AI-Powered Insights: Get personalized wellness recommendations using Gemini AI
- Health Tracking: Log and track your health metrics
- Real-time Dashboard: View your daily timeline and AI recommendations
- Next.js 14 (App Router) with TypeScript
- Tailwind CSS for styling
- shadcn/ui components
- Google OAuth integration
- FastAPI with Python
- MongoDB Atlas for data storage
- Google Calendar API integration
- Gemini AI for intelligent analysis
valet/
├── frontend/ # Next.js application
│ ├── app/ # App Router pages
│ ├── components/ # Reusable UI components
│ ├── lib/ # Utilities and configurations
│ └── types/ # TypeScript type definitions
├── backend/ # FastAPI application
│ ├── app/ # FastAPI app and routes
│ ├── models/ # Data models
│ ├── services/ # Business logic
│ └── config/ # Configuration files
└── docs/ # Documentation
- Node.js 18+
- Python 3.9+
- MongoDB Atlas account
- Google Cloud Console project
-
Clone the repository
git clone <repository-url> cd valet
-
Frontend Setup
cd frontend npm install cp .env.example .env.local # Configure your environment variables npm run dev
-
Backend Setup
cd backend python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txt cp .env.example .env # Configure your environment variables uvicorn app.main:app --reload # On Different Port: uvicorn app.main:app --reload --port 8001
NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_GOOGLE_CLIENT_ID=your_google_client_id
MONGODB_URI=your_mongodb_atlas_uri
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
GEMINI_API_KEY=your_gemini_api_key
POST /calendar/sync- Sync Google Calendar eventsGET /calendar/events- Get user's calendar events
POST /agent/analyze- Analyze user context with Gemini AIGET /agent/recommendations- Get stored AI recommendations
POST /health/logs- Log health metricsGET /health/logs- Get health history
The application uses Gemini AI to provide:
- Schedule Analysis: Understand your daily commitments and stress levels
- Health Insights: Correlate health logs with calendar events
- Personalized Recommendations: Suggest wellness actions based on your context
- Contextual Awareness: Consider sleep, medication, and recent activities
- Timeline View: Visual representation of today's calendar events
- Health Summary: AI-generated health insights and recommendations
- Interactive Chat: Direct communication with the health agent
- Real-time Updates: Live sync with calendar and health data
- Google OAuth 2.0 for secure authentication
- MongoDB Atlas with proper access controls
- Environment variable protection for API keys
- CORS configuration for frontend-backend communication
MIT License - see LICENSE file for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
For support or questions, please open an issue in the repository.