NutriTrace: трекер питания в локальном Docker-контейнере без облака
NutriTrace — это самостийный трекер питания в одном Docker-контейнере без телеметрии и облачного синхронизирования.
Проблема отслеживания питания часто решается с помощью облачных сервисов, но NutriTrace не требует создания аккаунта и обеспечивает полный контроль над данными. Это делает его удобным вариантом для тех, кто заботится о конфиденциальности и не хочет зависеть от внешних сервисов. Проект отлично подойдёт для разработчиков и пользователей, предпочитающих локальные решения. Технология — Docker, что упрощает запуск и развёртывание на большинстве хостингов или личных серверах.
Учти, NutriTrace находится под лицензией AGPL-3.0, так что для коммерческого использования потребуется обратиться к его условиям лицензии. Также нет мобильного приложения для iOS, но разработчики планируют его добавить.
NutriTrace — это самохостящийся личный трекер питания, который работает в виде одного контейнера Docker. Он предоставляет веб-приложение (PWA) и нативное Android-приложение, позволяющее отслеживать питание без необходимости создавать учетные записи на внешних сервисах. Все данные остаются на твоем оборудовании, что обеспечивает высокую степень конфиденциальности.
Основные принципы
- Самостоятельный хостинг остается бесплатным. Сервер, PWA и исходный код не будут платными.
- Нет трекеров и аналитики. NutriTrace не отправляет данные никуда, кроме твоей сети, если ты сам не выберешь стороннюю интеграцию.
- Твои данные находятся на твоем оборудовании. Никаких центральных серверов и синхронизации в облаке.
- Открытый код под лицензией AGPL-3.0. Все строки кода, которые касаются твоих данных, доступны для прочтения.
Функции
- Дневник и логирование еды. Поддерживает настраиваемые слоты для приемов пищи и виджет для отслеживания IF.
- База данных продуктов. Локальная база данных с перфорацией источников и возможностью сканирования этикеток с помощью AI OCR.
- Цели и адаптивный TDEE. Различные режимы отслеживания с персонализированными рекомендациями.
- Интеграции здоровья. Подключение к фитнес-трекерам, таким как Fitbit и Withings.
- Открытые и локальные данные о продуктах питания. Запросы к API USDA и возможность использования локальных баз данных.
- Trace AI. Система, анализирующая твой дневник и предлагающая еду или активности на основе твоих данных.
Установка и запуск
NutriTrace можно установить с помощью Docker. Для этого потребуется минимально настроенный файл docker-compose.yml. Вот пример:
services:
nutritrace:
image: ghcr.io/traceapps/nutritrace:latest
container_name: nutritrace
ports:
- "3001:3001"
volumes:
- ./data/db:/data/db
- ./data/uploads:/data/uploads
environment:
- DB_PATH=/data/db/nutritrace.db
- UPLOADS_PATH=/data/uploads
- JWT_SECRET=change-me-to-a-long-random-string
restart: unless-stopped
После этого нужно сгенерировать секрет JWT:
openssl rand -base64 48
И запустить контейнер:
docker compose up -d
Открой браузер и перейди по адресу http://localhost:3001, чтобы пройти через начальный мастер настройки.
Ограничения и предостережения
NutriTrace не является медицинским или профессиональным программным обеспечением. Оно не дает медицинских рекомендаций или диагнозов. Все данные, собранные приложением, предназначены только для информирования и самоконтроля. Программа не заменяет консультации с квалифицированным медицинским специалистом или диетологом, особенно если у тебя есть медицинские условия, влияющие на питание.
Также стоит отметить, что на данный момент отсутствует поддержка устройств Apple, таких как iPhone, поскольку для разработки требуется специфика, связанная с аппаратным обеспечением Apple.
Открыть на GitHub: TraceApps/nutritrace →
RepoRadar