Skip to content

RamonSantos9/Meet-AI

Repository files navigation

🤖 Meet-AI

Pré-visualização do Site

Next.js React TypeScript Tailwind CSS Drizzle ORM Polar Stream

🚀 Uma plataforma completa de reuniões com IA, permitindo conversas inteligentes com agentes personalizados através de videochamadas em tempo real.

📋 Índice

✨ Funcionalidades

🤖 Agentes de IA Personalizados

  • Criação de Agentes: Configure personalidades, instruções e comportamentos únicos
  • Avatar Gerado: Avatares únicos baseados no nome do agente
  • Instruções Customizáveis: Defina como o agente deve se comportar
  • Gerenciamento Completo: Crie, edite e delete agentes facilmente

📹 Videochamadas em Tempo Real

  • Stream Video Integration: Videochamadas de alta qualidade
  • IA em Tempo Real: Conversas naturais com agentes de IA
  • Transcrições: Gravação automática das conversas
  • Múltiplos Estados: Lobby, ativa, processando, finalizada

💬 Sistema de Chat

  • Chat em Tempo Real: Conversas fluidas com agentes
  • Histórico Completo: Acesse todas as conversas anteriores
  • Transcrições Detalhadas: Texto completo das reuniões
  • Interface Intuitiva: Chat moderno e responsivo

💳 Sistema de Assinatura

  • Polar Integration: Pagamentos seguros e confiáveis
  • Planos Flexíveis: Escolha o plano ideal para suas necessidades
  • Portal de Gerenciamento: Controle sua assinatura facilmente
  • Webhooks Automáticos: Processamento automático de pagamentos

🎨 Interface Moderna

  • Design Responsivo: Funciona perfeitamente em todos os dispositivos
  • Dashboard Intuitivo: Gerenciamento centralizado de reuniões e agentes
  • Animações Suaves: Transições elegantes e feedback visual
  • Tema Minimalista: Design limpo focado na experiência

🛠️ Tecnologias

Frontend

Backend & Banco de Dados

Videochamadas & IA

Pagamentos & Integrações

Ferramentas de Desenvolvimento

🎯 Demonstração

🌐 Versão Online

Acesse a demonstração ao vivo: meet-ai-ramon.vercel.app

📱 Screenshots

🖥️ Clique para ver as capturas de tela
  • Dashboard: Gerenciamento centralizado de reuniões e agentes
  • Criação de Agentes: Interface para configurar agentes de IA
  • Videochamada: Conversa em tempo real com agente
  • Chat: Interface de conversa com histórico completo
  • Upgrade: Planos de assinatura e pagamentos

🚀 Instalação

Pré-requisitos

  • Node.js 18+
  • npm ou yarn
  • Conta no Neon (banco de dados)
  • Conta no Stream (videochamadas)
  • Conta no Polar (pagamentos)
  • Conta na OpenAI (IA)

Passos de Instalação

  1. Clone o repositório
git clone https://github.com/RamonSantos9/Meet-AI.git
cd Meet-AI
  1. Instale as dependências
npm install --legacy-peer-deps
  1. Configure as variáveis de ambiente
cp .env.example .env.local
  1. Preencha as variáveis no .env.local:
# Database
DATABASE_URL="postgresql://user:password@host.neon.tech/database?sslmode=require"

# Stream
STREAM_API_KEY="your_stream_api_key"
STREAM_API_SECRET="your_stream_api_secret"

# OpenAI
OPENAI_API_KEY="sk-..."

# Polar
POLAR_ACCESS_TOKEN="your_polar_access_token"

# Better Auth
AUTH_SECRET="your_auth_secret"
AUTH_URL="http://localhost:3000"

# App
NEXT_PUBLIC_APP_URL="http://localhost:3000"
  1. Configure o banco de dados
npm run db:push
  1. Inicie o servidor de desenvolvimento
npm run dev
  1. Acesse o projeto Abra http://localhost:3000 no seu navegador

⚙️ Configuração

Banco de Dados (Neon)

  1. Crie uma conta em neon.tech
  2. Crie um novo projeto
  3. Copie a string de conexão para DATABASE_URL

Stream Video

  1. Crie uma conta em getstream.io
  2. Configure um projeto de video
  3. Obtenha suas chaves de API

OpenAI

  1. Crie uma conta em openai.com
  2. Obtenha sua chave de API
  3. Configure o Realtime API

Polar

  1. Crie uma conta em polar.sh
  2. Configure seus produtos de pagamento
  3. Obtenha seu token de acesso

📚 Scripts Disponíveis

# Desenvolvimento
npm run dev          # Inicia servidor de desenvolvimento
npm run build        # Build de produção
npm run start        # Inicia servidor de produção

# Banco de Dados
npm run db:push      # Sincroniza schema com o banco
npm run db:studio    # Abre interface do Drizzle Studio

# Linting
npm run lint         # Executa ESLint

# Webhook (desenvolvimento)
npm run dev:webhook  # Inicia ngrok para webhooks

🏗️ Estrutura do Projeto

