Recipe manager written in rust.
8.0K
A lightning-fast, highly-customizable recipe manager built in Rust. It's designed to be a central hub for all your recipes with advanced features tailored specifically for home cooks and BBQ enthusiasts.
.paprikarecipes) from Paprika Recipe Manager.To use the AI Photo Import feature, you'll need a free Gemini API key:
Ensure you have Rust and Cargo installed, then:
# Clone the repository
git clone https://github.com/dnewsholme/recipemanager.git
cd recipemanager
# Run the server locally
export GEMINI_API_KEY="your_api_key_here"
cargo run
The application will be available at http://localhost:3000.
The application is containerized using a multi-stage Docker build, resulting in an incredibly small and secure runtime image.
The easiest way to run the application is via Docker. Be sure to map a volume to /app/data to ensure your recipes and uploaded images persist across container restarts.
docker run -d \
--name recipemanager \
-p 3000:3000 \
-e GEMINI_API_KEY="your_api_key_here" \
-v /path/to/your/local/data:/app/data \
dnewsholme/recipemanager:latest
The /app/data volume contains two critical subdirectories:
recipes/: Contains the markdown files (.md) representing your saved recipes.uploads/: Contains any images or Combustion CSV files you have uploaded.This repository is configured with a GitHub Actions workflow (.github/workflows/docker.yml).
Every time code is pushed to the main branch, it automatically builds a new multi-stage Docker image and publishes it to Docker Hub as dnewsholme/recipemanager:latest.
Required Repository Secrets: To enable this automation, ensure the following secrets are configured in your GitHub repository:
DOCKERHUB_USERNAME: Your Docker Hub username.DOCKERHUB_TOKEN: A Docker Hub Personal Access Token (PAT).Content type
Image
Digest
sha256:12aece1b3…
Size
42.5 MB
Last updated
1 day ago
docker pull dnewsholme/rustrecipes