Skip to content
 
 

Repository files navigation

🤖 IvyAI - AI-Powered Development Platform

Hacktoberfest 2025 PRs Welcome License: MIT Next.js TypeScript

Your AI-powered coding companion that understands context, generates complete projects, and integrates seamlessly with GitHub.

IvyAI is a comprehensive AI development platform featuring 9 specialized AI agents powered by GPT-4o. From generating entire projects to reviewing PRs, managing repositories, and optimizing code - all through natural conversational interfaces.

🎯 Perfect for: Developers, teams, startups, and open-source contributors who want to 10x their productivity.

🎃 Hacktoberfest 2025

We're participating in Hacktoberfest 2025! This is a great opportunity to contribute to open source and earn swag. Check out our Hacktoberfest Issues to get started!

How to Participate

  1. 🍴 Fork this repository
  2. 🔍 Browse good first issues
  3. 🛠️ Pick an issue and comment that you're working on it
  4. 💻 Make your changes following our Contributing Guidelines
  5. 🚀 Submit a PR and wait for review
  6. 🎉 Get your PR merged and celebrate!

Read our CODE_OF_CONDUCT.md before contributing.


📸 Screenshots

Dashboard with 9 AI Agents

Dashboard

Chat Interface with Real Actions

Chat Interface

AI Playground

Playground

Note: Replace placeholder images with actual screenshots of your application


⚡ Features at a Glance

🤖 AI Agents 💬 Chat Interface 🔗 GitHub Actions 🎨 UI/UX
9 specialized agents Natural conversations Real API execution Modern, intuitive
GPT-4o powered Context-aware Create repos, files, PRs Dark mode support
Task-specific expertise Scrollable history Branch management Responsive design
Action execution Real-time responses Issue tracking Monaco editor

✨ Key Features

🤖 9 Specialized AI Agents (NEW!)

Each agent is a conversational AI expert that can execute real GitHub actions:

  1. 🚀 AI Project Generator - Build complete projects from ideas

    • Conversational project planning
    • Multi-framework support (Next.js, React, Vue, Django, etc.)
    • Generates all files: code, configs, docs, tests
    • Auto-deploys to GitHub with proper structure
  2. 🔍 PR Reviewer - Intelligent code review

    • Analyzes pull requests for bugs, security, performance
    • Posts detailed review comments
    • Suggests improvements and best practices
    • Quality scoring (1-10 scale)
  3. 🏗️ GitHub Repo Agent - Complete repository management

    • Create/delete repositories
    • Manage branches and files
    • Create pull requests
    • Handle issues and labels
    • Full GitHub API integration
  4. 💻 Code Generator - Production-ready code from descriptions

    • Natural language to code
    • Best practices and error handling
    • Type-safe and well-documented
    • Framework-agnostic
  5. ♻️ Code Refactor - Improve existing code

    • Modernize legacy code
    • Apply design patterns
    • Optimize structure
    • Maintain functionality
  6. 🧪 Test Generator - Comprehensive test suites

    • Unit tests with edge cases
    • Integration tests
    • Mocking and assertions
    • High coverage strategies
  7. 🔒 Security Scanner - Vulnerability detection

    • OWASP Top 10 checks
    • Dependency scanning
    • Code pattern analysis
    • Fix recommendations
  8. 📚 Documentation Generator - Auto-generate docs

    • API documentation
    • README files
    • Inline comments
    • Usage examples
  9. ⚡ Performance Optimizer - Speed up your code

    • Identify bottlenecks
    • Optimize algorithms
    • Reduce bundle size
    • Improve load times

💬 Chat-First Interface

  • Natural Conversations - Talk to agents like teammates
  • Context-Aware - Agents remember your project details
  • Action Execution - Not just suggestions, real GitHub actions
  • Progress Tracking - See actions execute in real-time
  • Scrollable History - Review past conversations

💻 AI Playground

  • Monaco Editor - VS Code-powered code editor
  • Real-Time AI - Instant code generation and refactoring
  • Multiple Languages - JavaScript, Python, TypeScript, etc.
  • Quick Actions - Refactor, analyze, test, document

