Skip to content

Project structure

Alexis Boitel edited this page Jul 12, 2026 · 4 revisions
├── cli/          # griffon-cli: command-line interface (Rust)
├── daemon/       # Background daemon
│   ├── daemon_core/     # Core daemon logic
│   ├── daemon_runner/   # Daemon process entry point / runner
│   ├── plugin_manager/  # Loads, enables/disables, and talks to plugins
│   └── griffon-daemon.service   # systemd unit file (used by the packaged install)
├── gui/          # Desktop application (Tauri v2 + Vite frontend)
├── plugins/      # Built-in extensions
│   ├── griffon_scanner/   # Scanner extension (YARA-based)
│   ├── griffon_cleaner/   # Cleaner extension
│   ├── docker_helper/     # Docker-related helper extension
│   ├── plugin_template/   # Starter template for new extensions
│   └── plugin-guide.md    # Extension development guide
├── shared/       # Crates shared between the daemon and plugins
│   ├── ipc_protocol/     # IPC message types between daemon, GUI, and CLI
│   ├── logger/           # Shared logging utilities
│   └── plugin_interface/ # Stable ABI contract used by all extensions
├── docs/         # Manifest/TOML developer documentation
├── scripts/      # Packaging scripts (used to build the .deb / .rpm)
├── justfile      # Dev command shortcuts (run-daemon, run-gui, run-cli, update-plugins, ...)
└── Cargo.toml    # Workspace root```

Clone this wiki locally