br_ingredientes_icons 1.0.4
br_ingredientes_icons: ^1.0.4 copied to clipboard
Ícones PNG e busca inteligente de ingredientes para Flutter (brasileiro/multilíngue).
🥕 br_smart_ingredientes_icons #
Uma coleção de ícones PNG com reconhecimento inteligente de nomes de ingredientes — projetado para apps de receita, alimentação saudável e aplicativos gastronômicos brasileiros/multilíngues!
[Banner do br_ingredientes_icons]
🚀 O que é? #
O br_ingredientes_icons oferece:
- Mais de 160 ícones exclusivos de alimentos e ingredientes encontrados em receitas do Brasil
- Identificação automática do ingrediente digitado, mesmo com nomes em inglês, espanhol, francês, sinônimos ou pequenas variações
- Suporte a fallback: se não encontrar o ingrediente, exibe um ícone padrão
- Customização de cor (para ícones monocromáticos)
- Fácil integração em projetos Flutter
- Livre para uso pessoal e comercial — MIT License
📱 Exemplo Rápido #
import 'package:br_ingredientes_icons/br_ingredientes_icons.dart';
BrIngredienteIconSmart(
nome: 'cheese', // ou 'queijo', 'queso', 'fromage', etc
size: 48,
color: Colors.amber, // opcional, para icons monocromáticos
)
Reconhece 'queijo', 'cheese', 'queso', 'fromage' e variantes.
💡 Exemplo de Uso #
Veja um exemplo completo de implementação no arquivo example/lib/main.dart, que demonstra como criar uma grade de ingredientes com ícones em cards estilizados usando o widget BrIngredienteIconSmart.
🧠 Buscas inteligentes #
Aceita o nome do ingrediente:
- em Português: alho, tomilho, açúcar, rúcula...
- em Inglês: garlic, thyme, sugar, arugula...
- em Espanhol: ajo, tomillo, azúcar, rúcula...
- em Francês: ail, thym, sucre, roquette... e até sinônimos/femininos/plurais comuns!
🔍 Testando a Busca Inteligente #
// Todos esses exemplos vão exibir o mesmo ícone de queijo:
BrIngredienteIconSmart(nome: 'queijo', size: 48), // Português
BrIngredienteIconSmart(nome: 'cheese', size: 48), // Inglês
BrIngredienteIconSmart(nome: 'queso', size: 48), // Espanhol
BrIngredienteIconSmart(nome: 'fromage', size: 48), // Francês
BrIngredienteIconSmart(nome: 'mozzarella', size: 48), // Tipo específico
// Funcionam também com pequenas variações:
BrIngredienteIconSmart(nome: 'lettuce', size: 48), // -> alface
BrIngredienteIconSmart(nome: 'strawberry', size: 48), // -> morango
BrIngredienteIconSmart(nome: 'salt', size: 48), // -> sal
BrIngredienteIconSmart(nome: 'bread', size: 48), // -> pao_de_forma
📦 Instalação #
No seu pubspec.yaml:
dependencies:
br_ingredientes_icons: ^1.0.0
Depois:
flutter pub get
🚀 Executando o Exemplo #
Para ver o exemplo funcionando:
- Clone o repositório:
git clone https://github.com/davidkalil10/BR-Smart-Ingredientes-Icons.git
cd BR-Smart-Ingredientes-Icons
- Navegue até o diretório do exemplo:
cd example
- Execute o app:
flutter run
O exemplo mostra uma grade com todos os ingredientes disponíveis na biblioteca, demonstrando como usar o widget BrIngredienteIconSmart em uma interface real.
flutter pub get
🎨 Como usar #
Ícone direto Se você já sabe o nome do arquivo (SEM ".png"):
BrIngredienteIcon(nome: 'tomate', size: 32)
Ícone inteligente (busca por nome, vários idiomas, sinônimos, fallback):
BrIngredienteIconSmart(
nome: 'eggplant', // pode ser "berinjela", "aubergine", "berenjena"...
size: 64,
color: Colors.purple,
fallback: 'default', // opicional, precisa do icon default nos assets
)
Exibindo vários ícones:
final ingredientes = ['milk', 'banana', 'sugar', 'baguette', 'queso', 'cheese'];
GridView.count(
crossAxisCount: 4,
children: ingredientes.map((nome) =>
BrIngredienteIconSmart(nome: nome)
).toList(),
)
| Categoria | Ingredientes |
|---|---|
| Frutas | abacate abacaxi açaí banana cereja cupuaçu kiwi laranja lichia limão maçã mamão manga maracujá melancia melão morango pêra pitaya tâmara uva |
| Verduras e Legumes | abobora abobrinha acelga agrião aipo alface alho alho poró batata batata doce berinjela beterraba brocolis cebola cebola roxa cebolinha cenoura chuchu coentro couve couve de bruxelas couve flor espinafre escarola gengibre hortelã louro manjericão nabo pepino pimentão rabanete repolho rúcula salsão salsinha tomate |
| Temperos e Condimentos | alecrim azeite azeitona canela cravo da india ketchup mostarda molho barbecue molho branco molho de pimenta molho de tomate molho pesto molho shoyu orégano pimenta calabresa pimenta dedo de moca pimenta do reino pimenta vermelha sal tomilho vinagre |
| Carnes e Peixes | aliche atum bacon calabresa carne moída carne seca coxa de frango frango desfiado lombo canadense peito de peru presunto salmão sardinha salsicha |
| Laticínios | catupiry creme de leite leite leite condensado leite de coco manteiga maionese queijo queijo ralado yogurt |
| Cereais e Grãos | arroz aveia farinha de rosca farinha de trigo feijão granola grãos grão de bico milho polvilho azedo polvilho doce spaghetti |
| Oleaginosas e Castanhas | amendoa castanha de caju castanha do para nozes noz moscada pistache |
| Massas e Pães | biscoito bolacha champagne croissant esfirra aberta esfirra fechada massa de lasanha massa de pizza massa folhada pão de forma pão frances |
| Doces e Sobremesas | brigadeiro chocolate coco mel m&m ovomaltine paçoca suspiro |
| Bebidas | água café cerveja guaraná refrigerante |
| Outros | caldo de carne caldo de legumes default ovo ovo frito palmito polenta |
Ver nomes alternativos e traduções (EN/ES/FR)
banana / banana / plátano / banane queijo / cheese / queso / fromage leite / milk / leche / lait tomate / tomato / tomate / tomate ovo / egg / huevo / œuf ... (veja ingredientes_data.dart )
🔄 Como funciona internamente #
O widget BrIngredienteIconSmart recebe o nome digitado, busca automaticamente no banco de aliases (que cobre PT, EN, ES, FR, sinônimos), e retorna a chave correspondente ao arquivo PNG na pasta assets/icons/.
Se não encontra, devolve o fallback (por padrão, default.png).
✏️ Como contribuir #
Abra issues e pull requests no GitHub!
🎯 Formas de contribuir: #
- Novos ingredientes: Envie o PNG + nomes/sinônimos!
- Traduções: Adicione suporte a novos idiomas
- Melhorias: Sugestões para tornar esse pacote referência!
- Documentação: Ajude a melhorar exemplos e tutoriais
- Testes: Reporte bugs ou problemas de compatibilidade
📁 Estrutura do Projeto #
br_ingredientes_icons/
├── assets/icons/ # Ícones PNG dos ingredientes
├── example/ # App de exemplo (demonstração)
├── lib/
│ ├── br_ingredientes_icons.dart # Widget principal
│ └── ingredientes_data.dart # Mapeamento de aliases
├── pubspec.yaml # Configuração do package
└── README.md # Esta documentação
🔗 Links Úteis #
- Repositório: https://github.com/davidkalil10/BR-Smart-Ingredientes-Icons
- pub.dev: https://pub.dev/packages/br_ingredientes_icons
- Issues: https://github.com/davidkalil10/BR-Smart-Ingredientes-Icons/issues
📄 Licença #
MIT — por David Kalil Braga
⭐ Se usar este package, deixe um star no repositório ou cite nos seus apps!