Um construtor de currículos moderno e inteligente, desenvolvido com Next.js, React e IA. Crie currículos profissionais com facilidade, utilizando recursos de inteligência artificial para geração e otimização de conteúdo.
- 🎨 Editor Visual Intuitivo: Crie e edite currículos com interface drag-and-drop
- 🤖 IA Integrada: Geração automática de conteúdo usando Google Gemini
- 📱 Design Responsivo: Interface adaptável para todos os dispositivos
- 🎭 Temas Personalizáveis: Suporte a dark mode e light mode
- 💾 Salvamento Automático: Seus dados são salvos automaticamente
- 📥 Exportação em PDF: Download de currículos em alta qualidade
- 🔐 Autenticação Segura: Login com Google e GitHub via NextAuth
- 🌍 Tradução de Conteúdo: Traduza seu currículo para outros idiomas
- 📝 Editor de Texto Rico: Formatação avançada com TipTap
- 🎯 Múltiplos Currículos: Gerencie vários currículos diferentes
- Next.js 14 - Framework React com App Router
- React 18 - Biblioteca JavaScript para interfaces
- TypeScript - Tipagem estática
- Tailwind CSS - Framework CSS utilitário
- Shadcn/ui - Componentes UI acessíveis
- TipTap - Editor de texto rico
- React Hook Form - Gerenciamento de formulários
- Tanstack Query - Gerenciamento de estado assíncrono
- Drizzle ORM - ORM TypeScript-first
- Neon Database - PostgreSQL serverless
- NextAuth.js v5 - Autenticação
- Google Gemini - Geração de conteúdo com IA
- Puppeteer - Geração de PDF
- Axios - Cliente HTTP
- Radix UI - Primitivos de componentes acessíveis
- Lucide React - Ícones
- Hello Pangea DnD - Drag and drop
- Sonner - Notificações toast
- Node.js 18+
- npm ou yarn
- Conta no Neon (PostgreSQL)
- Credenciais OAuth (Google e/ou GitHub)
- API Key do Google Gemini
- Clone o repositório
git clone https://github.com/OjuaraCoder/resume-draft.git
cd resume-craft- Instale as dependências
npm install- Configure as variáveis de ambiente
Crie um arquivo .env.local na raiz do projeto:
# Database
DATABASE_URL=postgresql://user:password@host/database
# NextAuth
AUTH_SECRET=your-secret-key
AUTH_GOOGLE_ID=your-google-client-id
AUTH_GOOGLE_SECRET=your-google-client-secret
AUTH_GITHUB_ID=your-github-client-id
AUTH_GITHUB_SECRET=your-github-client-secret
# Google Gemini
GEMINI_API_KEY=your-gemini-api-key
# App URL
NEXTAUTH_URL=http://localhost:3000- Execute as migrações do banco de dados
npm run db:migrate- Inicie o servidor de desenvolvimento
npm run devAcesse http://localhost:3000 para ver o aplicativo.
npm run dev # Inicia servidor de desenvolvimento
npm run build # Build para produção
npm run start # Inicia servidor de produção
npm run db:studio # Abre Drizzle Studio
npm run db:push # Push schema para o banco
npm run db:generate # Gera migrations
npm run db:migrate # Executa migrations
npm run db:reset # Reseta o banco de dadosresume-craft/
├── src/
│ ├── app/ # App Router do Next.js
│ │ ├── api/ # API Routes
│ │ ├── auth/ # Páginas de autenticação
│ │ └── dashboard/ # Dashboard e editor
│ ├── components/ # Componentes React
│ │ ├── pages/ # Componentes de página
│ │ ├── shared/ # Componentes compartilhados
│ │ └── ui/ # Componentes UI base
│ ├── db/ # Configuração e schemas do banco
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Bibliotecas e utilitários
│ └── services/ # Serviços e integrações
├── drizzle/ # Migrations do banco
└── public/ # Arquivos estáticos
- Fazer Login: Acesse a página inicial e faça login com Google ou GitHub
- Criar Currículo: No dashboard, clique em "Novo Currículo"
- Editar Conteúdo: Use o editor visual para adicionar suas informações
- Usar IA: Clique nos botões de IA para gerar conteúdo automaticamente
- Personalizar: Ajuste cores, fontes e layout conforme preferir
- Exportar: Baixe seu currículo em PDF quando estiver pronto
- Geração de Cargo: Sugere títulos profissionais adequados
- Correção de Conteúdo: Melhora a qualidade do texto
- Tradução: Traduz o conteúdo do currículo
- Sugestões: Oferece sugestões de melhorias
- Autenticação via OAuth 2.0
- Dados criptografados em trânsito (HTTPS)
- Sessões seguras com NextAuth
- Validação de entrada com Zod
- Middleware de proteção de rotas
O projeto utiliza Tailwind CSS e suporta temas personalizados. Você pode modificar as cores e estilos em:
tailwind.config.ts- Configuração do Tailwindsrc/styles/globals.css- Estilos globaiscomponents.json- Configuração do Shadcn/ui
Contribuições são bem-vindas! Sinta-se à vontade para:
- Fazer fork do projeto
- Criar uma branch para sua feature (
git checkout -b feature/AmazingFeature) - Commit suas mudanças (
git commit -m 'Add some AmazingFeature') - Push para a branch (
git push origin feature/AmazingFeature) - Abrir um Pull Request
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Wesley Araujo
- GitHub: @OjuaraCoder
- Next.js
- Shadcn/ui
- Vercel
- Neon Database
- Comunidade open source
⭐ Se este projeto foi útil para você, considere dar uma estrela no GitHub!