diff --git a/.config/yabai/yabairc b/.config/yabai/yabairc
new file mode 100755
index 00000000..95b89f51
--- /dev/null
+++ b/.config/yabai/yabairc
@@ -0,0 +1,54 @@
+#!/usr/bin/env sh
+
+#
+# for this to work you must configure sudo such that
+# it will be able to run the command without password
+#
+# see this wiki page for information:
+# - https://github.com/koekeishiya/yabai/wiki/Installing-yabai-(latest-release)#configure-scripting-addition
+#
+# yabai -m signal --add event=dock_did_restart action="sudo yabai --load-sa"
+# sudo yabai --load-sa
+#
+
+# global settings
+yabai -m config \
+ mouse_follows_focus off \
+ focus_follows_mouse off \
+ window_origin_display default \
+ window_placement second_child \
+ window_zoom_persist on \
+ window_shadow on \
+ window_opacity_duration 0.0 \
+ active_window_opacity 1.0 \
+ normal_window_opacity 0.90 \
+ window_opacity off \
+ insert_feedback_color 0xffd75f5f \
+ split_ratio 0.50 \
+ split_type auto \
+ auto_balance off \
+ top_padding 4 \
+ bottom_padding 4 \
+ left_padding 4 \
+ right_padding 4 \
+ window_gap 8 \
+ layout bsp \
+ mouse_modifier fn \
+ mouse_action1 move \
+ mouse_action2 resize \
+ mouse_drop_action swap
+
+### space settings
+
+yabai -m config --space 5 \
+ layout float
+
+### rules
+
+yabai -m rule --add app='^Arc$' manage=off
+yabai -m rule --add app='^Alfred Preferences$' manage=off
+yabai -m rule --add app='^Bartender 5$' manage=off
+yabai -m rule --add app='^Hammerspoon$' manage=off
+yabai -m rule --add app='^System Settings$' manage=off
+
+echo "yabai configuration loaded.."
diff --git a/.gitignore b/.gitignore
index 16baff82..e7667e55 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,6 +13,7 @@ private
!.config/pip
!.config/starship.toml
!.config/tridactyl
+!.config/yabai
.local/*
!.local/share/nvim/site/pack/alpha/start