diff --git a/keyboards/0xcb/tutelpad/info.json b/keyboards/0xcb/tutelpad/keyboard.json
similarity index 86%
rename from keyboards/0xcb/tutelpad/info.json
rename to keyboards/0xcb/tutelpad/keyboard.json
index e4c7fce98a..2885377262 100644
--- a/keyboards/0xcb/tutelpad/info.json
+++ b/keyboards/0xcb/tutelpad/keyboard.json
@@ -33,6 +33,16 @@
     },
     "processor": "atmega32u4",
     "bootloader": "caterina",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "direct": [
             ["E6", "D7", "B1", "B3"],
diff --git a/keyboards/0xcb/tutelpad/rules.mk b/keyboards/0xcb/tutelpad/rules.mk
deleted file mode 100644
index f06d31c5f1..0000000000
--- a/keyboards/0xcb/tutelpad/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration 
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-OLED_ENABLE = yes
diff --git a/keyboards/1upkeyboards/1up60rgb/info.json b/keyboards/1upkeyboards/1up60rgb/keyboard.json
similarity index 99%
rename from keyboards/1upkeyboards/1up60rgb/info.json
rename to keyboards/1upkeyboards/1up60rgb/keyboard.json
index 0d288916cc..2985b5ae4f 100644
--- a/keyboards/1upkeyboards/1up60rgb/info.json
+++ b/keyboards/1upkeyboards/1up60rgb/keyboard.json
@@ -8,6 +8,16 @@
     "pid": "0x7267",
     "device_version": "0.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4"],
     "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/1upkeyboards/1up60rgb/rules.mk b/keyboards/1upkeyboards/1up60rgb/rules.mk
deleted file mode 100644
index 32e82925cc..0000000000
--- a/keyboards/1upkeyboards/1up60rgb/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes	# Mouse keys
-EXTRAKEY_ENABLE = yes	# Audio control and System control
-CONSOLE_ENABLE = no	# Console for debug
-COMMAND_ENABLE = no    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes  # Enable keyboard backlight functionality
-AUDIO_ENABLE = no
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/1upkeyboards/super16/info.json b/keyboards/1upkeyboards/super16/keyboard.json
similarity index 95%
rename from keyboards/1upkeyboards/super16/info.json
rename to keyboards/1upkeyboards/super16/keyboard.json
index 81b28c6655..4bc18e98f7 100644
--- a/keyboards/1upkeyboards/super16/info.json
+++ b/keyboards/1upkeyboards/super16/keyboard.json
@@ -77,6 +77,15 @@
     },
     "driver": "ws2812"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false,
+    "rgb_matrix": true
+  },
   "matrix_pins": {
     "cols": ["D4", "C6", "F6", "F7"],
     "rows": ["D1", "D0", "F4", "F5"]
diff --git a/keyboards/1upkeyboards/super16/rules.mk b/keyboards/1upkeyboards/super16/rules.mk
deleted file mode 100644
index b5532d03ff..0000000000
--- a/keyboards/1upkeyboards/super16/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no       # Enable keyboard RGB underglow
-RGB_MATRIX_ENABLE = yes
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/1upkeyboards/super16v2/info.json b/keyboards/1upkeyboards/super16v2/keyboard.json
similarity index 91%
rename from keyboards/1upkeyboards/super16v2/info.json
rename to keyboards/1upkeyboards/super16v2/keyboard.json
index 20a06f4c5e..3bc7bf0e07 100644
--- a/keyboards/1upkeyboards/super16v2/info.json
+++ b/keyboards/1upkeyboards/super16v2/keyboard.json
@@ -49,6 +49,16 @@
       "driver": "ws2812",
       "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
       "cols": ["D5", "D6", "C2", "D0"],
       "rows": ["D1", "D2", "D3", "D4"]
diff --git a/keyboards/1upkeyboards/super16v2/rules.mk b/keyboards/1upkeyboards/super16v2/rules.mk
deleted file mode 100644
index a7f5baf807..0000000000
--- a/keyboards/1upkeyboards/super16v2/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-RGB_MATRIX_ENABLE = yes
-ENCODER_ENABLE = yes
\ No newline at end of file
diff --git a/keyboards/2key2crawl/info.json b/keyboards/2key2crawl/keyboard.json
similarity index 89%
rename from keyboards/2key2crawl/info.json
rename to keyboards/2key2crawl/keyboard.json
index b8644a0712..4dfecbd696 100644
--- a/keyboards/2key2crawl/info.json
+++ b/keyboards/2key2crawl/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x6090",
         "device_version": "0.0.2"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": true,
+        "encoder": true,
+        "extrakey": false,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B3", "B4", "B5", "B6", "B7", "C7", "B2"],
         "rows": ["C4", "C5"]
diff --git a/keyboards/2key2crawl/rules.mk b/keyboards/2key2crawl/rules.mk
deleted file mode 100644
index 5e715569bc..0000000000
--- a/keyboards/2key2crawl/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no	# Mouse keys
-EXTRAKEY_ENABLE = no	# Audio control and System control
-CONSOLE_ENABLE = yes	# Console for debug
-COMMAND_ENABLE = no    # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no  # [Crawlpad] Custom backlighting code is used, so this should not be enabled
-AUDIO_ENABLE = no # [Crawlpad] This can be enabled if a speaker is connected to the expansion port. Not compatible with RGBLIGHT below
-RGBLIGHT_ENABLE = no # [Crawlpad] This can be enabled if a ws2812 strip is connected to the expansion port.
-ENCODER_ENABLE = yes # [2Key2crawl] Make the knobs turn
diff --git a/keyboards/30wer/info.json b/keyboards/30wer/keyboard.json
similarity index 93%
rename from keyboards/30wer/info.json
rename to keyboards/30wer/keyboard.json
index 85f3826acd..606c13f7aa 100644
--- a/keyboards/30wer/info.json
+++ b/keyboards/30wer/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x5678",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "D1", "D0", "D4", "C6", "D7"],
         "rows": ["E6", "B4", "B5"]
diff --git a/keyboards/30wer/rules.mk b/keyboards/30wer/rules.mk
deleted file mode 100644
index 0048c64351..0000000000
--- a/keyboards/30wer/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = no 		# Enable WS2812 RGB underlight.
diff --git a/keyboards/3keyecosystem/2key2/info.json b/keyboards/3keyecosystem/2key2/keyboard.json
similarity index 92%
rename from keyboards/3keyecosystem/2key2/info.json
rename to keyboards/3keyecosystem/2key2/keyboard.json
index 129662175c..5c77fdf6ae 100644
--- a/keyboards/3keyecosystem/2key2/info.json
+++ b/keyboards/3keyecosystem/2key2/keyboard.json
@@ -67,6 +67,15 @@
         "sleep": true
     },
 
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["F4", "D7"],
         "rows": ["F6"]
diff --git a/keyboards/3keyecosystem/2key2/rules.mk b/keyboards/3keyecosystem/2key2/rules.mk
deleted file mode 100644
index 94674b71a1..0000000000
--- a/keyboards/3keyecosystem/2key2/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-RGB_MATRIX_ENABLE = yes		# Enable RGB matrix
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/40percentclub/4pack/info.json b/keyboards/40percentclub/4pack/keyboard.json
similarity index 78%
rename from keyboards/40percentclub/4pack/info.json
rename to keyboards/40percentclub/4pack/keyboard.json
index 31d4559883..edfd64ad33 100644
--- a/keyboards/40percentclub/4pack/info.json
+++ b/keyboards/40percentclub/4pack/keyboard.json
@@ -14,6 +14,15 @@
     },
     "processor": "atmega32u4",
     "bootloader": "caterina",
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "direct": [
             ["E6", "D7", "C6", "D4"]
diff --git a/keyboards/40percentclub/4pack/rules.mk b/keyboards/40percentclub/4pack/rules.mk
deleted file mode 100644
index ffd7289e96..0000000000
--- a/keyboards/40percentclub/4pack/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/40percentclub/5x5/info.json b/keyboards/40percentclub/5x5/keyboard.json
similarity index 98%
rename from keyboards/40percentclub/5x5/info.json
rename to keyboards/40percentclub/5x5/keyboard.json
index 3ebc123c9b..0a50d29ffe 100644
--- a/keyboards/40percentclub/5x5/info.json
+++ b/keyboards/40percentclub/5x5/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x05B5",
         "device_version": "1.0.0"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D7", "E6", "B4", "B5", "B6", "B7", "D6", "F7", "F6", "F5", "F4", "F1", "F0", "B3", "B1"],
         "rows": ["B2", "D1", "D0", "D4", "C6"]
diff --git a/keyboards/40percentclub/5x5/rules.mk b/keyboards/40percentclub/5x5/rules.mk
deleted file mode 100644
index cb3f21e824..0000000000
--- a/keyboards/40percentclub/5x5/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/40percentclub/luddite/info.json b/keyboards/40percentclub/luddite/keyboard.json
similarity index 95%
rename from keyboards/40percentclub/luddite/info.json
rename to keyboards/40percentclub/luddite/keyboard.json
index a8c8c13b2a..8a0b5d5913 100644
--- a/keyboards/40percentclub/luddite/info.json
+++ b/keyboards/40percentclub/luddite/keyboard.json
@@ -8,6 +8,16 @@
     "pid": "0x4C55",
     "device_version": "10.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
     "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6"]