Meet-AI/
├── src/
│   ├── app/                    # App Router (Next.js 13+)
│   │   ├── (auth)/            # Rotas de autenticação
│   │   ├── (dashboard)/       # Dashboard principal
│   │   ├── call/              # Sistema de videochamadas
│   │   └── api/               # API Routes
│   ├── components/            # Componentes reutilizáveis
│   │   └── ui/               # Componentes base (Button, Dialog, etc.)
│   ├── modules/              # Módulos da aplicação
│   │   ├── agents/           # Sistema de agentes
│   │   ├── meetings/         # Sistema de reuniões
│   │   ├── call/             # Videochamadas
│   │   ├── auth/             # Autenticação
│   │   ├── dashboard/        # Dashboard
│   │   ├── premium/          # Sistema de pagamentos
│   │   └── home/             # Página inicial
│   ├── db/                   # Configuração do banco de dados
│   │   ├── schema.ts         # Schema do Drizzle ORM
│   │   └── index.ts          # Configuração do Drizzle
│   ├── lib/                  # Utilitários e configurações
│   ├── trpc/                 # Configuração tRPC
│   ├── inngest/              # Background jobs
│   └── hooks/                # Hooks personalizados
├── public/                   # Assets estáticos
└── drizzle.config.ts         # Configuração do Drizzle

🎨 Funcionalidades Principais

🤖 Sistema de Agentes

  • Criação Intuitiva: Interface simples para criar agentes
  • Personalização Completa: Nome, instruções e comportamento
  • Avatar Único: Geração automática de avatares
  • Gerenciamento: Editar e deletar agentes facilmente

📹 Videochamadas

  • Stream Video: Plataforma robusta de videochamadas
  • IA em Tempo Real: Conversas naturais com agentes
  • Estados Dinâmicos: Lobby, ativa, processando, finalizada
  • Transcrições: Gravação automática das conversas

💬 Sistema de Chat

  • Chat em Tempo Real: Conversas fluidas
  • Histórico Completo: Acesso a todas as conversas
  • Interface Moderna: Chat responsivo e intuitivo
  • Transcrições Detalhadas: Texto completo das reuniões

💳 Sistema de Pagamentos

  • Polar Integration: Pagamentos seguros
  • Planos Flexíveis: Diferentes opções de assinatura
  • Portal de Gerenciamento: Controle sua assinatura
  • Webhooks Automáticos: Processamento de pagamentos

🎨 Interface

  • Dashboard Centralizado: Gerenciamento de tudo em um lugar
  • Design Responsivo: Mobile-first approach
  • Animações Suaves: Transições elegantes
  • Tema Minimalista: Foco na experiência do usuário

🔧 Desenvolvimento

Estrutura de Dados

// Principais entidades
User {
  id: string
  email: string
  name: string
  image: string
  createdAt: Date
}

Agent {
  id: string
  name: string
  instructions: string
  userId: string
  createdAt: Date
}

Meeting {
  id: string
  title: string
  agentId: string
  userId: string
  status: "upcoming" | "active" | "processing" | "completed" | "cancelled"
  startedAt: Date
  endedAt: Date
  createdAt: Date
}

Subscription {
  id: string
  userId: string
  productId: string
  status: "active" | "cancelled"
  currentPeriodEnd: Date
}

Fluxo de Videochamada

  1. Usuário cria uma reunião com um agente
  2. Sistema gera sala de videochamada no Stream
  3. Usuário entra na sala e agente de IA se conecta
  4. Conversa acontece em tempo real com transcrição
  5. Reunião é finalizada e dados são salvos

Fluxo de Pagamento

  1. Usuário escolhe um plano no upgrade
  2. Polar Checkout é iniciado
  3. Após pagamento, webhook atualiza assinatura
  4. Usuário ganha acesso a funcionalidades premium

📦 Deploy

Vercel (Recomendado)

  1. Conecte seu repositório GitHub ao Vercel
  2. Configure as variáveis de ambiente
  3. Deploy automático a cada push

Variáveis de Ambiente para Produção

Obrigatórias:

DATABASE_URL="postgresql://..."
STREAM_API_KEY="your_stream_api_key"
STREAM_API_SECRET="your_stream_api_secret"
OPENAI_API_KEY="sk-..."
AUTH_SECRET="your_auth_secret"
AUTH_URL="https://seu-dominio.vercel.app"
NEXT_PUBLIC_APP_URL="https://seu-dominio.vercel.app"

Opcionais (para pagamentos):

POLAR_ACCESS_TOKEN="your_polar_access_token"

💡 Nota: O projeto pode ser buildado mesmo sem as variáveis do Polar configuradas. As funcionalidades de pagamento ficarão desabilitadas, mas o resto da aplicação funcionará normalmente.

🤝 Contribuição

Contribuições são bem-vindas! Siga estes passos:

  1. Fork o projeto
  2. Crie uma branch para sua feature
    git checkout -b feature/AmazingFeature
  3. Commit suas mudanças
    git commit -m 'Add some AmazingFeature'
  4. Push para a branch
    git push origin feature/AmazingFeature
  5. Abra um Pull Request

Diretrizes de Contribuição

  • Mantenha o código limpo e bem documentado
  • Siga os padrões de TypeScript
  • Teste suas mudanças localmente
  • Atualize a documentação quando necessário

📄 Licença

Este projeto é desenvolvido para fins educacionais e de estudo. É uma plataforma inovadora de reuniões com IA.


🙏 Agradecimentos

  • Stream pela plataforma de videochamadas
  • OpenAI pela tecnologia de IA
  • Polar pela infraestrutura de pagamentos
  • Better Auth pela autenticação
  • Neon pelo banco de dados serverless
  • Vercel pela plataforma de deploy

⭐ Se este projeto te ajudou, considere dar uma estrela!

GitHub stars GitHub forks

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors