- Go 97.5%
- Makefile 2.5%
| i18n | ||
| .gitignore | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| main.go | ||
| Makefile | ||
| README.md | ||
| wine-logger.desktop | ||
Wine Logger
Manager to log homemade wine process.
A cross-platform GUI application to keep track of your winemaking batches, manage inventory, and export reports.
Features
- Batch Logging: Record detailed information about each winemaking batch:
- Date of creation.
- Number of bottles produced and current quantity.
- Ingredients: Berries (name and weight), sugar (kg), and water (L).
- Source: Option to mark if it was made "From Jam".
- Personal notes and photo attachments.
- Inventory Management: Quickly decrement the remaining quantity of bottles as you enjoy your wine.
- In-App Menu: View your current wine inventory in a clean, paper-styled menu format.
- Internationalization (i18n): Support for multiple languages, including English, Lithuanian, and Samogitian.
- Berry Grouping & Filtering:
- Berries are automatically color-coded for easy identification.
- Quick-filter the batch list by selecting a specific berry from the filter bar.
- Settings: Customizable database storage directory, language selection, and menu configuration.
Technologies
- Language: Go 1.26+
- GUI Toolkit: Fyne v2
- Database: zordfsdb (Filesystem-based database)
- Configuration: BurntSushi/toml
- Encoding: abcex
- Translations: JSON-based i18n system.
Installation
To build and install the application, ensure you have Go installed and the necessary dependencies for Fyne (see Fyne's Getting Started guide).
Using Makefile (Recommended on Linux)
To build, install or uninstall system-wide:
make
sudo make install
sudo make uninstall
This will install the binary to /usr/local/bin, translation files to /usr/local/share/wine-logger/i18n, and a desktop entry to /usr/local/share/applications.
Manual Build
go build -o wine-logger main.go
If building manually, ensure the i18n directory is in the same folder as the binary or in one of the supported system paths.
Usage
Run the compiled binary:
./wine-logger
- Add: Create a new winemaking log.
- Edit: Modify existing batch details.
- Note: Add or update notes for a specific batch.
- Add Photo: Attach photos to your logs.
- Dec: Decrement the bottle count for a batch.
- Menu: View current inventory in a paper-imitation layout.
- Settings: Change database location, language, and customize the menu title/header.
Configuration
The application stores its configuration in ~/.config/wine-logger/config.toml and by default stores the database in ~/.local/share/wine-logger/db.