Skip to content

IndraColor: A Rust CLI tool that extracts harmonious pastel color palettes from images, featuring dominant and complementary tones

License

Notifications You must be signed in to change notification settings

VitorCarvalho67/IndraColor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IndraColor Logo

GitHub stars GitHub forks GitHub issues GitHub license

IndraColor é uma ferramenta de linha de comando que transforma suas imagens em paletas de cores harmoniosas e suaves. Inspirado no deus hindu Indra, conhecido por sua associação com o arco-íris e as cores, este projeto extrai automaticamente tons pastéis e cria combinações esteticamente agradáveis a partir de qualquer imagem.

Características

  • 🎨 Extração inteligente de cores dominantes
  • 🎯 Geração de 3 tons da cor principal
  • ✨ 2 cores de destaque complementares
  • 🎭 Conversão automática para tons pastéis
  • 🖥️ Interface de terminal intuitiva
  • 🚀 Processamento rápido e eficiente
  • 📦 Fácil instalação e uso

Pré-requisitos

  • Rust (versão 1.70 ou superior)
  • Terminal com suporte a cores (Windows Terminal, iTerm2, etc.)

🛠️ Instalação

  1. Clone o repositório:
git clone https://github.com/VitorCarvalho67/IndraColor.git
cd IndraColor
  1. Compile o projeto:
cargo build --release
  1. (Opcional) Instale globalmente:
cargo install --path .

🚀 Como Usar

  1. Execute o programa:
cargo run
  1. Digite o caminho completo da imagem que deseja analisar
  2. Pressione Enter para processar
  3. Visualize as cores extraídas na interface
  4. Pressione ESC para sair

Exemplo de Uso

# Navegue até o diretório do projeto
cd IndraColor

# Execute o programa
cargo run

# Digite o caminho da imagem quando solicitado
C:\Users\Usuario\Imagens\minha_foto.jpg

Sobre as Cores

O IndraColor processa as imagens da seguinte forma:

  1. Cor Principal:

    • Extrai a cor dominante da imagem
    • Gera 3 variações:
      • Tom original
      • Versão mais clara
      • Versão mais escura
  2. Cores de Destaque:

    • Seleciona 2 cores complementares
    • Mantém o equilíbrio visual
  3. Efeito Pastel:

    • Aplica um filtro suavizante
    • Reduz a saturação em 30%
    • Aumenta o brilho em 30%

IndraColor run

🤝 Contribuindo

Contribuições são bem-vindas! Siga estes passos:

  1. Fork o projeto
  2. Crie uma branch para sua feature (git checkout -b feature/AmazingFeature)
  3. Commit suas mudanças (git commit -m 'Add some AmazingFeature')
  4. Push para a branch (git push origin feature/AmazingFeature)
  5. Abra um Pull Request

Padrões de Código

  • Siga as convenções de nomenclatura do Rust
  • Mantenha o código limpo e documentado
  • Adicione testes para novas funcionalidades
  • Atualize o README quando necessário

📝 Licença

Este projeto está licenciado sob a licença MIT - veja o arquivo LICENSE para detalhes.

Agradecimentos

  • color-thief - Biblioteca para extração de cores
  • ratatui - Framework para interfaces de terminal
  • image - Biblioteca para processamento de imagens

Suporte

Encontrou um problema ou tem uma sugestão? Abra uma issue no GitHub!

About

IndraColor: A Rust CLI tool that extracts harmonious pastel color palettes from images, featuring dominant and complementary tones

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages