Um site portfólio moderno e responsivo construído com Spring Boot (backend) e React (frontend), apresentando um tema neon cyberpunk com animações fluidas e design profissional.
- Sobre o Projeto
- Tecnologias Utilizadas
- Funcionalidades
- Estrutura do Projeto
- Como Executar
- API Endpoints
- Componentes Frontend
- Estilização e Tema
- Screenshots
- Contribuição
- Licença
Este é um portfólio pessoal completo desenvolvido para Gabriel Passos, Cientista da Computação. O projeto demonstra habilidades tanto em desenvolvimento backend quanto frontend, apresentando projetos, skills e informações de contato de forma visualmente atrativa.
- Design Moderno: Tema neon cyberpunk com gradientes e animações
- Totalmente Responsivo: Adaptado para desktop, tablet e mobile
- API RESTful: Backend Spring Boot com endpoints bem estruturados
- Animações Fluidas: Usando Framer Motion para transições suaves
- Formulário de Contato: Sistema funcional de envio de mensagens
- SEO Otimizado: Meta tags e estrutura semântica
- Java 17: Linguagem principal
- Spring Boot 3.0: Framework web
- Gradle: Gerenciamento de dependências
- Spring Web: Para criação de APIs REST
- CORS: Configurado para comunicação com frontend
- React 18: Biblioteca principal
- JavaScript (ES6+): Linguagem de programação
- CSS3: Estilização avançada com gradientes e animações
- Framer Motion: Biblioteca de animações
- React Icons: Ícones vetoriais
- HTML5: Estrutura semântica
- VS Code: IDE principal
- Git: Controle de versão
- npm: Gerenciador de pacotes
- Chrome DevTools: Debug e testes
- Apresentação pessoal com nome animado
- Links para redes sociais (GitHub, LinkedIn)
- Botões de call-to-action
- Animações de background flutuantes
- Biografia profissional
- Informações sobre formação
- Objetivo de carreira
- Galeria de projetos com cards interativos
- Projeto principal: Sistema de Análise de Imagens para Monitoramento de Enchentes
- Card especial "Em Breve" para projetos futuros
- Links para GitHub e demonstrações
- Tecnologias utilizadas em cada projeto
- Barras de progresso animadas
- Categorias: Backend, Frontend, Ferramentas
- Níveis de proficiência visual
- Formulário funcional de contato
- Validação de campos
- Envio para API backend
- Feedback visual para o usuário
- Links rápidos para navegação
- Redes sociais
- Copyright e informações legais
portfolio_website/
├── 📁 backend/ # Aplicação Spring Boot
│ ├── 📁 src/main/java/com/portfolio/backend/
│ │ └── 📁 controller/
│ │ └── 📄 PortfolioController.java # API REST endpoints
│ ├── 📄 build.gradle # Dependências Gradle
│ └── 📄 gradlew # Gradle Wrapper
│
├── 📁 frontend/ # Aplicação React
│ ├── 📁 public/ # Arquivos estáticos
│ │ ├── 📁 images/ # Imagens do projeto
│ │ └── 📄 index.html # HTML principal
│ │
│ └── 📁 src/ # Código fonte React
│ ├── 📁 components/ # Componentes React
│ │ ├── 📄 Navbar.js # Navegação principal
│ │ ├── 📄 Hero.js # Seção de apresentação
│ │ ├── 📄 About.js # Seção sobre mim
│ │ ├── 📄 Projects.js # Galeria de projetos
│ │ ├── 📄 Skills.js # Habilidades técnicas
│ │ ├── 📄 Contact.js # Formulário de contato
│ │ ├── 📄 Footer.js # Rodapé
│ │ └── 📄 *.css # Estilos de cada componente
│ │
│ ├── 📄 App.js # Componente raiz
│ ├── 📄 App.css # Estilos globais e variáveis CSS
│ └── 📄 index.js # Entry point da aplicação
│
└── 📄 README.md # Este arquivo
- Java 17 ou superior
- Node.js 16 ou superior
- npm ou yarn
git clone https://github.com/gpassos01/portfolio_website.git
cd portfolio_websitecd backend
./gradlew bootRunO servidor estará disponível em: http://localhost:8080
cd frontend
npm install
npm startA aplicação estará disponível em: http://localhost:3000
Abra seu navegador e acesse http://localhost:3000
| Método | Endpoint | Descrição |
|---|---|---|
GET |
/profile |
Informações pessoais (nome, título, bio, contatos) |
GET |
/projects |
Lista de projetos com detalhes |
GET |
/skills |
Habilidades técnicas categorizadas |
POST |
/contact |
Envio de formulário de contato |
{
"name": "Gabriel Passos",
"title": "Cientista da Computação",
"bio": "Cientista da Computação apaixonado por criar soluções inovadoras.",
"email": "gabriel.passos@unesp.br",
"github": "https://github.com/gpassos01",
"linkedin": "https://www.linkedin.com/in/gabriel-passos26/"
}[
{
"id": 1,
"title": "Análise de Imagens para Monitoramento e Prevenção de Enchentes",
"description": "Sistema de análise de imagens de câmera para detecção de mudanças no nível da água...",
"technologies": ["Python", "OpenCV", "ESP32-CAM", "Machine Learning", "IoT"],
"githubUrl": "https://github.com/gpassos01/espCam_imageAnalysis",
"imageUrl": "/images/ai-thinker-esp32-cam.png",
"status": "completed"
}
]- Função: Navegação principal responsiva
- Características:
- Menu hambúrguer para mobile
- Scroll suave entre seções
- Highlight da seção ativa
- Estilo glassmorphism
- Função: Seção de apresentação principal
- Características:
- Nome com gradiente neon animado
- Links para redes sociais
- Botões de call-to-action
- Animações de background
- Função: Seção sobre informações pessoais
- Características:
- Biografia profissional
- Animações de entrada
- Layout responsivo
- Função: Galeria de projetos
- Características:
- Cards interativos com hover effects
- Overlay com links para GitHub
- Card especial "Em Breve"
- Grid responsivo
- Função: Exibição de habilidades técnicas
- Características:
- Barras de progresso animadas
- Categorização (Backend, Frontend, Tools)
- Efeitos visuais shinning
- Função: Formulário de contato
- Características:
- Validação de campos
- Envio para API
- Feedback visual
- Design neon
- Função: Rodapé com informações adicionais
- Características:
- Links de navegação
- Redes sociais
- Copyright
:root {
/* Cores Primárias */
--primary-color: #af3dff; /* Roxo Neon */
--secondary-color: #ff3b94; /* Rosa Neon */
--accent-color: #55ffe1; /* Ciano Neon */
--success-color: #a6fd29; /* Verde Neon */
/* Backgrounds Escuros */
--bg-primary: #0a0a0f; /* Preto Azulado */
--bg-secondary: #151520; /* Cinza Escuro */
--bg-card: #1a1a2e; /* Azul Escuro */
/* Textos */
--text-primary: #f0f0f0; /* Branco Suave */
--text-secondary: #b0b0b0; /* Cinza Claro */
}- Gradientes: Múltiplos gradientes com cores neon
- Shadows: Sombras neon coloridas (box-shadow)
- Animations: Animações CSS e Framer Motion
- Glassmorphism: Efeitos de vidro translúcido
- Hover Effects: Interações visuais em elementos
/* Breakpoints */
@media (max-width: 768px) { /* Tablet */ }
@media (max-width: 480px) { /* Mobile */ }- 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.
Gabriel Passos
- 📧 Email: gabriel.passos@unesp.br
- 🐱 GitHub: @gpassos01
- 💼 LinkedIn: gabriel-passos26