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 →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте