# kcal

> Self-hosted, open-source personal food nutrition journal for tracking calories, macros, recipes, and food journal entries with goal setting and meal planning.

- **Category:** Recipe Management
- **Licence:** MPL-2.0
- **Latest version:** v0.9.0
- **Open source:** oss
- **Languages:** PHP
- **Platforms:** Docker Compose, Build from Source
- **Tags:** Health, Recipes, Recipe Manager, meal-planning, Docker, Php, Laravel, Self Hosted, Calorie tracker, Calorie Counter, Nutrition Tracker, Food Journal, Nutrition Information, Food Data, Nutrition Label, Diet Managment, Macronutrients, Macro Tracker

## Description

kcal is a self-hosted personal nutrition journal for logging foods, recipes, and daily intake. It lets you track calories and macronutrients (fat, carbs, protein) plus cholesterol and sodium, using US volume units and gram weights. Foods and recipes are shared across all users on the instance, while journal entries, goals, and meals stay private per user. You can set multiple daily calorie/macro targets with weekday defaults and per-day overrides, and organize intake across up to eight custom meals. The recipe view is kept clean for easy reading while cooking. Deployment options include Docker Compose (recommended), a manual Ubuntu guide, Laravel Sail, and VS Code Dev Containers. The stack requires PHP 8.4, a MySQL/MariaDB/PostgreSQL database, and optionally Redis, Elasticsearch or Algolia for search, plus AWS S3 for image storage. No external food APIs are used, keeping data local.

## Links

- [Homepage](https://github.com/kcal-app/kcal)
- [Docker](kcalapp/kcal)
- [GitHub Repository](https://github.com/kcal-app/kcal)
- [Docker Compose Template](https://github.com/kcal-app/kcal-docker)

---
Source: https://selfhost.directory/project/kcal