Input plugins
Input plugins extract or generate colour palettes from various sources.
Available plugins
| Plugin | Description | Source type | Requires |
|---|---|---|---|
| image | Extract colours from images (files, directories, URLs) with optional ambient lighting | image | |
| file | Load palette from file or colour overrides | file | |
| markdown | Load theme from tinct markdown theme file | file | |
| remote-json | Fetch colours from remote JSON with JSONPath queries | url | network |
| remote-css | Fetch colours from remote CSS variables | url | network |
| google-genai | Generate images with Google Imagen and extract colours | api | network; creds: GOOGLE_API_KEY |
| openrouter | Generate images with OpenRouter.ai models and extract colours | api | network; creds: OPENROUTER_API_KEY |
| paletty | Fetch curated terminal palettes from paletty.dev | api | network |
| random | Generate random colour palettes with configurable seed and colour count | generated |
Usage
Specify input with -i flag:
tinct generate -i image -p ~/wallpaper.jpg -o all
tinct generate -i remote-json --remote-json.url "..." -o all
Common interface
All input plugins:
- Accept configuration via flags
- Validate inputs before processing
- Return a categorised colour palette
- Optionally provide theme hints (dark/light)
- Optionally provide wallpaper path
Optional features
Theme hinting
Some plugins can suggest a theme type:
| Plugin | Detection method |
|---|---|
| image | Luminance analysis |
| google-genai | Prompt inference |
| remote-json | Metadata if available |
| file | Based on background colour |
Wallpaper provision
Some plugins provide a wallpaper for output plugins:
| Plugin | Wallpaper source |
|---|---|
| image | The input image |
| google-genai | Generated image |
| openrouter | Generated image |
| markdown | Embedded wallpaper |
Two template fields are available:
| Field | Description |
|---|---|
.WallpaperPath | Canonical path (resolved relative paths, cached URLs) |
.WallpaperRawPath | Literal user input (original path/URL) |
Output plugins like hyprpaper use .WallpaperPath to set the wallpaper automatically.
See Template functions: Context fields for details.
Choosing an input
| Scenario | Recommended input |
|---|---|
| Match your wallpaper | image |
| Want something unique | google-genai or openrouter |
| Restore saved theme | markdown |
| Quick custom colours | file |