🔗 Full GitHub Integration

  • OAuth Authentication - Secure GitHub sign-in
  • Complete API Access - All GitHub operations available
  • Repository Operations - Create, update, delete, fork
  • Branch Management - Create branches, PRs, commits
  • File Operations - Create, edit, delete files
  • Issue Management - Create and track issues

🎯 Tech Stack

Category Technologies
Frontend Next.js 15, React 19, TypeScript 5
Styling Tailwind CSS 4, shadcn/ui, Radix UI
AI/ML GPT-4o (via AIML API), OpenAI SDK
Authentication GitHub OAuth 2.0
Code Editor Monaco Editor (VS Code engine)
APIs GitHub REST API, AIML API
Deployment Vercel (Serverless)
Package Manager npm / Bun

🚀 Quick Start

Prerequisites

Installation

# 1. Clone the repo
git clone https://github.com/yourusername/IvyAI.git
cd IvyAI

# 2. Install dependencies
npm install
# or
bun install

# 3. Set up environment variables
cp .env.example .env
# Edit .env with your API keys (see below)

# 4. Run the development server
npm run dev

Visit http://localhost:3000 🎉

Environment Variables

Create a .env file with the following:

# GitHub OAuth (Required)
NEXT_PUBLIC_GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_SECRET=your_github_client_secret
NEXT_PUBLIC_GITHUB_REDIRECT_URI=http://localhost:3000/api/auth/callback

# AIML API (Required for AI features)
NEXT_PUBLIC_AIMLAPI_KEY=your_aimlapi_key

# Google Gemini (Optional - legacy features)
NEXT_PUBLIC_GEMINI_API_KEY=your_gemini_key

💡 Tip: Get your GitHub OAuth credentials:

  1. Go to GitHub Developer Settings
  2. Click "New OAuth App"
  3. Set Homepage URL: http://localhost:3000
  4. Set Callback URL: http://localhost:3000/api/auth/callback

📖 How to Use

1️⃣ Sign in with GitHub

Click "Sign in with GitHub" to authenticate and grant repository access.

2️⃣ Choose an AI Agent

From the dashboard, select one of 9 AI agents based on your needs:

🚀 AI Project Generator   →  Build complete projects
🔍 PR Reviewer            →  Review pull requests
🏗️ GitHub Repo Agent      →  Manage repositories
💻 Code Generator         →  Generate code snippets
♻️ Code Refactor          →  Improve existing code
🧪 Test Generator         →  Create test suites
🔒 Security Scanner       →  Find vulnerabilities
📚 Doc Generator          →  Generate documentation
⚡ Performance Optimizer  →  Optimize code speed

3️⃣ Chat with the Agent

Example: AI Project Generator

You: "I want to build a todo app"
Agent: "Great! What tech stack would you prefer?"
You: "Next.js with TypeScript and PostgreSQL"
Agent: "Perfect! What should we call the repository?"
You: "my-todo-app"
Agent: [Creates repo + generates all files + deploys to GitHub] ✅

Example: GitHub Repo Agent

You: "Create a new repository called 'awesome-project'"
Agent: "Should it be public or private?"
You: "Public, and add a README"
Agent: [Creates repository with README] ✅

Example: Code Generator

You: "Generate a React component for a user profile card"
Agent: [Generates complete component with TypeScript, props, and styling] ✅

4️⃣ AI Playground (Alternative)

For quick code tasks without GitHub integration:

  1. Open AI Playground
  2. Paste or write code
  3. Use quick actions: Refactor, Analyze, Test, Document
  4. Copy generated code

5️⃣ Review Results

  • All agent actions show real-time progress
  • View created repos, files, PRs on GitHub
  • Chat history is scrollable
  • Actions can be reviewed and verified

📁 Project Structure