diff --git a/keyboards/40percentclub/luddite/rules.mk b/keyboards/40percentclub/luddite/rules.mk
deleted file mode 100644
index ca7b02cbdd..0000000000
--- a/keyboards/40percentclub/luddite/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes	  # Mouse keys
-EXTRAKEY_ENABLE = yes	  # Audio control and System control
-CONSOLE_ENABLE = no			# Console for debug
-COMMAND_ENABLE = no     # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes  # Enable keyboard backlight functionality
-AUDIO_ENABLE = no
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/40percentclub/mf68/info.json b/keyboards/40percentclub/mf68/keyboard.json
similarity index 96%
rename from keyboards/40percentclub/mf68/info.json
rename to keyboards/40percentclub/mf68/keyboard.json
index 7218573856..47259ac23f 100644
--- a/keyboards/40percentclub/mf68/info.json
+++ b/keyboards/40percentclub/mf68/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x4D68",
     "device_version": "1.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4"],
     "rows": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"]
diff --git a/keyboards/40percentclub/mf68/rules.mk b/keyboards/40percentclub/mf68/rules.mk
deleted file mode 100644
index b325f3f0c7..0000000000
--- a/keyboards/40percentclub/mf68/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/40percentclub/nano/info.json b/keyboards/40percentclub/nano/keyboard.json
similarity index 86%
rename from keyboards/40percentclub/nano/info.json
rename to keyboards/40percentclub/nano/keyboard.json
index 4cfd3a9a29..547aed16f9 100644
--- a/keyboards/40percentclub/nano/info.json
+++ b/keyboards/40percentclub/nano/keyboard.json
@@ -28,6 +28,16 @@
   },
   "processor": "atmega32u4",
   "bootloader": "caterina",
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true,
+    "unicode": true
+  },
   "matrix_pins": {
     "direct": [
       ["F4", "F5", "F6", "F7"],
diff --git a/keyboards/40percentclub/nano/rules.mk b/keyboards/40percentclub/nano/rules.mk
deleted file mode 100644
index a73f2bd693..0000000000
--- a/keyboards/40percentclub/nano/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-UNICODE_ENABLE = yes        # Unicode
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
diff --git a/keyboards/40percentclub/nein/info.json b/keyboards/40percentclub/nein/keyboard.json
similarity index 85%
rename from keyboards/40percentclub/nein/info.json
rename to keyboards/40percentclub/nein/keyboard.json
index 0712923e49..53a3a7639b 100644
--- a/keyboards/40percentclub/nein/info.json
+++ b/keyboards/40percentclub/nein/keyboard.json
@@ -10,6 +10,14 @@
   },
   "processor": "atmega32u4",
   "bootloader": "caterina",
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "direct": [
       ["F4", "F5", "F6"],
diff --git a/keyboards/40percentclub/nein/rules.mk b/keyboards/40percentclub/nein/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/40percentclub/nein/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/40percentclub/sixpack/info.json b/keyboards/40percentclub/sixpack/keyboard.json
similarity index 84%
rename from keyboards/40percentclub/sixpack/info.json
rename to keyboards/40percentclub/sixpack/keyboard.json
index cd4864fbd1..059c9de091 100644
--- a/keyboards/40percentclub/sixpack/info.json
+++ b/keyboards/40percentclub/sixpack/keyboard.json
@@ -21,6 +21,15 @@
     },
     "processor": "atmega32u4",
     "bootloader": "caterina",
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
       "direct": [
         ["D4", "C6", "D7"],
diff --git a/keyboards/40percentclub/sixpack/rules.mk b/keyboards/40percentclub/sixpack/rules.mk
deleted file mode 100644
index 254b0bc7bd..0000000000
--- a/keyboards/40percentclub/sixpack/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/40percentclub/tomato/info.json b/keyboards/40percentclub/tomato/keyboard.json
similarity index 92%
rename from keyboards/40percentclub/tomato/info.json
rename to keyboards/40percentclub/tomato/keyboard.json
index eabe354568..a44946d372 100644
--- a/keyboards/40percentclub/tomato/info.json
+++ b/keyboards/40percentclub/tomato/keyboard.json
@@ -28,6 +28,15 @@
   "ws2812": {
     "pin": "B5"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["B4", "E6", "D7", "C6", "D4", "D0"],
     "rows": ["F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/40percentclub/tomato/rules.mk b/keyboards/40percentclub/tomato/rules.mk
deleted file mode 100644
index d781d36d3b..0000000000
--- a/keyboards/40percentclub/tomato/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes	  # Mouse keys
-EXTRAKEY_ENABLE = yes	  # Audio control and System control
-CONSOLE_ENABLE = no			# Console for debug
-COMMAND_ENABLE = no    	# Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no   # Enable keyboard backlight functionality
-AUDIO_ENABLE = no
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/45_ats/info.json b/keyboards/45_ats/keyboard.json
similarity index 97%
rename from keyboards/45_ats/info.json
rename to keyboards/45_ats/keyboard.json
index 410a2a9ee1..7c873f21ed 100644
--- a/keyboards/45_ats/info.json
+++ b/keyboards/45_ats/keyboard.json
@@ -8,6 +8,14 @@
       "pid": "0x4511",
       "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
       "cols": ["E6", "B0", "B1", "B2", "B3", "B7", "F6", "F5", "F4", "C7", "F7", "C6", "B6", "D4"],
       "rows": ["D3", "D5", "D7", "D6"]
diff --git a/keyboards/45_ats/rules.mk b/keyboards/45_ats/rules.mk
deleted file mode 100644
index 309e55c9f4..0000000000
--- a/keyboards/45_ats/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/4by3/info.json b/keyboards/4by3/keyboard.json
similarity index 93%
rename from keyboards/4by3/info.json
rename to keyboards/4by3/keyboard.json
index faab285d2c..8801a1e920 100644
--- a/keyboards/4by3/info.json
+++ b/keyboards/4by3/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x2019",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["C6", "D7", "E6", "B4"],
         "rows": ["D1", "D0", "D4"]
diff --git a/keyboards/4by3/rules.mk b/keyboards/4by3/rules.mk
deleted file mode 100644
index e7d97d60d3..0000000000
--- a/keyboards/4by3/rules.mk
+++ /dev/null
@@ -1,4 +0,0 @@
-EXTRAKEY_ENABLE 	= yes
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-CONSOLE_ENABLE		= yes
-COMMAND_ENABLE		= yes
diff --git a/keyboards/4pplet/aekiso60/rev_a/info.json b/keyboards/4pplet/aekiso60/rev_a/keyboard.json
similarity index 84%
rename from keyboards/4pplet/aekiso60/rev_a/info.json
rename to keyboards/4pplet/aekiso60/rev_a/keyboard.json
index 7728ab50bb..5e236adc9a 100644
--- a/keyboards/4pplet/aekiso60/rev_a/info.json
+++ b/keyboards/4pplet/aekiso60/rev_a/keyboard.json
@@ -24,6 +24,14 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C4", "C6", "B7", "B6", "B5", "B4", "B3", "B2", "B1", "D6", "D5", "D4", "D2", "D1"],
         "rows": ["C2", "D0", "B0", "C7", "C5"]
diff --git a/keyboards/4pplet/aekiso60/rev_a/rules.mk b/keyboards/4pplet/aekiso60/rev_a/rules.mk
deleted file mode 100644
index 6fe874e748..0000000000
--- a/keyboards/4pplet/aekiso60/rev_a/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/4pplet/bootleg/rev_a/info.json b/keyboards/4pplet/bootleg/rev_a/keyboard.json
similarity index 98%
rename from keyboards/4pplet/bootleg/rev_a/info.json
rename to keyboards/4pplet/bootleg/rev_a/keyboard.json
index 0e0929fcfc..10aa3de678 100644
--- a/keyboards/4pplet/bootleg/rev_a/info.json
+++ b/keyboards/4pplet/bootleg/rev_a/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0004",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C5", "C6", "C7", "B7", "B6", "B5", "B4", "B3", "B2", "B1", "B0", "D6", "D5", "D3", "D1"],
         "rows": ["D0", "C2", "C4", "D4", "D2"]
diff --git a/keyboards/4pplet/bootleg/rev_a/rules.mk b/keyboards/4pplet/bootleg/rev_a/rules.mk
deleted file mode 100644
index 6fe874e748..0000000000
--- a/keyboards/4pplet/bootleg/rev_a/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/4pplet/perk60_iso/rev_a/info.json b/keyboards/4pplet/perk60_iso/rev_a/keyboard.json
similarity index 96%
rename from keyboards/4pplet/perk60_iso/rev_a/info.json
rename to keyboards/4pplet/perk60_iso/rev_a/keyboard.json
index 06b16d1900..ae60e30d7a 100644
--- a/keyboards/4pplet/perk60_iso/rev_a/info.json
+++ b/keyboards/4pplet/perk60_iso/rev_a/keyboard.json
@@ -40,6 +40,15 @@
         },
         "driver": "is31fl3733"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["A1", "B12", "B14", "A2", "A0", "A3", "A4"],
         "rows": ["C14", "C13", "B5", "B4", "B8", "A15", "B3", "B9", "A5", "A7"]
diff --git a/keyboards/4pplet/perk60_iso/rev_a/rules.mk b/keyboards/4pplet/perk60_iso/rev_a/rules.mk
deleted file mode 100644
index 6a7da3e998..0000000000
--- a/keyboards/4pplet/perk60_iso/rev_a/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-RGB_MATRIX_ENABLE = yes
-
diff --git a/keyboards/4pplet/waffling60/rev_a/info.json b/keyboards/4pplet/waffling60/rev_a/keyboard.json
similarity index 96%
rename from keyboards/4pplet/waffling60/rev_a/info.json
rename to keyboards/4pplet/waffling60/rev_a/keyboard.json
index fbd30bdd29..cbb24bd56a 100644
--- a/keyboards/4pplet/waffling60/rev_a/info.json
+++ b/keyboards/4pplet/waffling60/rev_a/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0003",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D3", "D0", "D2", "B6", "B5", "B4", "B3", "D6", "D5", "B0", "B1"],
         "rows": ["D4", "D1", "C2", "C4", "C7", "B2"]
diff --git a/keyboards/4pplet/waffling60/rev_a/rules.mk b/keyboards/4pplet/waffling60/rev_a/rules.mk
deleted file mode 100644
index 6fe874e748..0000000000
--- a/keyboards/4pplet/waffling60/rev_a/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/4pplet/waffling60/rev_b/info.json b/keyboards/4pplet/waffling60/rev_b/keyboard.json
similarity index 96%
rename from keyboards/4pplet/waffling60/rev_b/info.json
rename to keyboards/4pplet/waffling60/rev_b/keyboard.json
index 7ba1964c7c..54e51b388b 100644
--- a/keyboards/4pplet/waffling60/rev_b/info.json
+++ b/keyboards/4pplet/waffling60/rev_b/keyboard.json
@@ -28,6 +28,15 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C4", "C5", "D2", "C6", "C7", "B7", "B6", "B5", "B4", "B3", "B2", "B1", "D1", "D4"],
         "rows": ["C2", "D0", "B0", "D6", "D5"]
diff --git a/keyboards/4pplet/waffling60/rev_b/rules.mk b/keyboards/4pplet/waffling60/rev_b/rules.mk
deleted file mode 100644
index a927de843c..0000000000
--- a/keyboards/4pplet/waffling60/rev_b/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/4pplet/waffling60/rev_c/info.json b/keyboards/4pplet/waffling60/rev_c/keyboard.json
similarity index 96%
rename from keyboards/4pplet/waffling60/rev_c/info.json
rename to keyboards/4pplet/waffling60/rev_c/keyboard.json
index f2461aeaa9..a7c23cc349 100644
--- a/keyboards/4pplet/waffling60/rev_c/info.json
+++ b/keyboards/4pplet/waffling60/rev_c/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x0008",
         "device_version": "0.0.3"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C4", "C5", "D2", "C6", "C7", "B7", "B6", "B5", "B4", "B3", "B2", "B1", "D1", "D4"],
         "rows": ["C2", "D0", "B0", "D6", "D5"]
diff --git a/keyboards/4pplet/waffling60/rev_c/rules.mk b/keyboards/4pplet/waffling60/rev_c/rules.mk
deleted file mode 100644
index a927de843c..0000000000
--- a/keyboards/4pplet/waffling60/rev_c/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/4pplet/waffling80/rev_a/info.json b/keyboards/4pplet/waffling80/rev_a/keyboard.json
similarity index 76%
rename from keyboards/4pplet/waffling80/rev_a/info.json
rename to keyboards/4pplet/waffling80/rev_a/keyboard.json
index 8c3a84be1e..157cefa536 100644
--- a/keyboards/4pplet/waffling80/rev_a/info.json
+++ b/keyboards/4pplet/waffling80/rev_a/keyboard.json
@@ -12,6 +12,15 @@
     "ws2812": {
         "pin": "D7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C6", "C7", "B7", "B6", "B5", "B2", "D0", "C2"],
         "rows": ["C4", "C5", "B4", "B3", "B1", "B0", "D6", "D5", "D3", "D4", "D1", "D2"]
diff --git a/keyboards/4pplet/waffling80/rev_a/rules.mk b/keyboards/4pplet/waffling80/rev_a/rules.mk
deleted file mode 100644
index ceea2d612c..0000000000
--- a/keyboards/4pplet/waffling80/rev_a/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/4pplet/yakiimo/rev_a/info.json b/keyboards/4pplet/yakiimo/rev_a/keyboard.json
similarity index 99%
rename from keyboards/4pplet/yakiimo/rev_a/info.json
rename to keyboards/4pplet/yakiimo/rev_a/keyboard.json
index ae4654007d..ec5addd850 100644
--- a/keyboards/4pplet/yakiimo/rev_a/info.json
+++ b/keyboards/4pplet/yakiimo/rev_a/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x000A",
         "device_version": "0.0.2"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B0", "A5", "A4", "A3", "A2", "A1", "A0", "C15", "A8"],
         "rows": ["B10", "B1", "C13", "C14", "B14", "B12", "B9", "B8", "B5", "B4", "A15", "B3"]
diff --git a/keyboards/4pplet/yakiimo/rev_a/rules.mk b/keyboards/4pplet/yakiimo/rev_a/rules.mk
deleted file mode 100644
index c3b8e77d77..0000000000
--- a/keyboards/4pplet/yakiimo/rev_a/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
diff --git a/keyboards/7c8/framework/info.json b/keyboards/7c8/framework/keyboard.json
similarity index 97%
rename from keyboards/7c8/framework/info.json
rename to keyboards/7c8/framework/keyboard.json
index 19325af9cb..33f9cfc591 100644
--- a/keyboards/7c8/framework/info.json
+++ b/keyboards/7c8/framework/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "leader": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C0", "C1", "C2", "C3", "C4", "C5"],
         "rows": ["B0", "B1", "D7", "B2", "D6", "B3", "D5", "B4", "D4", "B5"]
diff --git a/keyboards/7c8/framework/rules.mk b/keyboards/7c8/framework/rules.mk
deleted file mode 100644
index a9d41f8eff..0000000000
--- a/keyboards/7c8/framework/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = no
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = no
-AUDIO_ENABLE = no
-FAUXCLICKY_ENABLE = no
-ENCODER_ENABLE = yes
-LEADER_ENABLE = yes
diff --git a/keyboards/9key/info.json b/keyboards/9key/keyboard.json
similarity index 84%
rename from keyboards/9key/info.json
rename to keyboards/9key/keyboard.json
index d4061d8261..c1e95e3f08 100644
--- a/keyboards/9key/info.json
+++ b/keyboards/9key/keyboard.json
@@ -14,6 +14,15 @@
   "ws2812": {
     "pin": "F7"
   },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "unicode": true
+  },
   "matrix_pins": {
     "cols": ["F4", "F5", "F6"],
     "rows": ["D1", "D0", "D4"]
diff --git a/keyboards/9key/rules.mk b/keyboards/9key/rules.mk
deleted file mode 100644
index 02054dd023..0000000000
--- a/keyboards/9key/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no        # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no      # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-UNICODE_ENABLE = yes         # Unicode
-RGBLIGHT_ENABLE = no        # Enable WS2812 RGB underlight.