WGZE (Was gibt's zum Essen) is a German food tracking web application that helps users manage their cooking repertoire and track meal consumption. Built with Hono, JSX templates, HTMX, Cloudflare Workers and Cloudflare D1.
- Dish Management: Add, edit, and delete dishes in your cooking repertoire
- Meal Tracking: Log meals with dates and optional notes
- AI Suggestions: Get smart meal suggestions based on your eating history and preferences using Google Gemini
- Node.js and npm installed
- Cloudflare account (for deployment)
-
Clone and install dependencies
git clone https://github.com/uflowie/wgze.git cd wgze npm install -
Set up environment variables
Create a
.dev.varsfile in the root directory:# Authentication JWT_SECRET=your-jwt-secret-here AUTH_PASSWORD=your-auth-password-here # AI Integration GEMINI_API_KEY=your-gemini-api-key-here -
Initialize local database
Create the local D1 database with the schema:
npx wrangler d1 execute wgze-db --local --file=schema.sql
-
Start development server
npm run dev
The application uses JWT-based authentication with a simple password login. Set your password in the AUTH_PASSWORD environment variable.