Skip to content

Emart29/ai-agent-toolbox

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 AI Agent Toolbox

A full-stack AI agent application with multiple tools including calculator, weather, web search, notes, and datetime utilities. Built with FastAPI backend and React frontend.

License Python Node

✨ Features

  • 🧮 Calculator - Mathematical operations and currency conversions
  • 🌤️ Weather - Real-time weather information via OpenWeatherMap
  • 🔍 Web Search - Internet search using Tavily/SerpAPI
  • 📝 Notes - Persistent note storage and retrieval
  • 🕐 DateTime - Time and date operations with timezone support
  • 💬 Conversational AI - Powered by Groq (Llama 3.3 70B)
  • 🎨 Modern UI - Clean, responsive React interface with Tailwind CSS

🚀 Quick Start

Prerequisites

Installation

1. Clone the repository

git clone https://github.com/Emart29/ai-agent-toolbox.git
cd ai-agent-toolbox

2. Run setup script

Windows:

setup.bat

Linux/Mac:

chmod +x setup.sh
./setup.sh

3. Configure API keys

Edit backend/.env and add your API keys:

GROQ_API_KEY=your_groq_api_key
TAVILY_API_KEY=your_tavily_api_key
OPENWEATHER_API_KEY=your_openweather_key
# ... other keys

4. Start the application

Terminal 1 - Backend:

cd backend
source venv/bin/activate  # Linux/Mac
# or: venv\Scripts\activate  # Windows
uvicorn app.main:app --reload

Terminal 2 - Frontend:

cd frontend
npm run dev

5. Open your browser

Visit: http://localhost:5173

📋 Configuration

Required API Keys

  1. Groq API (Required) - https://console.groq.com/keys

    • Free tier available
    • Used for LLM inference
  2. Tavily API (Required) - https://tavily.com/

    • Free tier: 1000 searches/month
    • Primary web search provider

Optional API Keys

  1. OpenWeatherMap - https://openweathermap.org/api

    • Free tier: 1000 calls/day
    • For weather information
  2. Fixer.io - https://fixer.io/

    • Free tier: 100 requests/month
    • For currency conversion
  3. SerpAPI - https://serpapi.com/

    • Free tier: 100 searches/month
    • Fallback web search

🏗️ Architecture

┌─────────────────────────────────────────┐
│         React Frontend (Vite)           │
│  - Chat Interface                       │
│  - Real-time Updates                    │
│  - Responsive Design                    │
└─────────────────────────────────────────┘
                  ↕ HTTP/REST
┌─────────────────────────────────────────┐
│       FastAPI Backend Server            │
│  - RESTful API                          │
│  - CORS Middleware                      │
│  - Request Validation                   │
└─────────────────────────────────────────┘
                  ↕
┌─────────────────────────────────────────┐
│        AI Agent Orchestrator            │
│  - LangChain Integration                │
│  - Tool Selection                       │
│  - Response Generation                  │
└─────────────────────────────────────────┘
                  ↕
┌─────────────────────────────────────────┐
│            Tools Layer                  │
│  Calculator | Weather | Web Search     │
│  Notes | DateTime                       │
└─────────────────────────────────────────┘

🛠️ Tech Stack

Backend

  • FastAPI - Modern Python web framework
  • LangChain - AI agent framework
  • Groq - LLM API (Llama 3.3 70B)
  • SQLAlchemy - Database ORM
  • Uvicorn/Gunicorn - ASGI server

Frontend

  • React 19 - UI library
  • Vite - Build tool
  • TanStack Query - Data fetching
  • Tailwind CSS - Styling
  • Radix UI - Component primitives
  • Axios - HTTP client

📖 Documentation

📦 Deployment

The application is ready to deploy to:

  • ✅ Heroku
  • ✅ Railway
  • ✅ Google App Engine
  • ✅ AWS EC2 / DigitalOcean VPS
  • ✅ Vercel (frontend)
  • ✅ Netlify (frontend)

See deploy.md for detailed instructions.

🔒 Security

  • API keys stored in environment variables
  • CORS configured for specific origins
  • Input validation on all endpoints
  • HTTPS ready for production
  • Security headers configured

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

👤 Author

Emmanuel Nwanguma

🙏 Acknowledgments


Built with ❤️ using FastAPI and React

About

A full-stack AI agent application

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published