Skip to content

Portfolio pessoal de Bernardo Gomes, desenvolvedor full-stack e designer, apresentando projetos, habilidades e informações de contato.

License

Notifications You must be signed in to change notification settings

bernardopg/BeBitter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 BeBitter - Portfolio Moderno & Performático

BeBitter Logo

Portfolio profissional de Bernardo Gomes — Desenvolvedor Full-Stack especializado em React, TypeScript e arquiteturas modernas.

GitHub Website GitHub Followers License PRs Welcome

Performance SEO Accessibility Bundle Size


📱 Preview do Site

🏠 Página Principal

Tema Claro Tema Escuro
Home - Tema Claro Home - Tema Escuro

📄 Página Now

Tema Claro Tema Escuro
Now - Tema Claro Now - Tema Escuro

🎯 Status de Produção

ONLINE E FUNCIONANDO

Métrica Status Valor
🌐 Website Online bebitterbebetter.com.br
Performance Excellent Lighthouse
🔍 SEO Perfect Otimizado
Acessibilidade WCAG 95/100
📊 Core Web Vitals Good Monitorado

⚡ Tech Stack Moderna

🎨 Frontend Core

React TypeScript Vite

🎨 UI & Design System

Tailwind RadixUI shadcn/ui

🚀 Performance & Build

Service Worker Code Splitting Compression

📊 Analytics & Monitoring

Google Analytics Web Vitals Error Boundary


🏗️ Arquitetura do Projeto

src/
├── 📁 components/           # Componentes reutilizáveis
│   ├── 🎨 ui/              # Design system (shadcn/ui)
│   ├── 📊 Analytics.tsx    # Google Analytics 4
│   ├── 🔧 WebVitals.tsx    # Performance monitoring
│   ├── 🛡️ ErrorBoundary.tsx # Error handling
│   ├── 🔍 SEOHead.tsx      # SEO otimização
│   └── ⚙️ ServiceWorkerManager.tsx # Cache offline
├── 📄 pages/               # Páginas da aplicação
│   ├── 🏠 Index/           # Homepage modular
│   │   ├── 📍 sections/    # Seções da página
│   │   └── 🎯 hooks/       # Custom hooks
│   ├── 📝 Now.tsx          # Página "now"
│   └── ❌ NotFound.tsx     # 404 personalizada
├── 🎣 hooks/               # Custom React hooks
│   ├── 🔗 useGitHubProjects.ts # Integração GitHub API
│   ├── 🌐 useLanguage.ts   # Sistema i18n
│   └── ✨ useScrollAnimation.ts # Animações
├── 🌍 contexts/            # React contexts
│   ├── 🗣️ LanguageContext.tsx # Internacionalização
│   └── 🎨 ThemeProvider.tsx # Tema claro/escuro
├── 🔧 constants/           # Dados estáticos
│   ├── ⚙️ config.ts        # Configurações
│   ├── 🖼️ images.ts        # Assets
│   └── 🌐 translations.ts  # Traduções PT/EN
├── 🛠️ utils/               # Utilitários
│   ├── 🎭 performance.ts   # Performance helpers
│   └── 🍞 toast.ts         # Notificações
└── 📚 lib/                 # Bibliotecas e helpers
    └── 🔨 utils.ts         # Funções utilitárias

✨ Features Implementadas

🎯 Analytics & Tracking
  • 📊 Page Views - Navegação entre páginas
  • 👆 User Interactions - Clicks, hovers, form submissions
  • 📧 Lead Generation - Tentativas de contato multi-canal
  • 💼 Portfolio Engagement - Visualizações de projetos
  • ⚡ Performance Metrics - Core Web Vitals em tempo real
  • 🚨 Error Reporting - Captura automática de erros JS
  • 📱 Device Analytics - Mobile vs Desktop usage
  • 🌍 Geographic Data - Origem dos visitantes
🚀 Performance & Otimizações
  • 🔧 Service Worker - Cache offline-first inteligente
  • ⏰ Lazy Loading - Componentes e páginas sob demanda
  • 📦 Bundle Splitting - 4 chunks otimizados
  • 🖼️ Image Optimization - WebP com fallback, lazy loading
  • 🗜️ Compression - Gzip (-83%) e Brotli (-58%)
  • 🎯 Critical CSS - Above-the-fold otimizado
  • ⚡ Resource Hints - DNS prefetch, preconnect
  • 🔄 Code Splitting - Dynamic imports automáticos
🔍 SEO & Acessibilidade
  • 🏷️ Meta Tags Dinâmicas - Customização por página
  • 🎯 Schema.org - Rich snippets implementados
  • 🗺️ Sitemap XML - Auto-gerado e atualizado
  • 🤖 Robots.txt - Indexação otimizada
  • ⏭️ Skip Links - Navegação por teclado
  • 🎤 ARIA Labels - Screen readers completos
  • ⌨️ Keyboard Navigation - 100% navegável por teclado
  • 🎨 Color Contrast - WCAG 2.1 AA compliant
  • 🌐 Open Graph - Social media previews
🛡️ Error Handling & Recovery
  • 🚨 Error Boundary - Captura com fallback elegante
  • ⚡ Graceful Degradation - APIs indisponíveis
  • 🎭 User-Friendly Errors - UI elegante para erros
  • 🔄 Automatic Recovery - Retry e reload automático
  • 📊 Error Analytics - Tracking de erros em produção
  • 🔍 Debug Mode - Logs detalhados em desenvolvimento
🌐 Internacionalização
  • 🇧🇷🇺🇸 PT-BR / EN - Suporte completo bilingue
  • ⚡ Dynamic Language - Troca instantânea sem reload
  • 🔗 Translated Routes - URLs amigáveis por idioma
  • ↩️ RTL Support - Preparado para idiomas direita-esquerda
  • 🔄 Fallback System - Graceful degradation de idiomas
  • 💾 Persistence - Idioma salvo no localStorage

🛠️ Desenvolvimento Local

📋 Pré-requisitos

node >= 18.0.0
pnpm >= 8.0.0 (recomendado)

⚡ Setup Rápido

# 1. Clone o repositório
git clone https://github.com/bernardopg/BeBitter.git
cd BeBitter

# 2. Instale as dependências
pnpm install

# 3. Configure variáveis de ambiente (opcional)
cp .env.example .env.local

# 4. Inicie o servidor de desenvolvimento
pnpm dev

O servidor estará rodando em http://localhost:8080

📝 Scripts Disponíveis

Script Descrição
pnpm dev Servidor de desenvolvimento
pnpm build Build otimizada para produção
pnpm preview Preview da build local
pnpm lint Análise de código com ESLint
pnpm test Execução dos testes
pnpm build:analyze Análise do bundle size

🔧 Configuração Avançada

Variáveis de Ambiente
# .env.local (desenvolvimento)
VITE_SITE_URL=https://bebitterbebetter.com.br
VITE_GA_TRACKING_ID=G-XXXXXXXXXX
VITE_GSC_VERIFICATION=your-google-verification-token
VITE_DEBUG_MODE=true

# Produção (definir no CI/CD ou hosting)
VITE_SITE_URL=https://bebitterbebetter.com.br
VITE_GA_TRACKING_ID=G-XXXXXXXXXX  # Seu tracking ID real aqui
VITE_GSC_VERIFICATION=your-verification-token
VITE_DEBUG_MODE=false

⚙️ Configurações de Produção

Configuração Status Descrição
🌐 Domínio bebitterbebetter.com.br
🔒 SSL Let's Encrypt automático
☁️ CDN CloudFlare integrado
🗜️ Compression Gzip + Brotli ativo
🗺️ Sitemap Auto-gerado em build
🔍 Search Console Google indexado

📊 Analytics & Monitoramento

📈 Dashboard Principal

  • Google Analytics 4: Dashboard completo (privado)
  • ID de Tracking: Configurado via variáveis de ambiente
  • Search Console: Indexação e performance de busca

📊 Métricas Monitoradas

Categoria Métricas Status
Performance CLS, LCP, INP, FCP, TTFB Monitoring
User Behavior Page Views, Clicks, Scroll Depth Tracking
Conversions Contact Forms, Project Views Analytics
Errors JS Errors, 404s, Failed Requests Monitoring

🎯 Performance Metrics

🏆 Lighthouse Score

Categoria Score Badge
Performance 95-100/100 Performance
Accessibility 95-100/100 Accessibility
Best Practices 95-100/100 Best Practices
SEO 100/100 SEO

📦 Bundle Analysis

dist/
├── 📄 index.html                 (7.7KB)
├── 📁 assets/
│   ├── 🎯 index-[hash].js       (Chunk principal)
│   ├── 🎨 index-[hash].css      (Estilos críticos)
│   ├── ⚛️ vendor-[hash].js      (React + deps)
│   └── 🔧 utils-[hash].js       (Utilitários)
├── ⚙️ sw.js                      (2.1KB - Service Worker)
└── 🗜️ Compressed versions        (.gz + .br)

Total Bundle Size: ~150KB (gzipped: ~25KB)


🔐 Segurança & Conformidade

Aspecto Status Implementação
🔒 HTTPS Let's Encrypt SSL
🛡️ CSP Headers Content Security Policy
🚫 XSS Protection React + Sanitização
Rate Limiting ⚠️ A implementar
🔐 Input Validation Zod + React Hook Form
🍪 GDPR Compliance Cookie consent

🌟 Funcionalidades Especiais

💬 WhatsApp Integration

  • Widget Flutuante: Chat direto no site
  • Auto Dark Mode: Detecta tema automaticamente
  • Smart Notifications: Alertas configuráveis

🎭 Animações & Interações

  • Framer Motion: Animações fluidas e performáticas
  • Scroll Triggers: Elementos aparecem no viewport
  • Micro-interactions: Hover states e transições
  • Reduced Motion: Respeita preferências do usuário

🎨 Design System

  • Tema Duplo: Light/Dark mode com persistência
  • Tokens Consistentes: Cores, espaçamentos, tipografia
  • Componentes Modulares: Reutilização máxima
  • Responsive First: Mobile-first approach

📞 Contato & Suporte

👨‍💻 Desenvolvedor

Bernardo Gomes

Email WhatsApp LinkedIn

🔗 Links Importantes

Plataforma Link Badge
Portfolio bebitterbebetter.com.br Website
GitHub @bernardopg GitHub
Instagram @be.pgomes Instagram
Calendly Agendar Reunião Calendar

📈 Roadmap & Próximas Features

🚧 Em Desenvolvimento
  • Blog System - MDX + CMS headless
  • Newsletter - Integração com ConvertKit
  • Testimonials - Seção de depoimentos
  • A/B Testing - Framework de testes
🎯 Planejado
  • PWA Full - App nativo com Capacitor
  • Modo Offline - Funcionalidade completa offline
  • Push Notifications - Notificações web
  • Advanced Analytics - Heatmaps e session replay
🔍 Considerando
  • CMS Integration - Strapi ou Contentful
  • E-commerce - Loja de produtos digitais
  • Multi-language - Expansão para ES, FR
  • AI Chatbot - Assistente virtual

🏆 Reconhecimentos & Certificações

📊 Métricas de Qualidade

Code Quality Test Coverage Performance

🏅 Best Practices

TypeScript ESLint WCAG SEO


📄 Licença

Este projeto está licenciado sob a MIT License - ver o arquivo LICENSE.md para mais detalhes.


🙏 Agradecimentos

Construído com ❤️ em Belo Horizonte, MG

Utilizando as melhores tecnologias e práticas do mercado para entregar uma experiência web excepcional.


Last updated: Setembro 2025 Version: 2.0.1

Made with React Built with TypeScript Powered by Vite Open Source Love

About

Portfolio pessoal de Bernardo Gomes, desenvolvedor full-stack e designer, apresentando projetos, habilidades e informações de contato.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Contributors 2

  •  
  •