Skip to content

satyam969/collab-ai

Repository files navigation

Collab-AI

"Empowering developers to build, collaborate, and innovate—anytime, anywhere."

Collab-AI is an innovative developer collaboration platform that combines real-time communication, AI-powered assistance, and in-browser server execution. Designed for developers, it simplifies project collaboration, enabling teams to build, test, and share code seamlessly within a single application.


Why Use Collab-AI?

Collab-AI is perfect for developers who want to:

  • Collaborate online on coding projects in real time.
  • Use AI to generate and optimize code on the go.
  • Run and test small server applications directly within the platform.
  • Share and edit code snippets with team members effortlessly.
  • Manage projects without juggling multiple tools or platforms.

Whether you're working on a hackathon, brainstorming ideas, or debugging with a peer, Collab-AI provides a unified space to streamline the development process.


Features

  • Real-Time Chat: Connect with developers worldwide for instant collaboration.
  • AI Code Assistance: Use @ai in messages to interact with Gemini 1.5 Flash and generate code tailored to your needs.
  • In-Browser Server Execution: Write and execute small Express servers within the app using WebContainer.
  • Code Editing & Saving: Easily modify and save your code snippets.
  • Authentication: Secure logins powered by NextAuth.
  • Scalable Database: MongoDB ensures efficient and reliable data storage.

Getting Started

Prerequisites

Ensure you have the following installed on your system:

  • Node.js (v16.x or later recommended)
  • npm or yarn
  • MongoDB instance (local or hosted)

Environment Variables

Create a .env.local file in the root of the project and add the following environment variables:

MONGODB_URL=<your-mongodb-url>
JWT_SECRET=<your-jwt-secret>
GOOGLE_API_KEY=<your-google-api-key>
NEXTAUTH_SECRET=<your-nextauth-secret>
NEXTAUTH_URL=<your-nextauth-url>
AI_USER_ID=<your-ai-user-id>
NEXT_PUBLIC_AI=<your-next-public-ai-key>
PUSHER_APP_ID=<your-pusher-app-id>
PUSHER_KEY=<your-pusher-key>
PUSHER_SECRET=<your-pusher-secret>
PUSHER_CLUSTER=<your-pusher-cluster>
NEXT_PUBLIC_PUSHER_KEY=<your-public-pusher-key>
NEXT_PUBLIC_PUSHER_CLUSTER=<your-public-pusher-cluster>

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/collab-ai.git
    cd collab-ai
  2. Install dependencies:

    npm install
    # or
    yarn install
  3. Configure the environment:

    • Add the .env.local file with the variables listed above.

Running the Application Locally

  1. Start the development server:

    npm run dev
    # or
    yarn dev
  2. Open your browser and navigate to:

    http://localhost:3000
    

Use Cases

  • Team Collaboration: Developers can work together on projects in real-time, sharing ideas and progress seamlessly.
  • AI-Driven Coding: Leverage the power of AI to generate, optimize, or debug code instantly.
  • In-App Server Testing: Quickly prototype and test APIs or server-side code without leaving the platform.
  • Efficient Project Management: Keep all your discussions, code snippets, and experiments in one place.

Technologies Used

  • Frontend: Next.js, React
  • Backend: Next.js API routes, Express (for in-browser servers)
  • Database: MongoDB
  • Real-Time Communication: Pusher
  • AI Integration: Gemini 1.5 Flash
  • Authentication: NextAuth
  • In-Browser Execution: WebContainer

Deployment

To deploy Collab-AI:

  1. Set up your hosting environment (e.g., Vercel, AWS, or your preferred platform).
  2. Add all necessary environment variables to the hosting platform.
  3. Deploy the app following your hosting provider's instructions.

Contributing

We welcome contributions from developers worldwide! To contribute:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature/your-feature-name
  3. Make your changes and commit them:
    git commit -m "Add your commit message"
  4. Push the branch:
    git push origin feature/your-feature-name
  5. Submit a pull request.

Feel free to open issues for feature requests, bug reports, or general suggestions. We value your input to make Collab-AI better for everyone!


License

This project is licensed under the MIT License.


Contact

For any questions or support, please contact [email protected].

Releases

No releases published

Packages

No packages published