diff --git a/modules/light.nix b/modules/light.nix
new file mode 100644
index 0000000..c6af189
--- /dev/null
+++ b/modules/light.nix
@@ -0,0 +1 @@
+{config.programs.light.enable = true;}
diff --git a/modules/waybar.nix b/modules/waybar.nix
new file mode 100644
index 0000000..f40cc62
--- /dev/null
+++ b/modules/waybar.nix
@@ -0,0 +1,116 @@
+{pkgs, ...}: {
+  home = {
+    programs.waybar = {
+      enable = true;
+      settings = [
+        {
+          modules-left = ["sway/workspaces"];
+
+          modules-center = ["sway/window"];
+
+          modules-right = [
+            "backlight"
+            "pulseaudio"
+            "network"
+            "battery"
+            "clock"
+            "custom/coffee"
+            "custom/notification"
+            "tray"
+          ];
+
+          pulseaudio = {
+            format = "{icon} {volume}%";
+            format-tooltip = "{desc}";
+            format-muted = "🔇 Muted";
+            format-icons = [
+              "🔈"
+              "🔉"
+              "🔊"
+            ];
+            states.muted = 0;
+          };
+          backlight = {
+            format = "{icon} {percent}%";
+            on-scroll-up = "${pkgs.light}/bin/light -A 3";
+            on-scroll-down = "${pkgs.light}/bin/light -N 1 && ${pkgs.light}/bin/light -U 3";
+            format-icons = [
+              "🔅"
+              "🔆"
+              "☀️"
+              "✨"
+            ];
+          };
+          network = {
+            format = "🔗 {ifname}";
+            format-wifi = "📡 {essid} ({ifname})";
+            format-disabled = "";
+            format-disconnected = "🌐 No network";
+            tooltip-format = "{ipaddr}/{cidr}";
+            tooltip-format-wifi = "{ipaddr}/{cidr} ({signalStrength}%)";
+            tooltip-format-disconnected = "Disconnected";
+          };
+          battery = {
+            states = {
+              full = 100;
+              warning = 30;
+              critical = 10;
+            };
+            format = "{icon} {capacity}%";
+            format-charging = "🔌 {capacity}%";
+            format-icons = {
+              full = "🔋";
+              warning = "🪫";
+              critical = "🪫";
+            };
+          };
+          "sway/window" = {
+            max-length = 50;
+          };
+          clock = {
+            format = "⏰ {:%T}";
+            interval = 1;
+          };
+          "custom/notification" = {
+            tooltip = false;
+            format = "{icon}";
+            format-icons = {
+              notification = "🔔<sup><span color='#dd2e41'>●</span></sup>";
+              none = "🔔";
+              dnd-notification = "🔕<sup><span color='#dd2e41'>●</span></sup>";
+              dnd-none = "🔕";
+            };
+            "return-type" = "json";
+            "exec-if" = "which ${pkgs.swaynotificationcenter}/bin/swaync-client";
+            "exec" = "${pkgs.swaynotificationcenter}/bin/swaync-client -swb";
+            on-click = "${pkgs.swaynotificationcenter}/bin/swaync-client -t -sw";
+            on-click-right = "${pkgs.swaynotificationcenter}/bin/swaync-client -d -sw";
+            escape = true;
+          };
+          "custom/coffee" = {
+            tooltip = false;
+            format = "{icon}";
+            format-icons = {
+              none = "😴";
+              inhibiting = "☕";
+            };
+            "return-type" = "json";
+            "exec" = "while sleep 0.1; do ${pkgs.systemd}/bin/systemd-inhibit --list | wc -l | jq '{alt: (if . == 1 then \"none\" else \"inhibiting\" end)} | tostring' -r; done";
+            on-click = ./systemd-inhibit/stop-inhibiting-idle.sh;
+            on-click-right = ./systemd-inhibit/inhibit-idle.sh;
+            escape = true;
+          };
+        }
+      ];
+      style = builtins.readFile ./waybar/main.css;
+    };
+
+    wayland.windowManager.sway.config.startup = [
+      {
+        command = "\"pkill swaync; pkill waybar; ${pkgs.swaynotificationcenter}/bin/swaync & waybar\"";
+        always = true;
+      }
+    ];
+    home.packages = with pkgs; [libappindicator swaynotificationcenter];
+  };
+}
diff --git a/modules/waybar/main.css b/modules/waybar/main.css
new file mode 100644
index 0000000..3f43404
--- /dev/null
+++ b/modules/waybar/main.css
@@ -0,0 +1,119 @@
+window#waybar {
+  background: rgba(0, 0, 0, 0);
+}
+
+window#waybar * * * * {
+  background: alpha(@theme_base_color, 0.6);
+  color: @theme_text_color;
+  padding-left: 10px;
+  padding-right: 10px;
+  border-radius: 5px;
+  margin: 10px 5px;
+  transition: all 0.2s ease-in-out;
+  transition: background 0s;
+}
+
+window#waybar * * *:first-child * {
+  margin-left: 10px;
+}
+
+window#waybar * * *:last-child * {
+  margin-right: 10px;
+}
+
+window#waybar * * * * * {
+  margin: 0;
+  background: rgba(0, 0, 0, 0);
+}
+
+#window {
+  min-width: 50em;
+}
+
+window#waybar * * * #tray * {
+  padding: 0;
+}
+
+window#waybar * * * #tray menu *:first-child {
+  margin-top: 5px;
+}
+
+window#waybar * * * #tray menu *:last-child {
+  margin-bottom: 5px;
+}
+
+window#waybar * * * #tray menu * {
+  margin-left: 5px;
+  margin-right: 5px;
+}
+
+window#waybar * * * #tray menu * * {
+  margin: 5px;
+}
+
+window#waybar * * * #tray {
+  padding: 5px;
+}
+
+window#waybar * * * #tray menu {
+  background: alpha(@theme_base_color, 0.8);
+  color: @theme_text_color;
+  border: 0;
+}
+
+#tray menu *:hover {
+  background: alpha(@theme_base_color, 1);
+}
+
+window#waybar #workspaces {
+  padding: 0;
+}
+
+window#waybar #workspaces button {
+  border: 0;
+  margin: 0;
+  padding: 5px;
+}
+
+window#waybar #workspaces button.focused {
+  background: alpha(@theme_base_color, 0.8);
+}
+
+window#waybar #workspaces button.focused:hover {
+  background: alpha(@theme_base_color, 0.9);
+}
+
+window#waybar #workspaces button:hover {
+  background: alpha(@theme_base_color, 0.7);
+}
+
+window#waybar #workspaces button.persistent {
+  background: alpha(#ffdf00, 0.5);
+}
+
+window#waybar #workspaces button.urgent {
+  background: alpha(red, 0.5);
+}
+
+window#waybar #workspaces button:active {
+  background: alpha(@theme_base_color, 1);
+}
+
+#backlight,
+#pulseaudio,
+#network,
+#battery {
+  min-width: 3em;
+}
+
+window#waybar * .modules-right #custom-notification {
+  margin-right: 10px;
+}
+
+window#waybar * .modules-right #tray {
+  margin-left: 0px;
+}
+
+#custom-notification {
+  letter-spacing: -8px;
+}
