Fzzy Config

Config Annotations

Fzzy Config provides a suite of Annotations for spicing up a config. All annotations are covered in the official documentation as well.

Annotation Documentation 🗗

Config Annotations

Augment the functionality of your configs with these annotations. The currently available list of annotations is:

  • @ClientModifiable - Marks setting as editable regardless of permissions
  • @WithPerms - Defines the permission level needed to edit marked settings
  • @WithCustomPerms and @AdminLevel - Defines permissions in LuckPerms/Forge Permissions API string-based style; optionally falling back to vanilla permissions.
  • @NonSync - Defines a field as client-only. Won't sync to/from servers and no permission checks
  • @Version - Sets the version of a config class, used for version-managed updates
  • @RequiresRestart - (Deprecated as of 0.4.0) Prompts a user to restart after syncing
  • @RequiresAction - (As of 0.4.0) Alerts the user to a needed action if they change the affected setting. Applies to fields and classes.
  • @RootConfig - Sets the annotated config as the "root", displaying its settings in the landing page alongside the other config buttons.
  • @ConvertFrom - Specifies an old config file to scrape and convert into a Fzzy Config toml
  • @IgnoreVisibility - Marked classes can have fields/properties with lower visibility than public
  • @Translation - Defines a custom lang prefix for a setting or whole config
  • Toml Annotations - Annotations for augmenting config .toml files.