O TestTubeyumyumums é um aplicativo baseado em Django projetado para fornecer recomendações de alimentos personalizadas aos usuários com base nos resultados dos exames de sangue. O aplicativo utiliza React e Tailwind (ambos baseados em CDN) para o front-end e PostgreSQL para o banco de dados. 
O Testtubeyumyumum visa direcionar uma mistura única dos setores de saúde, patologia e nutrição, oferecendo aos usuários recomendações alimentares com base em seus relatórios de exames de sangue. O projeto adota uma abordagem única porque é incomum encontrar aplicativos que usam resultados de exames de sangue para recomendar alimentos com base em déficits nutricionais e excesso. Na verdade, o plano original era integrar o aplicativo com uma API pública que forneceria opções alimentares com base em uma variedade de nutrientes. No entanto, como não há uma API semelhante disponível, um banco de dados de alimentos feito por si mesmo integrado ao programa e acessível como um arquivo CSV faz recomendações. A complexidade do projeto é encontrada em seu algoritmo, que examina os resultados dos exames de sangue de acordo com as variações nos parâmetros do relatório e doenças relacionadas, extrai nutrientes que falta, compara essas deficiências aos relatórios de vitamina e mineral precisos do usuário e recupera as recomendações alimentares do TATABASE CSV local, baseado em conteúdo nutricional.
Um formulário de registro de várias páginas com capacidade de resposta, entradas validadas, mensagens de erro sob medida e envios incompletos é outro elemento do projeto.
Banco de dados CSV de itens alimentares que contém o nome de alimentos, sua descrição, link de imagem e todos os infos nutricionais, incluindo a porção média (porção recomendada denominada).
Ajuda a usar CSS do Tailwind através do CDN
Nomes auto-explicativos
Modificado para carregar o banco de dados CSV sempre que o aplicativo for inicializado. Além disso, quando as tabelas são criadas pela primeira vez no banco de dados, as tabelas de CBC e Vitmin são preenchidas com valores de alcance alto e baixo fornecidos pelo Dr. Lalpathlab.
Contém mensagens de análise pré-wrote para possíveis combinações de parâmetros CBC.
Não está mais em uso.
Contém funções auxiliares para retornar a variação de nutrientes com base em parâmetros baixos e altos da CBC
Contém um dicionário global que vincula cada nutriente ao nome de campo no banco de dados e quanto desse nutriente é considerado alto/baixo diferenciador em um item alimentar.
Contém funções que recebem relatórios e intervalos e retornam o dicionário de análise de relatórios e os itens alimentares recomendados.
Contém informações sobre que tipo de desvio de parâmetro pode apontar para qual tipo de desequilíbrio nutriente.
Utiliza os sinais de migração pós-migração embutidos do Django para preencher as duas primeiras linhas do modelo CBC e o modelo de vitmina quando as migrações são feitas pela primeira vez.
Contém esquema para itens alimentares armazenados no banco de dados
Clone este repositório:
git clone https://github.com/jijivishu/TestTubeYumYums.gitMude para o diretório do projeto e crie um ambiente virtual do Python:
cd TestTubeYumYums
python -m venv envAtive o ambiente virtual:
env S cripts a ctivate source env/bin/activate source env/Scripts/activateInstale os pacotes necessários:
pip install -r requirements.txtCrie um arquivo .env no diretório raiz com o seguinte conteúdo:
DB_NAME=test_tube_yum_yums_db
DB_USER=postgres
DB_PASSWORD=postgres
DB_HOST=localhost
DB_PORT=5432 NOTA : Para a próxima etapa, verifique se o PostgreSQL está em execução na porta 5432 no localhost com o nome de usuário e a senha definida para o PostGres e o nome do banco de dados definido como test_tube_yum_yums_db . Modifique o arquivo .env criado na etapa anterior, se necessário, para a personalização do banco de dados. 
Criar migrações:
python manage.py makemigrations
python manage.py migrateCarregue dados alimentares do arquivo CSV para o banco de dados:
python manage.py load_food_data food_data.csvExecute o aplicativo:
python manage.py runserverAcesse o aplicativo em http://127.0.0.1:8000/. Garanta uma conexão com a Internet.
O processo de registro consiste em três etapas, com a primeira etapa sendo obrigatória. Os usuários fornecem seu nome, email (identificador exclusivo), data de nascimento e senha na primeira etapa. As etapas subsequentes coletam informações adicionais como país, peso, altura, pressão arterial e dados de diabetes. 
As recomendações alimentares são fornecidas com base nos relatórios de testes anteriores dos usuários. Se um usuário não tiver relatórios de teste enviados, ele será solicitado a fazê -lo. Os usuários podem fazer upload de relatórios de teste através da rota '/add', personalizando os intervalos associados a um relatório de teste no momento do upload. 
Após o envio, os usuários são redirecionados para a página inicial, onde podem visualizar itens alimentares recomendados com base nos resultados dos testes e no relatório de análise. 
Leia nossas diretrizes de contribuição antes de contribuir para o projeto.
Obrigado por usar o testtubeyumyumum!