{ self, inputs, ... }:
{
  flake.homeModules.zed = { pkgs, lib, ... }: {
    programs.zed-editor = {
      enable = true;
      extensions = [
        # Config language
        "nix"

        # Programing language extensions
        "rust"
        "typescript"
        "javascript"
        "html"
        "css"
        "go"
        "python"
        "json"
        "yaml"
        "toml"
        "markdown"

        # Themes
        "rosé pine"
        "catppuccin blur"
      ];

      extraPackages = [ pkgs.nixd ];
      userSettings = {
        theme = lib.mkDefault {
          mode = "system";
          dark = "Catppuccin Frappé (Blur)";
          light = "Rosé Pine Dawn";
        };
        hour_format = "hour24";
        tab_size = 2;
      };
    };
  };

}
