diff --git a/home/home/default.nix b/home/home/default.nix
index 44f5ca5..235ca59 100644
--- a/home/home/default.nix
+++ b/home/home/default.nix
@@ -17,6 +17,7 @@ let
     "tmux"
     "xdg"
     "zsh"
+    "helix"
   ];
 in
 {
diff --git a/home/modules/default.nix b/home/modules/default.nix
index f9aaa93..7120aa8 100644
--- a/home/modules/default.nix
+++ b/home/modules/default.nix
@@ -10,6 +10,7 @@
   git = import ./git.nix;
   gpg = import ./gpg.nix;
   gtk = import ./gtk.nix;
+  helix = import ./helix;
   keyring = import ./keyring.nix;
   kitty = import ./kitty;
   mako = import ./mako.nix;
diff --git a/home/modules/helix/config/config.toml b/home/modules/helix/config/config.toml
new file mode 100644
index 0000000..c7e26b7
--- /dev/null
+++ b/home/modules/helix/config/config.toml
@@ -0,0 +1,6 @@
+theme = "dracula"
+
+[editor]
+line-number = "relative"
+mouse = true
+auto-completion = true
diff --git a/home/modules/helix/config/languages.toml b/home/modules/helix/config/languages.toml
new file mode 100644
index 0000000..b7280d4
--- /dev/null
+++ b/home/modules/helix/config/languages.toml
@@ -0,0 +1,2 @@
+[[language]]
+name = "rust"
diff --git a/home/modules/helix/default.nix b/home/modules/helix/default.nix
new file mode 100644
index 0000000..4278343
--- /dev/null
+++ b/home/modules/helix/default.nix
@@ -0,0 +1,11 @@
+{ config, pkgs, lib, ... }:
+let
+  cfg = config.dadada.home.helix;
+in {
+  options.dadada.home.helix.enable = lib.mkEnableOption "Enable helix editor";
+
+  config = lib.mkIf cfg.enable {
+    home.file.".config/helix".source = ./config;
+    home.packages = [ pkgs.helix ];
+  };
+}