Um site de portfólio profissional moderno e responsivo construído com Next.js, TypeScript, Tailwind CSS e Framer Motion.
- Design Moderno: Interface limpa e profissional
- Totalmente Responsivo: Funciona perfeitamente em todos os dispositivos
- Animações Suaves: Transições e animações com Framer Motion
- SEO Otimizado: Meta tags e estrutura semântica
- Performance: Otimizado para velocidade e Core Web Vitals
- Acessibilidade: Seguindo as melhores práticas de acessibilidade
- Exportação Estática: Pronto para hospedar no S3, Vercel, Netlify, etc.
- Next.js 14 - Framework React
- TypeScript - Tipagem estática
- Tailwind CSS - Framework CSS utilitário
- Framer Motion - Animações
- Lucide React - Ícones
- ESLint - Linting de código
-
Clone o repositório
git clone <url-do-repositorio> cd portfolio-site
-
Instale as dependências
npm install # ou yarn install # ou pnpm install
-
Execute o servidor de desenvolvimento
npm run dev # ou yarn dev # ou pnpm dev
-
Abra http://localhost:3000 no seu navegador
portfolio-site/
├── src/
│ ├── app/
│ │ ├── globals.css
│ │ ├── layout.tsx
│ │ └── page.tsx
│ └── components/
│ ├── Header.tsx
│ ├── Hero.tsx
│ ├── About.tsx
│ ├── Skills.tsx
│ ├── Experience.tsx
│ ├── Projects.tsx
│ ├── Contact.tsx
│ └── Footer.tsx
├── public/
├── package.json
├── next.config.js
├── tailwind.config.ts
├── tsconfig.json
└── README.md
Edite os seguintes arquivos para personalizar suas informações:
- Header.tsx: Nome no cabeçalho
- Hero.tsx: Nome, título e descrição principal
- About.tsx: Informações pessoais e história
- Contact.tsx: Informações de contato
- Footer.tsx: Links das redes sociais
As cores podem ser personalizadas no arquivo tailwind.config.ts:
colors: {
primary: {
50: '#eff6ff',
100: '#dbeafe',
// ... outras variações
},
secondary: {
50: '#f8fafc',
100: '#f1f5f9',
// ... outras variações
}
}- Skills.tsx: Edite as habilidades e níveis de proficiência
- Experience.tsx: Adicione suas experiências profissionais
- Projects.tsx: Inclua seus projetos com links e descrições
-
Build do projeto
npm run build
-
Os arquivos estáticos serão gerados na pasta
out/ -
Faça upload dos arquivos para um bucket S3
-
Configure o bucket para hospedagem de site estático
- Conecte seu repositório ao Vercel
- O deploy será automático
- Conecte seu repositório ao Netlify
- Configure o comando de build:
npm run build - Configure o diretório de publicação:
out
npm run dev- Servidor de desenvolvimentonpm run build- Build para produçãonpm run start- Servidor de produçãonpm run lint- Verificação de códigonpm run export- Exportação estática
O arquivo next.config.js está configurado para exportação estática:
const nextConfig = {
output: 'export',
trailingSlash: true,
images: {
unoptimized: true
}
}Configurações personalizadas no tailwind.config.ts incluindo:
- Cores personalizadas
- Animações customizadas
- Fontes personalizadas
O site é totalmente responsivo com breakpoints:
- Mobile: < 768px
- Tablet: 768px - 1024px
- Desktop: > 1024px
O site inclui:
- Meta tags otimizadas
- Estrutura semântica HTML
- Open Graph tags
- Schema markup (pode ser adicionado)
- Navegação por teclado
- ARIA labels
- Contraste adequado
- Textos alternativos
- Fork o projeto
- Crie 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) - Abra um Pull Request
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Se você tiver alguma dúvida ou precisar de ajuda, entre em contato através do formulário no site ou abra uma issue no repositório.
Desenvolvido com ❤️ usando Next.js