Cookbook is a Java-based application designed to manage and organize recipes. It provides a simple interface for storing, retrieving, and sharing recipes.
This demo is created for the 42Berlin, Devoxx France and Belgium workshops.
- Add, edit, and delete recipes.
- Search recipes by name or ingredients.
- Share recipes with others.
- REST API for integration with other systems.
- Java 25 Runtime Environment
- Maven 3 for building the project
- Docker (optional, for containerized deployment)
- Ollama (make sure to pull the models that you want to use, as the app won't pull them automatically)
- Redis Stack (for the RAG part)
- Clone the repository:
git clone https://github.com/your-repo/cookbook.git cd cookbook - Build the project:
mvn clean install
- Run the application:
java -jar target/cookbook-0.0.1-SNAPSHOT.jar
- Build the Docker image:
docker build -t cookbook . - Run the Docker container:
docker run --net host cookbook
Note: we're using --net host to make it easier for the Java
app to communicate with Ollama when Ollama is running locally.
For the RAG part, you need to run a Redis Stack instance, for instance with:
docker run -p 6379:6379 -d --name redis-stack redis/redis-stackThen you can load a bunch of recipes into the Redis Vector Store with the script upload-cookbook.sh.
This project is licensed under the MIT License. See the LICENSE file for details.