{
  config,
  lib,
  inputs,
  pkgs,
  home,
  system,
  ...
}:
let
  cfg = config.modules.kitty;
in
{
  options.modules.kitty = {
    enable = lib.mkEnableOption "kitty configuration module";
  };
  config = lib.mkIf cfg.enable {
    programs.kitty = {
      enable = true;
      font = {
        name = "Google Sans Code Nerd Font";
        size = 11;
      };
      settings = {
        sync_to_monitor = "yes";
        background_opacity = 0.5;
        cursor_trail = 1;
        ### Blur is handled in hyprland config ###
        # enable_background_blur = "true";
        # background_blur = 1;
      };
    };
    ## i could use picom but i just used hyprland blur lol
    # services.picom = {
    #   # for cool gpu accelerated kitty effiect like blurred bg
    #   enable = true;
    #   backend = "glx";
    #   activeOpacity = 0.5;
    # };
    wayland.windowManager.hyprland.settings = {
      bind = [
        "$mainMod, q, exec, kitty"
      ];
    };
  };
}
