·5 min de leitura

Fiz uma aplicação utilizando TABELA TACO (Nutrição)

#programação#reflexão#nutrição

Tudo começou numa tarde de quinta-feira. Quando eu voltei da academia e fiquei me perguntando o que eu poderia comer, e não fiz o que qualquer pessoa faria, abriria o ChatGPT e perguntaria o que comer de pós treino.

Não, eu tive uma ideia de transformar isso em algo a mais. Comecei a desenvolver e inicialmente enfrentei alguns problemas a respeito da qualidade dos dados, não achei uma fonte confiável e também não sabia o que pesquisar. Até então eu não tinha conhecimento na Tabela Brasileira de Composição de Alimentos - TACO.

Preparando os Dados

Baixei o arquivo em .csv e normalizei com Python usando Google Colab. Estava totalmente poluído quando baixei pela primeira vez e tentei utilizar na força bruta. Definitivamente ter normalizado foi a melhor decisão para evitar problemas futuros.

A fins de entendimento sobre como deixei o arquivo antes de utiliza-lo como base de dados e popular a tabela no banco de dados, aqui está o arquivo:

Tabela Taco

Definindo stack e Preparando ambiente

Quando parti para o desenvolvimento do projeto, pensei em utilizar Go para criar mais familiaridade com a linguagem e continuar me desenvolvendo. Mas no final, acabei optando por utilizar o ecossistema NodeJs mesmo.

npm init --y 
npm i typescript @types/node tsx -D

Então, adicionei o arquivo normalizado na raíz do projeto, defini o schema para o Prisma, subi as tabelas e populei com o conteúdo presente no arquivo da tabela taco.

npm i @prisma/client
npm i prisma -D

Pronto, eu tinha o ambiente ideal pronto para uso, agora que todos os dados necessários estavam dentro do banco de dados, parti para desenvolver a API do projeto. Por motivos de escolha própria optei por utilizar Fastify

npm i fastify

Desenvolvendo API

Após algumas horas configurando toda a API, validações com Zod, Autenticação. Eu tinha uma API funcional que consultava valores nutricionais atualizados, documentados, tudo para facilitar a construção da minha dieta. Se eu me arrependi não ter perguntado para o ChatGPT o que comer? Sim, mas foi legal desenvolver ouvindo uma boa música. E no geral ficou bem intuitiva de testar e utilizar para desenvolver aplicações no nicho de saúde.

Documentação API

Desenvolvendo Site - Tela Inicial

Tabela Taco Print

O desenvolvimento do website foi tranquilo de ser feito. Mas como inicialmente a minha ideia era construir uma API funcional para terceiros, estava sem muita ideia do que fazer.

Então pedi sugestões a algumas IA's e acatei as que eu achei mais interessante de ter no projeto. Comecei adicionando uma tabela principal que traria os valores nutricionais de cada alimento, individualmente. Mais para frente adicionei a lib Zustand

npm i zustand
Tabela Taco Print

Para fazer o gerenciamento de estados de itens favoritados, para serem usados em uma próxima tela que iria adicionar em seguida.

Desenvolvimento Site - Calculadora

Tabela Taco Print

A ideia principal dessa tela é ter em prontidão dados nutricionais para cálculos automazidados de dietas. Sendo possível visualizar a quantidade de proteínas, calorias, carboidratos, sódio, entre outras informações nutricionais e informativas também. Informei essa aplicação para uns amigos nutricionais e eles curtiram bastante a proposta.

Além do mais é possível salvar a dieta em PDF, facilitando ainda mais o processo de repasse para o paciente, por exemplo.

Veja o exemplo clicando aqui

Desenvolvimento Site - Comparador

Tabela Taco Print Tabela Taco Print

A proposta dessa página herdou algumas inspirações na página do cálculo nutricional. O que diverge é o próposito, essa tela tem como intuito, informar ao usuário os prós e contras de cada refeição.

Ele seleciona o alimento que quer comparar e o sistema busca as informações e simplifica o entendimento, indicando quem possui mais o que.

Desenvolvimento Site - Gerador de Rótulo

Tabela Taco Print

Aqui eu fui além. Pensei em algo que pudesse resolver alguns problemas latentes que alguns empreendedores autonomos tem, adicionar informação nutricional nas refeições. Por exemplo, suponhamos que você possui um negócio de marmitas fitness, clientes e público voltado para o meio fitness querem saber o que estão consumindo. E para quem não é nutricionista, isso pode ser cansativo ou até mesmo custoso fazer.

Então decidi integrar e disponibilizar essa ferramenta que permite gerar rótulos e baixar, daí o usuário final apenas imprime e cola nas respectivas refeições.

Exemplo de Rótulo Gerado

Desenvolvimento Site - Assistente de IA

Tabela Taco Print

O projeto já estava redondo e funcionando de modo orgânico. Mas decidi adicionar um Assistente de IA para estar melhorando ainda mais a experiência dos usuários na aplicação. E diferente de um ChatGPT, esse modelo consome dados diretamente da tabela TACO.

E todos os alimentos selecionados a partir da sugestão da IA irão direto para a Calculadora onde você poderá realizar os ajustes necessários.

Documentação para Desenvolvedores

A documentação da API está disponivel no link é integrado com Swagger então você só precisa ter uma API Key na plataforma e na RapidAPI caso queira adicionar em seu projeto. Seja bem-vindo.

Doação

Para manter o serviço rodando estou monetizando através de doação, não se sinta na obrigação de contribuir, apenas se achar gostar do produto e da ideia.

Doação

Considerações Finais

As últimas telas da aplicação são voltadas para Dev's. Tenho acompanhado o consumo da API e tem tido um retorno bem significativo de produtos já consumindo diretamente a API, e pessoas utilizando a plataforma para diversos fins.

Isso é tudo.

Goku ending 3 | Anime dragon ball super, Anime dragon ball, Dragon ball ...