IvyAI/
├── src/
│   ├── app/
│   │   ├── agent/[agentId]/      # Dynamic agent pages
│   │   ├── api/auth/             # GitHub OAuth endpoints
│   │   ├── dashboard/            # Main dashboard
│   │   ├── playground/           # AI Playground
│   │   ├── projects/             # Project Generator
│   │   └── page.tsx              # Landing page
│   ├── components/
│   │   ├── ui/                   # shadcn/ui components
│   │   ├── AgentInterface.tsx    # Chat interface for all agents
│   │   ├── Dashboard.tsx         # Agent grid view
│   │   ├── AIPlayground.tsx      # Code editor
│   │   ├── Header.tsx            # Navigation
│   │   └── ...
│   ├── services/
│   │   ├── aimlAPI.ts            # GPT-4o integration
│   │   ├── githubAPI.ts          # GitHub API client
│   │   └── projectGenerator.ts   # Project scaffolding
│   ├── contexts/
│   │   └── AuthContext.tsx       # Authentication state
│   └── lib/                      # Utilities
├── .github/
│   ├── ISSUE_TEMPLATE/           # Issue templates
│   └── PULL_REQUEST_TEMPLATE.md  # PR template
├── CODE_OF_CONDUCT.md            # Community guidelines
├── CONTRIBUTING.md               # Contribution guide
├── SECURITY.md                   # Security policy
└── README.md                     # This file

🚀 Deployment to Vercel

Quick Deploy

Deploy with Vercel

Manual Deployment

  1. Push to GitHub

    git add .
    git commit -m "Initial commit"
    git push origin main
  2. Import to Vercel

  3. Configure Environment Variables

    In Vercel project settings, add:

    NEXT_PUBLIC_GITHUB_CLIENT_ID=your_github_client_id
    GITHUB_CLIENT_ID=your_github_client_id
    GITHUB_CLIENT_SECRET=your_github_client_secret
    NEXT_PUBLIC_GITHUB_REDIRECT_URI=https://your-app.vercel.app/api/auth/callback
    NEXT_PUBLIC_AIMLAPI_KEY=your_aimlapi_key
    NEXT_PUBLIC_GEMINI_API_KEY=your_gemini_key
    
  4. Update GitHub OAuth

    • Go to GitHub OAuth App settings
    • Add production callback URL: https://your-app.vercel.app/api/auth/callback
  5. Deploy

    • Click "Deploy"
    • Vercel builds and deploys automatically
    • Every push to main triggers new deployment

Environment Setup

Development:

http://localhost:3000/api/auth/callback

Production:

https://your-app.vercel.app/api/auth/callback

🔒 Security Best Practices

Implemented

  • ✅ GitHub OAuth secure authentication
  • ✅ Environment variable configuration
  • ✅ API key client-side protection
  • ✅ CORS headers configured
  • ✅ Secure token handling

Recommendations

  • 🔐 Store GitHub tokens in httpOnly cookies (production)
  • 🔐 Implement rate limiting on API routes
  • 🔐 Add CSRF protection
  • 🔐 Rotate API keys regularly
  • 🔐 Enable Vercel Security Headers
  • 🔐 Use Vercel Edge Config for sensitive data

Environment Variables

  • Never commit .env to version control
  • Use different keys for dev/prod
  • Rotate keys after team member changes
  • Monitor API usage for anomalies

🤖 AI Capabilities

Powered by GPT-4o via AIML API

All agents use OpenAI's GPT-4o model, which excels at:

  • 🧠 Understanding complex requirements
  • 💬 Natural conversations
  • 🔄 Multi-step task execution
  • 📝 Code generation and refactoring
  • 🧪 Test creation
  • 🔍 Code review and analysis
  • 📚 Documentation generation
  • ⚡ Fast response times

📊 IvyAI vs Alternatives

Feature IvyAI GitHub Copilot Cursor v0.dev
Conversational AI Agents ✅ 9 agents Limited
Full Project Generation ✅ UI only
GitHub Integration ✅ Full API Limited
PR Review Limited
Repository Management
Code Playground
Free Tier Limited
Self-Hosted
Action Execution ✅ Real actions

🐛 Troubleshooting

Common Issues

1. Monaco Editor not loading

npm install @monaco-editor/react@^4.6.0

2. OpenAI module not found

npm install openai@^4.77.0

3. GitHub OAuth not working

  • Verify callback URL matches exactly
  • Check client ID/secret are correct
  • Ensure OAuth app is active

4. AI API errors

  • Verify API key is valid
  • Check API quota/limits
  • Ensure proper environment variable format

5. Build errors

rm -rf .next node_modules
npm install
npm run build

🤝 Contributing

We love your input! We want to make contributing to IvyAI as easy and transparent as possible, whether it's:

  • 🐛 Reporting a bug
  • 💬 Discussing the current state of the code
  • 🚀 Submitting a fix
  • 💡 Proposing new features
  • 👨‍💻 Becoming a maintainer

