Skip to content

codeone01/aurora

Repository files navigation

Aurora - Assistente de IA

Aurora é uma demo funcional de assistente de IA conversacional. A função principal já funciona de verdade: o usuário envia uma mensagem, a aplicação chama a Gemini API e a resposta chega em streaming na interface.

O projeto não usa banco de dados, login ou painel administrativo. A ideia é provar a experiência principal com qualidade de produto, mantendo o restante como demo visual.

O Que Funciona

  • Chat real com Gemini usando streamGenerateContent.
  • Resposta em streaming, token por token.
  • Botão para interromper a geração.
  • Estado da conversa no cliente.
  • Painel de memória contextual demonstrativo.
  • Painel de artefatos gerado a partir das respostas da IA.
  • Sugestões rápidas de prompts.
  • Validação do payload com Zod.

O Que É Demo

  • Histórico de conversas.
  • Memória de longo prazo.
  • Persistência de artefatos.
  • Login e múltiplos usuários.

Esses recursos aparecem na interface para demonstrar a visão do produto, mas não exigem infraestrutura real.

Stack

  • Next.js 14 com App Router
  • TypeScript estrito
  • Tailwind CSS
  • Framer Motion
  • Gemini API via fetch
  • Zod

Como Rodar Junto Com o Portfólio

Na raiz do portfólio:

npm.cmd run dev:all

Isso sobe:

Portfólio: http://localhost:3000
Aurora:    http://127.0.0.1:3010
FlowMail:  http://127.0.0.1:3011

Se a porta 3000 estiver ocupada, o Next pode subir o portfólio em 3001, 3002 ou outra porta próxima. A Aurora continua fixa em 3010.

No portfólio, o botão Ver demo do projeto Aurora abre:

http://127.0.0.1:3010

Como Rodar Só a Aurora

Entre na pasta do projeto:

cd projects/aurora

Instale as dependências:

npm install

Crie o arquivo .env.local:

copy .env.example .env.local

Preencha:

GEMINI_API_KEY=sua_chave_do_google_ai_studio
GEMINI_MODEL=gemini-2.5-flash

Rode:

npm run dev

Abra:

http://127.0.0.1:3010

Onde Criar a Chave

Crie uma chave no Google AI Studio:

https://aistudio.google.com/app/apikey

Arquitetura

src/app/page.tsx
  Interface principal, estado local, leitura do stream e geração de artefatos visuais.

src/app/api/chat/route.ts
  Valida as mensagens, chama a Gemini API, interpreta eventos SSE e envia texto incremental ao navegador.

src/lib/schema.ts
  Schemas Zod e tipos das mensagens.

Como Funciona o Streaming

  1. O usuário envia uma mensagem.
  2. A interface adiciona a mensagem do usuário e uma resposta vazia da assistente.
  3. O navegador envia o histórico para /api/chat.
  4. A rota chama models.streamGenerateContent da Gemini API.
  5. O servidor lê os eventos SSE da Gemini.
  6. Apenas os deltas de texto são enviados ao navegador.
  7. A interface atualiza a resposta da Aurora progressivamente.

Repositório GitHub

Este projeto foi criado para virar um repositório separado.

Nome sugerido:

aurora-ai-assistant

Quando estiver pronto para publicar:

cd projects/aurora
git init
git add .
git commit -m "Projeto inicial do Aurora"

Depois crie o repositório no GitHub e faça o push.

Próximos Passos

  • Editor real de artefatos.
  • Upload de arquivos como contexto.
  • Memória persistente com banco vetorial.
  • Persistência opcional com SQLite, Postgres ou Supabase.
  • Autenticação e workspaces.

About

Demo de assistente de IA com chat em streaming via Gemini API (Next.js)

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages