Projeto JavaScript vanilla com utilitários para manipulação de datas, desenvolvido com vibe coding usando Claude Code.
Acesse o projeto online: Datas
- Diferença entre datas: Calcule a diferença em dias entre duas datas
- Dias desde data: Veja quantos dias se passaram desde uma data específica
- Fases da Lua: Visualize as fases lunares para qualquer mês/ano
- Calendário mensal: Interface visual do calendário com destaque do dia atual
- Cálculo de idade: Idade completa em anos, meses e dias
- Formatação de datas: Multiple formatos (DD/MM/YYYY, extenso, etc.)
- Informações adicionais: Dia da semana, trimestre, semana do ano
- Validações: Verificação de fim de semana, anos bissextos
O cálculo das fases da lua utiliza:
- Algoritmo astronômico baseado no dia juliano
- Ciclo sinódico lunar de ~29,53 dias
- 8 fases distintas: Nova, Crescente, Quarto Crescente, Gibosa Crescente, Cheia, Gibosa Minguante, Quarto Minguante, Minguante
- Precisão astronômica para cálculos históricos e futuros
- Gradiente Wildtech: Cores laranja (#ff7b00) e marrom (#8b4513)
- Design responsivo para desktop e mobile
- Interface intuitiva com feedback visual
- Ícones de lua para visualização das fases lunares
datas/
├── .github/
│ └── FUNDING.yml # Configuração de patrocínio/apoio
├── coverage/ # Relatórios de cobertura de testes
├── index.html # Interface principal
├── styles.css # Estilos responsivos
├── date-utils.js # Classe com funções utilitárias
├── app.js # Lógica de interação da interface
├── date-utils.test.js # Testes unitários para date-utils
├── app.test.js # Testes unitários para app
├── jest.setup.js # Configuração do Jest
├── package.json # Dependências e scripts do projeto
├── package-lock.json # Versões exatas das dependências
├── LICENSE.md # Licença MIT do projeto
├── TESTING.md # Documentação dos testes
└── README.md # Este arquivo
- Fork ou clone este repositório
- Vá nas Settings do repositório
- Na seção Pages, selecione:
- Source: "Deploy from a branch"
- Branch: "main"
- Folder: "/ (root)"
- Clique em Save
- Seu site estará disponível em:
https://dwildt.github.io/datas
- HTML5 - Estrutura semântica
- CSS3 - Estilos com Flexbox/Grid e gradientes
- JavaScript ES6+ - Lógica pura (vanilla)
- Jest - Framework de testes unitários
- GitHub Pages - Hospedagem gratuita
Este projeto possui testes unitários que garantem a qualidade e funcionamento das funções utilitárias.
Para informações detalhadas sobre execução de testes, cobertura e configuração, consulte: TESTING.md
# Clone o repositório
git clone https://github.com/dwildt/datas.git
# Entre no diretório
cd datas
# Abra o index.html no navegador
# Ou use um servidor local como Live Server
Contribuições são bem-vindas! Sinta-se à vontade para:
- Fazer um 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 é open source e está disponível sob a MIT License.
- 💻 Vibe Coding - Metodologia de desenvolvimento
- 🤖 Claude Code - Assistente de programação
- 🎨 Wildtech - Identidade visual
⭐ Se este projeto foi útil para você, considere dar uma estrela no repositório!