No description
Find a file
D. Moonfire 9045893b1d
Some checks are pending
push / Build (push) Waiting to run
push / Lint (push) Waiting to run
push / Test (push) Waiting to run
chore: added it as an injectable flake
2024-10-21 22:42:38 -05:00
.github ci: don't use goreleaser --debug 2024-10-10 22:26:06 +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: client and server-only mods (#71) 2024-10-04 19:23:51 +02:00
cmd feat: docs update, darwin dirs (#66) 2024-08-14 03:36:41 +03:00
docs chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
ficsit feat: client and server-only mods (#71) 2024-10-04 19:23:51 +02:00
tea feat: remove SML references (#64) 2024-08-14 03:27:07 +03:00
utils feat: show progress in bytes (#55) 2023-12-29 23:18:01 +02:00
.editorconfig chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
.envrc feat: parallel apply view (#47) 2023-12-14 01:34:01 +02:00
.gitignore chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
.golangci.yml refactor: zerolog -> slog, errors.Wrap -> fmt.Error (#49) 2023-12-16 16:19:53 +02:00
.goreleaser.yml build: drop windows_arm_7 support 2024-10-10 22:48:26 +02:00
cspell.json chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
docker-compose-test.yml chore: lint 2023-12-28 03:22:55 +02:00
ficsit-cli chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
flake.lock chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
flake.nix chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
genqlient.yaml chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
go.mod feat: client and server-only mods (#71) 2024-10-04 19:23:51 +02:00
go.sum feat: client and server-only mods (#71) 2024-10-04 19:23:51 +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 chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
shell.nix chore: added it as an injectable flake 2024-10-21 22:42:38 -05:00
tools.go feat: docs update, darwin dirs (#66) 2024-08-14 03:36:41 +03:00

ficsit-cli screenshot

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 N/A 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.

All screens display control hints at the bottom.

Command Line

Run ficsit help to see a list of available commands and flags.

Managing Installations

Unlike Satisfactory Mod Manager, ficsit-cli does not automatically detect installations.

First, locate your game install path. Check the Modding FAQ to learn how to find it given your specific install situation.

To add installations in the interactive CLI, use Installations > new installation.

To add installations from the command line, use ficsit-cli installation add yourPathHere.

Troubleshooting

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

Get help on the modding Discord.

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