Skip to content

Multi-agent system that syncs GitHub, Notion, and LinkedIn to reduce context switching for devs.

License

Notifications You must be signed in to change notification settings

yugjindal22/Contexa-AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contexa 🚀

AI-Powered Context Assistant for GitHub, LinkedIn, and Notion Integration

Contexa is an intelligent assistant that analyzes and provides insights from your GitHub repositories, LinkedIn profile, and Notion pages using advanced AI capabilities. Built with React, FastAPI, and Google's Generative AI.

✨ Features

  • Multi-Platform Integration: Connect GitHub, LinkedIn, and Notion accounts
  • AI-Powered Analysis: Leverage Google's Generative AI for intelligent content analysis
  • Interactive Chat Interface: Ask questions about your connected data sources
  • Real-time Search: FAISS-powered vector search for fast information retrieval
  • Modern UI: Beautiful, responsive interface built with React and Tailwind CSS
  • Secure Authentication: Firebase-based user authentication and data management

🛠️ Tech Stack

Frontend

  • React 19 with Vite for fast development
  • Tailwind CSS for modern styling
  • Heroicons and React Icons for UI elements
  • Axios for API communication
  • React Markdown for rich text rendering

Backend

  • FastAPI for high-performance API
  • LangChain for AI orchestration
  • Google Generative AI for content analysis
  • FAISS for vector similarity search
  • Firebase Admin for authentication
  • Notion Client for Notion integration
  • PyGithub for GitHub API integration

🚀 Quick Start

Prerequisites

  • Python 3.8+
  • Node.js 16+
  • Firebase project with credentials
  • Google AI API key

Backend Setup

  1. Navigate to backend directory

    cd backend
  2. Create and activate virtual environment

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
  3. Install dependencies

    pip install -r requirements.txt
  4. Configure environment variables Create a .env file in the backend directory:

    GOOGLE_API_KEY=your_google_ai_api_key
    FIREBASE_CREDENTIALS_PATH=./FireBase_Config.json
  5. Add Firebase credentials Place your FireBase_Config.json file in the backend directory

  6. Run the server

    uvicorn app.main:app --reload

Frontend Setup

  1. Navigate to frontend directory

    cd frontend
  2. Install dependencies

    npm install
  3. Start development server

    npm run dev
  4. Build for production

    npm run build

📁 Project Structure

Contexa/
├── README.md
├── .gitignore
├── backend/
│   ├── app/
│   │   ├── main.py              # FastAPI application entry point
│   │   ├── routes/              # API route handlers
│   │   │   ├── ai_routes.py     # AI processing endpoints
│   │   │   ├── chat_routes.py   # Chat functionality
│   │   │   └── github_routes.py # GitHub integration
│   │   └── utils/               # Utility modules
│   │       ├── ai_utils.py      # AI processing utilities
│   │       ├── firebase_utils.py # Firebase operations
│   │       ├── github_service.py # GitHub API service
│   │       └── notion_utils.py   # Notion API service
│   ├── requirements.txt
│   └── README.md
└── frontend/
    ├── src/
    │   ├── App.jsx              # Main React component
    │   ├── main.jsx             # React entry point
    │   └── index.css            # Global styles
    ├── package.json
    └── README.md

🔌 API Endpoints

AI Routes

  • POST /api/analyze - Analyze content using AI
  • POST /api/chat - Interactive chat functionality

GitHub Routes

  • POST /api/github/analyze - Analyze GitHub repositories
  • GET /api/github/repos - Fetch user repositories

Chat Routes

  • POST /api/multi-agent-chat - Multi-agent conversation
  • GET /api/chat-history - Retrieve chat history

🔒 Security Features

  • Environment variable configuration for sensitive data
  • Firebase authentication integration
  • Secure token management
  • CORS configuration for cross-origin requests
  • Input validation and sanitization

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

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

🙏 Acknowledgments

  • Google's Generative AI for powerful content analysis
  • LangChain for AI orchestration capabilities
  • FastAPI for the robust backend framework
  • React team for the excellent frontend library

📧 Contact

For questions, suggestions, or collaboration opportunities, feel free to reach out!


Built with ❤️ for intelligent context management

About

Multi-agent system that syncs GitHub, Notion, and LinkedIn to reduce context switching for devs.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors