No description
Find a file
Rob B e313efdfec
feat: compatibility info display in View Mod screen. log to ficsit-cli.log by default (#33)
* fix: log by default (ficsit-cli.log in CWD)

* chore: update readme with info on code generation

* chore: regenerate docs for default log file location

* feat: compatibility info state and note display. wip: keybind to switch view modes not working

* fix: move render code out to a function, but it still isn't quite working yet

* feat: display mod reference below mod name

* Fix compat toggle with

* Show scroll up/down on quick help

* chore: fix merge conflict

* chore: run go install mvdan.cc/gofumpt@latest; gofumpt -l -w .

* chore: run gci.exe write --skip-generated -s standard -s default -s 'prefix(github.com/satisfactorymodding/ficsit-cli)' -s blank -s dot .

* chore: update readme linting info and run golangci-lint --version

* fix: log file is defaulted to empty again

* fix(#33): update render to return just string

* fix(#33): renderModInfo returns only string

* fix(#33): reollback func namechange

* refactor(#33): remove redundant viewport refresh

* refactor(#33): update is not required after setting content

* refactor(#33): remove unrequired log

* docs(#33): update documentation to latest generated

* docs(#33): update cache reference to not contain username

* docs(#33): fix local dir references too

* refactor(#33): replace vague variable with more helpful

* Add directions about using dev schema when generate command fails

* Fix issues from earlier merge conflict

---------

Co-authored-by: Jack Stupple <jack.stupple@protonmail.com>
2023-12-28 04:32:56 +02:00
.github feat: sftp (#51) 2023-12-28 02:13:09 +02:00
.vscode chore: additional developer setup info in the readme 2023-06-18 12:25:22 -05:00
cfg feat: sftp (#51) 2023-12-28 02:13:09 +02:00
cli feat: compatibility info display in View Mod screen. log to ficsit-cli.log by default (#33) 2023-12-28 04:32:56 +02:00
cmd feat: parallel apply command (#50) 2023-12-21 00:37:18 +02:00
docs feat: compatibility info display in View Mod screen. log to ficsit-cli.log by default (#33) 2023-12-28 04:32:56 +02:00
ficsit feat: compatibility info display in View Mod screen. log to ficsit-cli.log by default (#33) 2023-12-28 04:32:56 +02:00
tea feat: compatibility info display in View Mod screen. log to ficsit-cli.log by default (#33) 2023-12-28 04:32:56 +02:00
utils feat: sftp (#51) 2023-12-28 02:13:09 +02:00
.envrc feat: parallel apply view (#47) 2023-12-14 01:34:01 +02:00
.gitignore feat: sftp (#51) 2023-12-28 02:13:09 +02:00
.golangci.yml refactor: zerolog -> slog, errors.Wrap -> fmt.Error (#49) 2023-12-16 16:19:53 +02:00
.goreleaser.yml chore: change aur homepage url 2022-10-14 19:12:34 +03:00
cspell.json feat: compatibility info display in View Mod screen. log to ficsit-cli.log by default (#33) 2023-12-28 04:32:56 +02:00
docker-compose-test.yml chore: lint 2023-12-28 03:22:55 +02:00
flake.lock feat: parallel apply view (#47) 2023-12-14 01:34:01 +02:00
flake.nix feat: parallel apply view (#47) 2023-12-14 01:34:01 +02:00
genqlient.yaml feat: add mod upload command 2022-10-14 19:11:16 +03:00
go.mod fix: fuck vsftpd 2023-12-28 03:19:42 +02:00
go.sum fix: fuck vsftpd 2023-12-28 03:19:42 +02:00
LICENSE Add sorting options 2021-12-04 05:42:31 +02:00
main.go installed mods, versioning, async mods 2022-06-07 02:55:26 +03:00
README.md feat: compatibility info display in View Mod screen. log to ficsit-cli.log by default (#33) 2023-12-28 04:32:56 +02:00
shell.nix feat: parallel apply view (#47) 2023-12-14 01:34:01 +02:00
tools.go feat: compatibility info display in View Mod screen. log to ficsit-cli.log by default (#33) 2023-12-28 04:32:56 +02:00

ficsit-cli push GitHub go.mod Go version GitHub tag (latest by date) GitHub license GitHub all releases

A CLI tool for managing mods for the game Satisfactory


Installation

amd64 386 arm64 armv7 ppc64le
Windows amd64 386 arm64 armv7 N/A
Arch yay -S ficsit-cli-bin
Debian amd64 386 arm64 armv7 ppc64le
Fedora amd64 386 arm64 armv7 ppc64le
Alpine amd64 386 arm64 armv7 ppc64le
Linux amd64 386 arm64 armv7 ppc64le
macOS darwin_all N/A

Usage

Interactive CLI

To launch the interactive CLI, run the executable without any arguments.

Command Line

Run ficsit help to see a list of available commands.

Troubleshooting

  • Profile and installation records are located in %APPDATA%\ficsit\
  • Downloads are cached in %LOCALAPPDATA%\ficsit\downloadCache\

Development

Dependencies

  • Go 1.21
  • IDE of Choice. Goland or VSCode suggested.

Code Generation

If you update any of the GraphQL queries, run this to update generated code:

(echo "y") | npx graphqurl https://api.ficsit.app/v2/query --introspect -H 'content-type: application/json' > schema.graphql
go generate -tags tools -x ./...

If this command fails due to a mismatched schema, you may need to use the url https://api.ficsit.dev/v2/query instead.

Building

go build

Will produce ficsit-cli.exe in the repo root directory.

Linting

Install golangci-lint via the directions here, but make sure to install the version specified in .github/workflows/push.yaml instead of whatever it suggests.

Then, to run it, use:

golangci-lint run --fix

Updating generated docs

The files within ./docs are generated using cobra, use the following to update them.

go run tools.go