Quick Start for Contributors

  1. Fork the repository (click Fork button at top right)
  2. Clone your fork
    git clone https://github.com/YOUR_USERNAME/IvyAI.git
    cd IvyAI
  3. Create a feature branch
    git checkout -b feature/amazing-feature
    # or
    git checkout -b fix/bug-fix
  4. Install dependencies
    npm install
  5. Make your changes
  6. Test thoroughly
    npm run build
    npm run dev
  7. Commit with a descriptive message
    git commit -m "feat: add amazing feature"
    # or
    git commit -m "fix: resolve issue #123"
  8. Push to your fork
    git push origin feature/amazing-feature
  9. Open a Pull Request

Contribution Guidelines

Code Style

  • ✅ Use TypeScript for type safety
  • ✅ Follow existing code structure and naming conventions
  • ✅ Use Tailwind CSS for styling (no inline styles)
  • ✅ Write clean, self-documenting code
  • ✅ Add comments for complex logic

Commit Messages

Follow Conventional Commits:

  • feat: - New feature
  • fix: - Bug fix
  • docs: - Documentation changes
  • style: - Code style changes (formatting, etc.)
  • refactor: - Code refactoring
  • test: - Adding tests
  • chore: - Maintenance tasks

Examples:

feat: add dark mode toggle to dashboard
fix: resolve authentication redirect issue
docs: update installation instructions

Pull Request Process

  1. 📝 Update README.md with details of changes if needed
  2. 🧪 Ensure all tests pass and app builds successfully
  3. 📸 Add screenshots for UI changes
  4. 🔗 Link related issues in PR description
  5. ✅ Wait for review from maintainers
  6. 🔄 Address any requested changes
  7. 🎉 Celebrate when merged!

What to Contribute?

Good First Issues (Perfect for beginners):

  • 🎨 UI/UX improvements
  • 📝 Documentation enhancements
  • 🐛 Bug fixes
  • ✅ Adding tests
  • 🌐 Translations

Advanced Contributions:

  • 🚀 New AI agents/features
  • ⚡ Performance optimizations
  • 🔧 Refactoring
  • 🧪 Integration testing
  • 📦 New project templates

Hacktoberfest Special: Look for issues labeled with:

  • hacktoberfest - Hacktoberfest eligible
  • good first issue - Beginner friendly
  • help wanted - We need help!
  • enhancement - New features

Code of Conduct

Please read and follow our Code of Conduct to keep our community respectful and inclusive.

Questions?

🗺️ Roadmap

✅ Phase 1 - Core Platform (Completed)

  • 9 specialized AI agents
  • Chat-first interfaces
  • Full GitHub API integration
  • AI Project Generator
  • PR Review system
  • AI Playground with Monaco Editor
  • Real-time action execution
  • Hacktoberfest 2025 setup

🚧 Phase 2 - Enhanced Features (In Progress)

  • Agent conversation history persistence
  • Multi-file project editing
  • Batch operations (create multiple repos/files)
  • Template library for common projects
  • AI-powered code search
  • Integration with popular IDEs

🔮 Phase 3 - Enterprise & Scaling (Planned)

  • Team collaboration features
  • VS Code Extension
  • Custom AI model fine-tuning
  • CI/CD pipeline integration
  • Advanced analytics dashboard
  • API for third-party integrations
  • Mobile app

Want to contribute? Check out our issues labeled enhancement or hacktoberfest!

📄 License

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

🙏 Credits & Acknowledgments

Powered by:

💬 Community & Support

⭐ Show Your Support

If IvyAI helps you code faster, please consider:

  • ⭐ Starring the repository
  • 🐦 Sharing on social media
  • 🤝 Contributing to the project
  • 📝 Writing about your experience

🤝 Contributors

Thanks to all our amazing contributors! 🎉

Contributors


Built with ❤️ for developers, by developers

Powered by: Next.js 15 • TypeScript 5 • GPT-4o • GitHub API • Tailwind CSS 4

⬆ Back to Top

About

Your AI-powered coding companion that understands context, generates complete projects, and integrates seamlessly with GitHub.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages