Skip to content

Nagpal45/codaborate

Repository files navigation

🤝 Codaborate

AI-Powered Collaborative Workspace for Developer Teams

Next.js TypeScript Tailwind CSS Prisma Google Gemini Stripe

An all-in-one developer workspace designed to streamline team collaboration, project management, and codebase understanding through the power of Generative AI.


📖 Overview

Codaborate goes beyond generic project management by deeply integrating with your source code. By leveraging vector embeddings and Large Language Models, Codaborate reads your codebase, understands it, and allows you to chat directly with your repositories.

Paired with AI-driven meeting transcriptions, automated commit summaries, and a seamless credit-based billing system, Codaborate ensures your team stays aligned, focused, and productive.


✨ Key Features & Concepts

🧠 AI Codebase Q&A (Vector Search)

  • Connect a GitHub repository and let Codaborate index the complete source code.
  • Generates vector embeddings using @google/generative-ai and stores them efficiently in a PostgreSQL database using pgvector.
  • Chat directly with your codebase to ask architectural questions, find specific logic, or get onboarding help.
  • Automatically cites file references for all its answers.

📝 Smart Commit Summaries

  • Automatically polls commits from your linked GitHub repository.
  • Uses Google Gemini to analyze git diffs and generates concise, human-readable summaries of code changes, making code reviews and tracking updates effortless.

🎙️ AI Meeting Assistant

  • Upload or record team meetings directly on the platform.
  • Powered by AssemblyAI, the app transcribes audio to text and automatically extracts summaries, actionable items, and tracks generated issues directly to the project dashboard.

💳 Credit-based Billing System

  • Full-fledged billing system integrated with Stripe.
  • Users start with a base amount of credits (e.g., 150) which are consumed when indexing repositories (based on file count) or using AI features.
  • Seamless top-ups and subscription management.

👥 Team Collaboration

  • Create Workspaces and Projects.
  • Send secure invite links to bring team members aboard.
  • Unified dashboard for tracking commits, active Q&A, and scheduled meetings.

🚀 Technologies Used

Technology Purpose
Next.js 15 (App Router) Full-stack React framework for UI and API routes.
tRPC End-to-end typesafe APIs between the client and server.
PostgreSQL & Prisma Relational database and ORM. Uses pgvector for semantic search.
Tailwind CSS & Shadcn UI Utility-first styling with accessible, customizable UI components.
Google Gemini API Large Language Model used for commit summarizations and Codebase Q&A.
AssemblyAI Audio processing for meeting transcriptions and issue extraction.
Clerk Secure and scalable user authentication and management.
Stripe Payment processing for handling the user credit system.

🛠️ Prerequisites

Before you begin, ensure you have the following installed and set up:

  • Node.js: v18+
  • Docker: For running the local PostgreSQL database (with pgvector extension).
  • API Keys for Clerk, Google Gemini, AssemblyAI, and Stripe.

📦 Run Locally & Setup

1. Clone the repository

git clone https://github.com/your-username/codaborate.git
cd codaborate

2. Install Dependencies

npm install
# or
yarn install
# or 
pnpm install

3. Setup Environment Variables

Create a .env file in the root directory and configure the necessary keys:

# Database (Ensure pgvector is enabled in your Postgres instance)
DATABASE_URL="postgresql://postgres:password@localhost:5432/codaborate"

# Setup Clerk Auth
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_...
CLERK_SECRET_KEY=sk_test_...

# Google Gemini API
GEMINI_API_KEY=your_gemini_api_key

# AssemblyAI (Meeting transcripts)
ASSEMBLYAI_API_KEY=your_assemblyai_api_key

# Stripe (Billing)
STRIPE_SECRET_KEY=sk_test_...
STRIPE_WEBHOOK_SECRET=whsec_...

4. Start the Database

The project includes a convenient script to start a Docker container for a local Postgres dev database:

./start-database.sh

5. Setup Prisma & Push Schema

Generate the Prisma Client and push the database schema:

npm run postinstall
npm run db:push

6. Run the Development Server

npm run dev

Navigate to http://localhost:3000 to start using your local Codaborate workspace!


🤝 Contributing

Contributions are always welcome! Feel free to open a Pull Request or create an Issue to discuss improvements, bugs, or new features.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

About

AI-powered developer workspace built with Next.js 15 and tRPC. Features RAG-based codebase Q&A via pgvector and Google Gemini, automated commit summaries, AI meeting transcriptions, and a Stripe-integrated credit system.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages