Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fmartingr/games-screenshot-manager
Simple CLI tool to manage your game's screenshots
https://github.com/fmartingr/games-screenshot-manager
cli games golang screenshots steam videogames
Last synced: 18 days ago
JSON representation
Simple CLI tool to manage your game's screenshots
- Host: GitHub
- URL: https://github.com/fmartingr/games-screenshot-manager
- Owner: fmartingr
- Created: 2020-10-29T12:49:28.000Z (about 4 years ago)
- Default Branch: latest
- Last Pushed: 2024-08-05T09:12:12.000Z (3 months ago)
- Last Synced: 2024-10-14T20:41:49.962Z (about 1 month ago)
- Topics: cli, games, golang, screenshots, steam, videogames
- Language: Go
- Homepage:
- Size: 119 KB
- Stars: 6
- Watchers: 3
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Games Screenshot Manager
[![Go Report Card](https://goreportcard.com/badge/github.com/fmartingr/games-screenshot-manager)](https://goreportcard.com/report/github.com/fmartingr/games-screenshot-manager)
A simple tool to collect and sort games screenshots from different platforms.
## Supported providers
Use the appropriate ID with the `-provider` flag. [See examples below](#Usage)
| Name | ID | Linux | Windows | macOS | Covers | Notes |
| ----------------- | --------------- | ----- | ------- | ----- | ------ | -------------------------------------------------------------------- |
| Guild Wars 2 | `gw2` | No | Yes | No | No | Works on unsupported platforms with `-input-path` pointing to folder |
| Minecraft | `minecraft` | Yes | Yes | Yes | No |
| PlayStation 4 | `playstation-4` | - | - | - | No | Requires `-input-path` pointing to PS4 folder |
| RetroArch | `retroarch` | - | - | - | Yes | Requires `-input-path` pointing to Playlists folder |
| Steam | `steam` | Yes | Yes | Yes | Yes |
| World of Wardraft | `wow` | No | Yes | Yes | No | Works on unsupported platforms with `-input-path` pointing to folder |
| Xbox Game Bar | `xbox-game-bar` | - | - | - | No | Requires `-input-path` pointing to the folder holding the captures |## Requirements
- [exiftool](https://exiftool.org/) to parse EXIF data from files. (Using [baransher/go-exiftool library](https://github.com/barasher/go-exiftool))
## How it works
Each provider has it's own way of finding the screenshots, but ideally the screenshots folder for games are known to us users so we only need to traverse them and find image files except for installations that may vary (like Retroarch) or systems outside of the PC ecosystem (Playstation).
In some cases to have all the information for a particular provider we need to retrieve more data from the internet, for example the Steam game list to associate names to the IDs ~~or in Nintendo Switch's case a community provided list to associate the internal ID with the Game's name~~.
For more details, you can check out [the source code for all providers](https://github.com/fmartingr/games-screenshot-manager/tree/master/pkg/providers)
Optionally a cover image for a game can be downloaded and placed under a `.cover` file in the game path. For this to work use the `-download-cover` flag. Check above for provider support for this feature.
## Nintendo Switch notice
This project initially started as a Nintendo Switch helper to import and properly organize screenshots, but Nintendo improved this over the years and now we can use Android File Transfer to easily get the screenshots from a Nintendo Switch with the proper game name as folder name. For more information [read this issue](https://github.com/RenanGreca/Switch-Screenshots/issues/46)
## Installation
```
go get -u github.com/fmartingr/games-screenshot-manager
```Or get the latest binary build from the [releases page](https://github.com/fmartingr/games-screenshot-manager/releases)
## Usage
```
# Help
games-screenshot-manager -h# Fetch and sort all Steam screenshots into ./Output
games-screenshot-manager -provider steam -output-path ./Output# Like the one above but it'll download all header images for the games
games-screenshot-manager -provider steam -output-path ./Output -download-covers# Perform a dry run (see what's gonna get copied where)
games-screenshot-manager -provider steam -dry-run# Parse all Nintendo Switch screenshots
games-screenshot-manager -provider nintendo-switch -input-path ./Album
```