From 2eea2cdc46b3e920578ed75c4545a8b5160135bd Mon Sep 17 00:00:00 2001
From: Joel Challis <git@zvecr.com>
Date: Sat, 13 Apr 2024 08:45:27 +0100
Subject: [PATCH] Miscellaneous keyboard.json migrations (#23486)

---
 .../bastardkb/tbk/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/bastardkb/tbk/rules.mk                 | 12 ------------
 .../flxlb/zplit/{info.json => keyboard.json}     | 10 ++++++++++
 keyboards/flxlb/zplit/rules.mk                   | 13 -------------
 .../fungo/rev1/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/fungo/rev1/rules.mk                    | 15 ---------------
 keyboards/gummykey/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/gummykey/rules.mk                      | 12 ------------
 keyboards/hand88/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/hand88/rules.mk                        | 13 -------------
 .../handwired/brain/{info.json => keyboard.json} |  8 ++++++++
 keyboards/handwired/brain/rules.mk               | 12 ------------
 .../chiron/{info.json => keyboard.json}          | 10 ++++++++++
 keyboards/handwired/chiron/rules.mk              | 16 ----------------
 .../4x5/{info.json => keyboard.json}             |  8 ++++++++
 keyboards/handwired/dactyl_manuform/4x5/rules.mk | 12 ------------
 .../4x5_5/{info.json => keyboard.json}           |  8 ++++++++
 .../handwired/dactyl_manuform/4x5_5/rules.mk     | 11 -----------
 .../4x6/{info.json => keyboard.json}             |  8 ++++++++
 keyboards/handwired/dactyl_manuform/4x6/rules.mk | 12 ------------
 .../4x6_5/{info.json => keyboard.json}           |  8 ++++++++
 .../handwired/dactyl_manuform/4x6_5/rules.mk     | 12 ------------
 .../5x6/{info.json => keyboard.json}             |  8 ++++++++
 keyboards/handwired/dactyl_manuform/5x6/rules.mk | 12 ------------
 .../5x6_2_5/{info.json => keyboard.json}         |  8 ++++++++
 .../handwired/dactyl_manuform/5x6_2_5/rules.mk   | 12 ------------
 .../5x6_5/{info.json => keyboard.json}           |  8 ++++++++
 .../handwired/dactyl_manuform/5x6_5/rules.mk     | 12 ------------
 .../5x6_6/{info.json => keyboard.json}           |  8 ++++++++
 .../handwired/dactyl_manuform/5x6_6/rules.mk     | 12 ------------
 .../5x7/{info.json => keyboard.json}             |  8 ++++++++
 keyboards/handwired/dactyl_manuform/5x7/rules.mk | 12 ------------
 .../6x6_4/{info.json => keyboard.json}           |  8 ++++++++
 .../handwired/dactyl_manuform/6x6_4/rules.mk     | 12 ------------
 .../dactyl_promicro/{info.json => keyboard.json} |  8 ++++++++
 keyboards/handwired/dactyl_promicro/rules.mk     | 12 ------------
 .../dactyl_rah/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/handwired/dactyl_rah/rules.mk          | 12 ------------
 .../elrgo_s/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/handwired/elrgo_s/rules.mk             | 12 ------------
 .../freoduo/{info.json => keyboard.json}         | 10 ++++++++++
 keyboards/handwired/freoduo/rules.mk             | 13 -------------
 .../split_65/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/handwired/jtallbean/split_65/rules.mk  | 12 ------------
 .../handwired/ks63/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/handwired/ks63/rules.mk                | 12 ------------
 .../not_so_minidox/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/handwired/not_so_minidox/rules.mk      | 12 ------------
 .../skakunm_dactyl/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/handwired/skakunm_dactyl/rules.mk      | 12 ------------
 .../promicro/{info.json => keyboard.json}        |  9 +++++++++
 keyboards/handwired/split65/promicro/rules.mk    | 13 -------------
 .../split89/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/handwired/split89/rules.mk             | 12 ------------
 .../hidtech/bastyl/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/hidtech/bastyl/rules.mk                | 12 ------------
 .../miniaxe/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/kagizaraya/miniaxe/rules.mk            | 14 --------------
 .../{info.json => keyboard.json}                 |  9 +++++++++
 keyboards/kakunpc/rabbit_capture_plan/rules.mk   | 13 -------------
 .../mkiirgb/v2/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/kbdfans/kbd67/mkiirgb/v2/rules.mk      | 12 ------------
 .../kbdfans/maja/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/kbdfans/maja/rules.mk                  | 12 ------------
 .../maja_soldered/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/kbdfans/maja_soldered/rules.mk         | 11 -----------
 .../keebio/bfo9000/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/keebio/bfo9000/rules.mk                | 12 ------------
 .../keebio/fourier/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/keebio/fourier/rules.mk                | 12 ------------
 .../iris/rev1/{info.json => keyboard.json}       | 10 ++++++++++
 keyboards/keebio/iris/rev1/rules.mk              | 12 ------------
 .../iris/rev1_led/{info.json => keyboard.json}   | 10 ++++++++++
 keyboards/keebio/iris/rev1_led/rules.mk          | 12 ------------
 .../iris/rev5/{info.json => keyboard.json}       | 11 +++++++++++
 keyboards/keebio/iris/rev5/rules.mk              | 13 -------------
 .../nyquist/rev1/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/keebio/nyquist/rev1/rules.mk           | 12 ------------
 .../nyquist/rev2/{info.json => keyboard.json}    | 10 ++++++++++
 keyboards/keebio/nyquist/rev2/rules.mk           | 12 ------------
 .../nyquist/rev3/{info.json => keyboard.json}    | 10 ++++++++++
 keyboards/keebio/nyquist/rev3/rules.mk           | 12 ------------
 .../keyprez/bison/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/keyprez/bison/rules.mk                 | 14 --------------
 .../keyprez/unicorn/{info.json => keyboard.json} |  9 +++++++++
 keyboards/keyprez/unicorn/rules.mk               | 13 -------------
 .../gameroyadvance/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/keystonecaps/gameroyadvance/rules.mk   | 14 --------------
 .../latin17rgb/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/latincompass/latin17rgb/rules.mk       | 13 -------------
 keyboards/majistic/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/majistic/rules.mk                      | 12 ------------
 keyboards/manta60/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/manta60/rules.mk                       | 14 --------------
 .../mj61/rev1/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/melgeek/mj61/rev1/rules.mk             | 12 ------------
 .../rev3/info.json => mj61/rev2/keyboard.json}   |  9 +++++++++
 keyboards/melgeek/mj61/rev2/rules.mk             | 12 ------------
 .../rev1/info.json => mj63/rev1/keyboard.json}   |  9 +++++++++
 keyboards/melgeek/mj63/rev1/rules.mk             | 12 ------------
 .../rev2/info.json => mj63/rev2/keyboard.json}   |  9 +++++++++
 keyboards/melgeek/mj63/rev2/rules.mk             | 12 ------------
 .../rev1/info.json => mj64/rev1/keyboard.json}   |  9 +++++++++
 keyboards/melgeek/mj64/rev1/rules.mk             | 12 ------------
 .../mj64/rev2/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/melgeek/mj64/rev2/rules.mk             | 12 ------------
 .../rev2/info.json => mj64/rev3/keyboard.json}   |  9 +++++++++
 keyboards/melgeek/mj64/rev3/rules.mk             | 12 ------------
 .../merge/um70/{info.json => keyboard.json}      | 11 +++++++++++
 keyboards/merge/um70/rules.mk                    | 14 --------------
 .../merge/um80/{info.json => keyboard.json}      | 11 +++++++++++
 keyboards/merge/um80/rules.mk                    | 14 --------------
 keyboards/meson/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/meson/rules.mk                         | 12 ------------
 .../miller/gm862/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/miller/gm862/rules.mk                  | 13 -------------
 keyboards/mint60/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/mint60/rules.mk                        | 12 ------------
 .../momoka_ergo/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/momoka_ergo/rules.mk                   | 12 ------------
 .../nacly/sodium42/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/nacly/sodium42/rules.mk                | 12 ------------
 .../nacly/sodium50/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/nacly/sodium50/rules.mk                | 12 ------------
 .../nacly/sodium62/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/nacly/sodium62/rules.mk                | 14 --------------
 .../splitreus62/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/nacly/splitreus62/rules.mk             | 12 ------------
 .../obosob/arch_36/{info.json => keyboard.json}  | 10 ++++++++++
 keyboards/obosob/arch_36/rules.mk                | 13 -------------
 .../{info.json => keyboard.json}                 |  9 +++++++++
 keyboards/obosob/steal_this_keyboard/rules.mk    | 13 -------------
 .../ergo_single/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/ogre/ergo_single/rules.mk              | 12 ------------
 .../ogre/ergo_split/{info.json => keyboard.json} |  9 +++++++++
 keyboards/ogre/ergo_split/rules.mk               | 12 ------------
 keyboards/pisces/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/pisces/rules.mk                        | 12 ------------
 keyboards/pluckey/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/pluckey/rules.mk                       | 13 -------------
 keyboards/pteron36/{info.json => keyboard.json}  | 11 +++++++++++
 keyboards/pteron36/rules.mk                      | 14 --------------
 .../cocoa40/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/recompile_keys/cocoa40/rules.mk        | 12 ------------
 .../7splus/{info.json => keyboard.json}          |  9 +++++++++
 keyboards/salicylic_acid3/7splus/rules.mk        | 12 ------------
 .../ajisai74/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/salicylic_acid3/ajisai74/rules.mk      | 12 ------------
 .../ergoarrows/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/salicylic_acid3/ergoarrows/rules.mk    | 12 ------------
 .../nknl7en/{info.json => keyboard.json}         |  9 +++++++++
 keyboards/salicylic_acid3/nknl7en/rules.mk       | 12 ------------
 .../nknl7jp/{info.json => keyboard.json}         |  9 +++++++++
 keyboards/salicylic_acid3/nknl7jp/rules.mk       | 12 ------------
 keyboards/scatter42/{info.json => keyboard.json} |  8 ++++++++
 keyboards/scatter42/rules.mk                     | 12 ------------
 keyboards/sparrow62/{info.json => keyboard.json} |  8 ++++++++
 keyboards/sparrow62/rules.mk                     | 12 ------------
 .../rev0/{info.json => keyboard.json}            |  8 ++++++++
 keyboards/takashiski/otaku_split/rev0/rules.mk   | 12 ------------
 .../rev1/{info.json => keyboard.json}            |  8 ++++++++
 keyboards/takashiski/otaku_split/rev1/rules.mk   | 12 ------------
 .../diverge3/{info.json => keyboard.json}        |  9 +++++++++
 keyboards/unikeyboard/diverge3/rules.mk          | 12 ------------
 .../divergetm2/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/unikeyboard/divergetm2/rules.mk        | 12 ------------
 .../viktus/sp_mini/{info.json => keyboard.json}  | 10 ++++++++++
 keyboards/viktus/sp_mini/rules.mk                | 13 -------------
 168 files changed, 738 insertions(+), 1042 deletions(-)
 rename keyboards/bastardkb/tbk/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/bastardkb/tbk/rules.mk
 rename keyboards/flxlb/zplit/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/flxlb/zplit/rules.mk
 rename keyboards/fungo/rev1/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/fungo/rev1/rules.mk
 rename keyboards/gummykey/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/gummykey/rules.mk
 rename keyboards/hand88/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/hand88/rules.mk
 rename keyboards/handwired/brain/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/brain/rules.mk
 rename keyboards/handwired/chiron/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/chiron/rules.mk
 rename keyboards/handwired/dactyl_manuform/4x5/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/4x5/rules.mk
 rename keyboards/handwired/dactyl_manuform/4x5_5/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/4x5_5/rules.mk
 rename keyboards/handwired/dactyl_manuform/4x6/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/4x6/rules.mk
 rename keyboards/handwired/dactyl_manuform/4x6_5/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/4x6_5/rules.mk
 rename keyboards/handwired/dactyl_manuform/5x6/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/5x6/rules.mk
 rename keyboards/handwired/dactyl_manuform/5x6_2_5/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/5x6_2_5/rules.mk
 rename keyboards/handwired/dactyl_manuform/5x6_5/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/5x6_5/rules.mk
 rename keyboards/handwired/dactyl_manuform/5x6_6/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/5x6_6/rules.mk
 rename keyboards/handwired/dactyl_manuform/5x7/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/5x7/rules.mk
 rename keyboards/handwired/dactyl_manuform/6x6_4/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/handwired/dactyl_manuform/6x6_4/rules.mk
 rename keyboards/handwired/dactyl_promicro/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/handwired/dactyl_promicro/rules.mk
 rename keyboards/handwired/dactyl_rah/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/handwired/dactyl_rah/rules.mk
 rename keyboards/handwired/elrgo_s/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/handwired/elrgo_s/rules.mk
 rename keyboards/handwired/freoduo/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/freoduo/rules.mk
 rename keyboards/handwired/jtallbean/split_65/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/handwired/jtallbean/split_65/rules.mk
 rename keyboards/handwired/ks63/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/ks63/rules.mk
 rename keyboards/handwired/not_so_minidox/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/handwired/not_so_minidox/rules.mk
 rename keyboards/handwired/skakunm_dactyl/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/handwired/skakunm_dactyl/rules.mk
 rename keyboards/handwired/split65/promicro/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/handwired/split65/promicro/rules.mk
 rename keyboards/handwired/split89/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/handwired/split89/rules.mk
 rename keyboards/hidtech/bastyl/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/hidtech/bastyl/rules.mk
 rename keyboards/kagizaraya/miniaxe/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/kagizaraya/miniaxe/rules.mk
 rename keyboards/kakunpc/rabbit_capture_plan/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/kakunpc/rabbit_capture_plan/rules.mk
 rename keyboards/kbdfans/kbd67/mkiirgb/v2/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/kbdfans/kbd67/mkiirgb/v2/rules.mk
 rename keyboards/kbdfans/maja/{info.json => keyboard.json} (96%)
 delete mode 100755 keyboards/kbdfans/maja/rules.mk
 rename keyboards/kbdfans/maja_soldered/{info.json => keyboard.json} (95%)
 delete mode 100755 keyboards/kbdfans/maja_soldered/rules.mk
 rename keyboards/keebio/bfo9000/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/keebio/bfo9000/rules.mk
 rename keyboards/keebio/fourier/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/keebio/fourier/rules.mk
 rename keyboards/keebio/iris/rev1/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/keebio/iris/rev1/rules.mk
 rename keyboards/keebio/iris/rev1_led/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/keebio/iris/rev1_led/rules.mk
 rename keyboards/keebio/iris/rev5/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/keebio/iris/rev5/rules.mk
 rename keyboards/keebio/nyquist/rev1/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/keebio/nyquist/rev1/rules.mk
 rename keyboards/keebio/nyquist/rev2/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/keebio/nyquist/rev2/rules.mk
 rename keyboards/keebio/nyquist/rev3/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/keebio/nyquist/rev3/rules.mk
 rename keyboards/keyprez/bison/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/keyprez/bison/rules.mk
 rename keyboards/keyprez/unicorn/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/keyprez/unicorn/rules.mk
 rename keyboards/keystonecaps/gameroyadvance/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/keystonecaps/gameroyadvance/rules.mk
 rename keyboards/latincompass/latin17rgb/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/latincompass/latin17rgb/rules.mk
 rename keyboards/majistic/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/majistic/rules.mk
 rename keyboards/manta60/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/manta60/rules.mk
 rename keyboards/melgeek/mj61/rev1/{info.json => keyboard.json} (52%)
 delete mode 100644 keyboards/melgeek/mj61/rev1/rules.mk
 rename keyboards/melgeek/{mj64/rev3/info.json => mj61/rev2/keyboard.json} (52%)
 delete mode 100644 keyboards/melgeek/mj61/rev2/rules.mk
 rename keyboards/melgeek/{mj64/rev1/info.json => mj63/rev1/keyboard.json} (52%)
 delete mode 100644 keyboards/melgeek/mj63/rev1/rules.mk
 rename keyboards/melgeek/{mj61/rev2/info.json => mj63/rev2/keyboard.json} (52%)
 delete mode 100644 keyboards/melgeek/mj63/rev2/rules.mk
 rename keyboards/melgeek/{mj63/rev1/info.json => mj64/rev1/keyboard.json} (52%)
 delete mode 100644 keyboards/melgeek/mj64/rev1/rules.mk
 rename keyboards/melgeek/mj64/rev2/{info.json => keyboard.json} (52%)
 delete mode 100644 keyboards/melgeek/mj64/rev2/rules.mk
 rename keyboards/melgeek/{mj63/rev2/info.json => mj64/rev3/keyboard.json} (52%)
 delete mode 100644 keyboards/melgeek/mj64/rev3/rules.mk
 rename keyboards/merge/um70/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/merge/um70/rules.mk
 rename keyboards/merge/um80/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/merge/um80/rules.mk
 rename keyboards/meson/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/meson/rules.mk
 rename keyboards/miller/gm862/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/miller/gm862/rules.mk
 rename keyboards/mint60/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/mint60/rules.mk
 rename keyboards/momoka_ergo/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/momoka_ergo/rules.mk
 rename keyboards/nacly/sodium42/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/nacly/sodium42/rules.mk
 rename keyboards/nacly/sodium50/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/nacly/sodium50/rules.mk
 rename keyboards/nacly/sodium62/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/nacly/sodium62/rules.mk
 rename keyboards/nacly/splitreus62/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/nacly/splitreus62/rules.mk
 rename keyboards/obosob/arch_36/{info.json => keyboard.json} (92%)
 delete mode 100644 keyboards/obosob/arch_36/rules.mk
 rename keyboards/obosob/steal_this_keyboard/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/obosob/steal_this_keyboard/rules.mk
 rename keyboards/ogre/ergo_single/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/ogre/ergo_single/rules.mk
 rename keyboards/ogre/ergo_split/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/ogre/ergo_split/rules.mk
 rename keyboards/pisces/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/pisces/rules.mk
 rename keyboards/pluckey/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/pluckey/rules.mk
 rename keyboards/pteron36/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/pteron36/rules.mk
 rename keyboards/recompile_keys/cocoa40/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/recompile_keys/cocoa40/rules.mk
 rename keyboards/salicylic_acid3/7splus/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/salicylic_acid3/7splus/rules.mk
 rename keyboards/salicylic_acid3/ajisai74/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/salicylic_acid3/ajisai74/rules.mk
 rename keyboards/salicylic_acid3/ergoarrows/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/salicylic_acid3/ergoarrows/rules.mk
 rename keyboards/salicylic_acid3/nknl7en/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/salicylic_acid3/nknl7en/rules.mk
 rename keyboards/salicylic_acid3/nknl7jp/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/salicylic_acid3/nknl7jp/rules.mk
 rename keyboards/scatter42/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/scatter42/rules.mk
 rename keyboards/sparrow62/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/sparrow62/rules.mk
 rename keyboards/takashiski/otaku_split/rev0/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/takashiski/otaku_split/rev0/rules.mk
 rename keyboards/takashiski/otaku_split/rev1/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/takashiski/otaku_split/rev1/rules.mk
 rename keyboards/unikeyboard/diverge3/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/unikeyboard/diverge3/rules.mk
 rename keyboards/unikeyboard/divergetm2/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/unikeyboard/divergetm2/rules.mk
 rename keyboards/viktus/sp_mini/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/viktus/sp_mini/rules.mk

diff --git a/keyboards/bastardkb/tbk/info.json b/keyboards/bastardkb/tbk/keyboard.json
similarity index 95%
rename from keyboards/bastardkb/tbk/info.json
rename to keyboards/bastardkb/tbk/keyboard.json
index 40c33619d1..90e37478a1 100644
--- a/keyboards/bastardkb/tbk/info.json
+++ b/keyboards/bastardkb/tbk/keyboard.json
@@ -24,6 +24,15 @@
     "ws2812": {
         "pin": "D2"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B4", "E6", "C6", "B1", "B3", "B2"],
         "rows": ["D7", "B5", "F7", "F6", "B6"]
diff --git a/keyboards/bastardkb/tbk/rules.mk b/keyboards/bastardkb/tbk/rules.mk
deleted file mode 100644
index 2eba275490..0000000000
--- a/keyboards/bastardkb/tbk/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/flxlb/zplit/info.json b/keyboards/flxlb/zplit/keyboard.json
similarity index 94%
rename from keyboards/flxlb/zplit/info.json
rename to keyboards/flxlb/zplit/keyboard.json
index 850cb3f5d3..2d5c33f49f 100644
--- a/keyboards/flxlb/zplit/info.json
+++ b/keyboards/flxlb/zplit/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B2", "B3", "D6", "D7", "B4", "B5"],
         "rows": ["D4", "F5", "F4", "F1"]
diff --git a/keyboards/flxlb/zplit/rules.mk b/keyboards/flxlb/zplit/rules.mk
deleted file mode 100644
index 901257cd17..0000000000
--- a/keyboards/flxlb/zplit/rules.mk
+++ /dev/null
@@ -1,13 +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 = yes        # 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
-ENCODER_ENABLE = yes
diff --git a/keyboards/fungo/rev1/info.json b/keyboards/fungo/rev1/keyboard.json
similarity index 96%
rename from keyboards/fungo/rev1/info.json
rename to keyboards/fungo/rev1/keyboard.json
index 7c05cd7371..988ba0f643 100644
--- a/keyboards/fungo/rev1/info.json
+++ b/keyboards/fungo/rev1/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x1233",
     "device_version": "0.0.1"
   },
+  "features": {
+      "bootmagic": false,
+      "command": false,
+      "console": false,
+      "extrakey": false,
+      "key_lock": true,
+      "mousekey": true,
+      "nkro": false
+  },
   "matrix_pins": {
     "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
     "rows": ["D4", "C6", "D7", "E6", "B4", "B5"],
diff --git a/keyboards/fungo/rev1/rules.mk b/keyboards/fungo/rev1/rules.mk
deleted file mode 100644
index 2365546821..0000000000
--- a/keyboards/fungo/rev1/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       # Mouse keys
-EXTRAKEY_ENABLE = no       # 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
-KEY_LOCK_ENABLE = yes       # kc_lock use
-
-OLED_ENABLE = no
diff --git a/keyboards/gummykey/info.json b/keyboards/gummykey/keyboard.json
similarity index 95%
rename from keyboards/gummykey/info.json
rename to keyboards/gummykey/keyboard.json
index 1520809502..bb7001438d 100644
--- a/keyboards/gummykey/info.json
+++ b/keyboards/gummykey/keyboard.json
@@ -3,6 +3,14 @@
     "manufacturer": "Gumorr",
     "url": "https://github.com/gumorr/GummyKey",
     "maintainer": "Gumorr",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "usb": {
         "vid": "0xAA12",
         "pid": "0x0001",
diff --git a/keyboards/gummykey/rules.mk b/keyboards/gummykey/rules.mk
deleted file mode 100644
index 6e0404820c..0000000000
--- a/keyboards/gummykey/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/hand88/info.json b/keyboards/hand88/keyboard.json
similarity index 99%
rename from keyboards/hand88/info.json
rename to keyboards/hand88/keyboard.json
index 0dc55ed89a..cb8a320aaf 100755
--- a/keyboards/hand88/info.json
+++ b/keyboards/hand88/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3838",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["A1", "B9", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "B2", "B10", "B11", "B12", "B13", "B14", "B15", "A8"],
         "rows": ["A2", "A14", "A15", "B3", "B4", "B5"]
diff --git a/keyboards/hand88/rules.mk b/keyboards/hand88/rules.mk
deleted file mode 100644
index d3ca7b060e..0000000000
--- a/keyboards/hand88/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/handwired/brain/info.json b/keyboards/handwired/brain/keyboard.json
similarity index 95%
rename from keyboards/handwired/brain/info.json
rename to keyboards/handwired/brain/keyboard.json
index 01ec6602b7..e9093711d0 100644
--- a/keyboards/handwired/brain/info.json
+++ b/keyboards/handwired/brain/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D1", "D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F4", "F5", "F6", "F7", "B1"]
diff --git a/keyboards/handwired/brain/rules.mk b/keyboards/handwired/brain/rules.mk
deleted file mode 100644
index 6fe874e748..0000000000
--- a/keyboards/handwired/brain/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/handwired/chiron/info.json b/keyboards/handwired/chiron/keyboard.json
similarity index 95%
rename from keyboards/handwired/chiron/info.json
rename to keyboards/handwired/chiron/keyboard.json
index 9d1d47564a..6c2626df64 100644
--- a/keyboards/handwired/chiron/info.json
+++ b/keyboards/handwired/chiron/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": false,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true,
+        "sleep_led": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
         "rows": ["D4", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/handwired/chiron/rules.mk b/keyboards/handwired/chiron/rules.mk
deleted file mode 100644
index 6178464942..0000000000
--- a/keyboards/handwired/chiron/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-AUDIO_ENABLE = no
-AUTOLOG_ENABLE = no
-BACKLIGHT_ENABLE = no
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-COMMAND_ENABLE = no
-CONSOLE_ENABLE = no
-DEBUG_ENABLE = no
-EXTRAKEY_ENABLE = no
-LEADER_ENABLE = no
-MOUSEKEY_ENABLE = yes
-NKRO_ENABLE = no            # Enable N-Key Rollover
-RGBLIGHT_ENABLE = yes
-SLEEP_LED_ENABLE = yes
diff --git a/keyboards/handwired/dactyl_manuform/4x5/info.json b/keyboards/handwired/dactyl_manuform/4x5/keyboard.json
similarity index 96%
rename from keyboards/handwired/dactyl_manuform/4x5/info.json
rename to keyboards/handwired/dactyl_manuform/4x5/keyboard.json
index 12f6f6397a..b779e9d3c1 100644
--- a/keyboards/handwired/dactyl_manuform/4x5/info.json
+++ b/keyboards/handwired/dactyl_manuform/4x5/keyboard.json
@@ -14,6 +14,14 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C6", "D7", "E6", "B4", "B5"],
         "rows": ["F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_manuform/4x5/rules.mk b/keyboards/handwired/dactyl_manuform/4x5/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x5/rules.mk
+++ /dev/null
@@ -1,12 +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 = 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/handwired/dactyl_manuform/4x5_5/info.json b/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json
similarity index 94%
rename from keyboards/handwired/dactyl_manuform/4x5_5/info.json
rename to keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json
index 689b43c5bf..8f53dd0303 100644
--- a/keyboards/handwired/dactyl_manuform/4x5_5/info.json
+++ b/keyboards/handwired/dactyl_manuform/4x5_5/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3435",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "F6"],
         "rows": ["F7", "B1", "B3", "B2", "B4"]
diff --git a/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk b/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk
deleted file mode 100644
index 7748be4c5b..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x5_5/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Build Options
-
-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 = yes        # 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/handwired/dactyl_manuform/4x6/info.json b/keyboards/handwired/dactyl_manuform/4x6/keyboard.json
similarity index 95%
rename from keyboards/handwired/dactyl_manuform/4x6/info.json
rename to keyboards/handwired/dactyl_manuform/4x6/keyboard.json
index 9305461f86..feb58db5db 100644
--- a/keyboards/handwired/dactyl_manuform/4x6/info.json
+++ b/keyboards/handwired/dactyl_manuform/4x6/keyboard.json
@@ -14,6 +14,14 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_manuform/4x6/rules.mk b/keyboards/handwired/dactyl_manuform/4x6/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6/rules.mk
+++ /dev/null
@@ -1,12 +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 = 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/handwired/dactyl_manuform/4x6_5/info.json b/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json
similarity index 97%
rename from keyboards/handwired/dactyl_manuform/4x6_5/info.json
rename to keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json
index 9a879132a3..a0607c7068 100644
--- a/keyboards/handwired/dactyl_manuform/4x6_5/info.json
+++ b/keyboards/handwired/dactyl_manuform/4x6_5/keyboard.json
@@ -14,6 +14,14 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_manuform/4x6_5/rules.mk b/keyboards/handwired/dactyl_manuform/4x6_5/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/handwired/dactyl_manuform/4x6_5/rules.mk
+++ /dev/null
@@ -1,12 +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 = 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/handwired/dactyl_manuform/5x6/info.json b/keyboards/handwired/dactyl_manuform/5x6/keyboard.json
similarity index 95%
rename from keyboards/handwired/dactyl_manuform/5x6/info.json
rename to keyboards/handwired/dactyl_manuform/5x6/keyboard.json
index 6665844748..b5681f4ca7 100644
--- a/keyboards/handwired/dactyl_manuform/5x6/info.json
+++ b/keyboards/handwired/dactyl_manuform/5x6/keyboard.json
@@ -14,6 +14,14 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_manuform/5x6/rules.mk b/keyboards/handwired/dactyl_manuform/5x6/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6/rules.mk
+++ /dev/null
@@ -1,12 +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 = 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/handwired/dactyl_manuform/5x6_2_5/info.json b/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json
similarity index 95%
rename from keyboards/handwired/dactyl_manuform/5x6_2_5/info.json
rename to keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json
index ec6a432cb2..e36acea627 100644
--- a/keyboards/handwired/dactyl_manuform/5x6_2_5/info.json
+++ b/keyboards/handwired/dactyl_manuform/5x6_2_5/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3536",
         "device_version": "0.0.3"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_manuform/5x6_2_5/rules.mk b/keyboards/handwired/dactyl_manuform/5x6_2_5/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6_2_5/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/info.json b/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json
similarity index 95%
rename from keyboards/handwired/dactyl_manuform/5x6_5/info.json
rename to keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json
index 14b0105cae..1153bcdb44 100644
--- a/keyboards/handwired/dactyl_manuform/5x6_5/info.json
+++ b/keyboards/handwired/dactyl_manuform/5x6_5/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3536",
         "device_version": "0.0.2"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/rules.mk b/keyboards/handwired/dactyl_manuform/5x6_5/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6_5/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/handwired/dactyl_manuform/5x6_6/info.json b/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json
similarity index 95%
rename from keyboards/handwired/dactyl_manuform/5x6_6/info.json
rename to keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json
index 6a2b00ffff..8a3e69f2ef 100644
--- a/keyboards/handwired/dactyl_manuform/5x6_6/info.json
+++ b/keyboards/handwired/dactyl_manuform/5x6_6/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3536",
         "device_version": "0.0.3"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_manuform/5x6_6/rules.mk b/keyboards/handwired/dactyl_manuform/5x6_6/rules.mk
deleted file mode 100644
index e70d1927de..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x6_6/rules.mk
+++ /dev/null
@@ -1,12 +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 = yes        # 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/handwired/dactyl_manuform/5x7/info.json b/keyboards/handwired/dactyl_manuform/5x7/keyboard.json
similarity index 96%
rename from keyboards/handwired/dactyl_manuform/5x7/info.json
rename to keyboards/handwired/dactyl_manuform/5x7/keyboard.json
index 8f1cfe5d17..bc734607cf 100644
--- a/keyboards/handwired/dactyl_manuform/5x7/info.json
+++ b/keyboards/handwired/dactyl_manuform/5x7/keyboard.json
@@ -14,6 +14,14 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["D4", "C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/handwired/dactyl_manuform/5x7/rules.mk b/keyboards/handwired/dactyl_manuform/5x7/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/handwired/dactyl_manuform/5x7/rules.mk
+++ /dev/null
@@ -1,12 +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 = 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/handwired/dactyl_manuform/6x6_4/info.json b/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json
similarity index 96%
rename from keyboards/handwired/dactyl_manuform/6x6_4/info.json
rename to keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json
index e9b0eb4029..36051fb7fe 100644
--- a/keyboards/handwired/dactyl_manuform/6x6_4/info.json
+++ b/keyboards/handwired/dactyl_manuform/6x6_4/keyboard.json
@@ -14,6 +14,14 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_manuform/6x6_4/rules.mk b/keyboards/handwired/dactyl_manuform/6x6_4/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/handwired/dactyl_manuform/6x6_4/rules.mk
+++ /dev/null
@@ -1,12 +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 = 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/handwired/dactyl_promicro/info.json b/keyboards/handwired/dactyl_promicro/keyboard.json
similarity index 96%
rename from keyboards/handwired/dactyl_promicro/info.json
rename to keyboards/handwired/dactyl_promicro/keyboard.json
index 3c354bbcec..572ea05b2f 100644
--- a/keyboards/handwired/dactyl_promicro/info.json
+++ b/keyboards/handwired/dactyl_promicro/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_promicro/rules.mk b/keyboards/handwired/dactyl_promicro/rules.mk
deleted file mode 100644
index d68e4764c5..0000000000
--- a/keyboards/handwired/dactyl_promicro/rules.mk
+++ /dev/null
@@ -1,12 +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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # 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/handwired/dactyl_rah/info.json b/keyboards/handwired/dactyl_rah/keyboard.json
similarity index 96%
rename from keyboards/handwired/dactyl_rah/info.json
rename to keyboards/handwired/dactyl_rah/keyboard.json
index 6cd23a54cf..f550a055c7 100644
--- a/keyboards/handwired/dactyl_rah/info.json
+++ b/keyboards/handwired/dactyl_rah/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x3060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": false,
+    "command": true,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
     "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/dactyl_rah/rules.mk b/keyboards/handwired/dactyl_rah/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/handwired/dactyl_rah/rules.mk
+++ /dev/null
@@ -1,12 +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 = 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/handwired/elrgo_s/info.json b/keyboards/handwired/elrgo_s/keyboard.json
similarity index 94%
rename from keyboards/handwired/elrgo_s/info.json
rename to keyboards/handwired/elrgo_s/keyboard.json
index ea54669232..0da809d2ac 100644
--- a/keyboards/handwired/elrgo_s/info.json
+++ b/keyboards/handwired/elrgo_s/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3436",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/elrgo_s/rules.mk b/keyboards/handwired/elrgo_s/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/handwired/elrgo_s/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/handwired/freoduo/info.json b/keyboards/handwired/freoduo/keyboard.json
similarity index 95%
rename from keyboards/handwired/freoduo/info.json
rename to keyboards/handwired/freoduo/keyboard.json
index 04ba446e70..0d23776f4a 100644
--- a/keyboards/handwired/freoduo/info.json
+++ b/keyboards/handwired/freoduo/keyboard.json
@@ -8,6 +8,16 @@
     "pid": "0x0602",
     "device_version": "0.0.1"
 },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true,
+    "velocikey": true
+  },
 "matrix_pins": {
     "cols": ["B2", "B6", "F6", "B3", "B1", "F7"],
     "rows": ["C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/handwired/freoduo/rules.mk b/keyboards/handwired/freoduo/rules.mk
deleted file mode 100644
index 89a6989a8c..0000000000
--- a/keyboards/handwired/freoduo/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
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-VELOCIKEY_ENABLE = yes
diff --git a/keyboards/handwired/jtallbean/split_65/info.json b/keyboards/handwired/jtallbean/split_65/keyboard.json
similarity index 98%
rename from keyboards/handwired/jtallbean/split_65/info.json
rename to keyboards/handwired/jtallbean/split_65/keyboard.json
index 502b41ebce..d1b974a59b 100644
--- a/keyboards/handwired/jtallbean/split_65/info.json
+++ b/keyboards/handwired/jtallbean/split_65/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C6", "B5", "B4", "D7", "D6", "D4", "D2", "D3", "B7"],
         "rows": ["F4", "F1", "F0", "C7", "B6"]
diff --git a/keyboards/handwired/jtallbean/split_65/rules.mk b/keyboards/handwired/jtallbean/split_65/rules.mk
deleted file mode 100644
index fce764c22d..0000000000
--- a/keyboards/handwired/jtallbean/split_65/rules.mk
+++ /dev/null
@@ -1,12 +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 backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/handwired/ks63/info.json b/keyboards/handwired/ks63/keyboard.json
similarity index 95%
rename from keyboards/handwired/ks63/info.json
rename to keyboards/handwired/ks63/keyboard.json
index 095f53b7c6..542cd76811 100644
--- a/keyboards/handwired/ks63/info.json
+++ b/keyboards/handwired/ks63/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3061",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"],
         "rows": ["B5", "B4", "E6", "D7", "C6"]
diff --git a/keyboards/handwired/ks63/rules.mk b/keyboards/handwired/ks63/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/handwired/ks63/rules.mk
+++ /dev/null
@@ -1,12 +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 = 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/handwired/not_so_minidox/info.json b/keyboards/handwired/not_so_minidox/keyboard.json
similarity index 94%
rename from keyboards/handwired/not_so_minidox/info.json
rename to keyboards/handwired/not_so_minidox/keyboard.json
index e14bf01acb..b48eba771b 100644
--- a/keyboards/handwired/not_so_minidox/info.json
+++ b/keyboards/handwired/not_so_minidox/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x3060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["B6", "B2", "B3", "B1", "F7", "D4"],
     "rows": ["D7", "E6", "B4", "B5"]
diff --git a/keyboards/handwired/not_so_minidox/rules.mk b/keyboards/handwired/not_so_minidox/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/handwired/not_so_minidox/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/handwired/skakunm_dactyl/info.json b/keyboards/handwired/skakunm_dactyl/keyboard.json
similarity index 93%
rename from keyboards/handwired/skakunm_dactyl/info.json
rename to keyboards/handwired/skakunm_dactyl/keyboard.json
index fa7aad4c4d..91ee5b1fb6 100644
--- a/keyboards/handwired/skakunm_dactyl/info.json
+++ b/keyboards/handwired/skakunm_dactyl/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C6", "D7", "E6", "B4", "B5"],
         "rows": ["B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/skakunm_dactyl/rules.mk b/keyboards/handwired/skakunm_dactyl/rules.mk
deleted file mode 100644
index e39bab4422..0000000000
--- a/keyboards/handwired/skakunm_dactyl/rules.mk
+++ /dev/null
@@ -1,12 +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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # 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/handwired/split65/promicro/info.json b/keyboards/handwired/split65/promicro/keyboard.json
similarity index 95%
rename from keyboards/handwired/split65/promicro/info.json
rename to keyboards/handwired/split65/promicro/keyboard.json
index c106e4fd5e..5efdd93629 100644
--- a/keyboards/handwired/split65/promicro/info.json
+++ b/keyboards/handwired/split65/promicro/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": false,
+        "mousekey": false,
+        "nkro": false,
+        "oled": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["D4", "C6", "D7", "E6", "B4"],
diff --git a/keyboards/handwired/split65/promicro/rules.mk b/keyboards/handwired/split65/promicro/rules.mk
deleted file mode 100644
index c20f156f45..0000000000
--- a/keyboards/handwired/split65/promicro/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = no        # 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
-OLED_ENABLE = yes
diff --git a/keyboards/handwired/split89/info.json b/keyboards/handwired/split89/keyboard.json
similarity index 97%
rename from keyboards/handwired/split89/info.json
rename to keyboards/handwired/split89/keyboard.json
index 477f1f6612..d30105844a 100644
--- a/keyboards/handwired/split89/info.json
+++ b/keyboards/handwired/split89/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F5", "F4", "B5", "B4", "E6", "D7", "C6", "D4", "D2", "D3"],
         "rows": ["F6", "F7", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/handwired/split89/rules.mk b/keyboards/handwired/split89/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/handwired/split89/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/hidtech/bastyl/info.json b/keyboards/hidtech/bastyl/keyboard.json
similarity index 95%
rename from keyboards/hidtech/bastyl/info.json
rename to keyboards/hidtech/bastyl/keyboard.json
index 67903569ab..5c3a9fcfcf 100644
--- a/keyboards/hidtech/bastyl/info.json
+++ b/keyboards/hidtech/bastyl/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x1827",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B4", "E6", "C6", "B1", "B3", "B2"],
         "rows": ["D7", "B5", "F7", "F6", "B6"]
diff --git a/keyboards/hidtech/bastyl/rules.mk b/keyboards/hidtech/bastyl/rules.mk
deleted file mode 100644
index 2eba275490..0000000000
--- a/keyboards/hidtech/bastyl/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/kagizaraya/miniaxe/info.json b/keyboards/kagizaraya/miniaxe/keyboard.json
similarity index 94%
rename from keyboards/kagizaraya/miniaxe/info.json
rename to keyboards/kagizaraya/miniaxe/keyboard.json
index a1de251618..fa9f4d79df 100644
--- a/keyboards/kagizaraya/miniaxe/info.json
+++ b/keyboards/kagizaraya/miniaxe/keyboard.json
@@ -34,6 +34,14 @@
     },
     "processor": "atmega32u4",
     "bootloader": "atmel-dfu",
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "direct": [
             ["F1", "E6", "B0", "B2", "B3"],
diff --git a/keyboards/kagizaraya/miniaxe/rules.mk b/keyboards/kagizaraya/miniaxe/rules.mk
deleted file mode 100644
index f71583eb50..0000000000
--- a/keyboards/kagizaraya/miniaxe/rules.mk
+++ /dev/null
@@ -1,14 +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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
-DEBUG_ENABLE = no
diff --git a/keyboards/kakunpc/rabbit_capture_plan/info.json b/keyboards/kakunpc/rabbit_capture_plan/keyboard.json
similarity index 96%
rename from keyboards/kakunpc/rabbit_capture_plan/info.json
rename to keyboards/kakunpc/rabbit_capture_plan/keyboard.json
index fe6cf5bd01..7667e5e41b 100644
--- a/keyboards/kakunpc/rabbit_capture_plan/info.json
+++ b/keyboards/kakunpc/rabbit_capture_plan/keyboard.json
@@ -31,6 +31,15 @@
             "twinkle": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["D4", "C6", "D7", "E6", "B4"]
diff --git a/keyboards/kakunpc/rabbit_capture_plan/rules.mk b/keyboards/kakunpc/rabbit_capture_plan/rules.mk
deleted file mode 100644
index 698712de91..0000000000
--- a/keyboards/kakunpc/rabbit_capture_plan/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 = yes        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-OLED_ENABLE = no
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v2/info.json b/keyboards/kbdfans/kbd67/mkiirgb/v2/keyboard.json
similarity index 96%
rename from keyboards/kbdfans/kbd67/mkiirgb/v2/info.json
rename to keyboards/kbdfans/kbd67/mkiirgb/v2/keyboard.json
index 9285255f36..561c4df2ac 100644
--- a/keyboards/kbdfans/kbd67/mkiirgb/v2/info.json
+++ b/keyboards/kbdfans/kbd67/mkiirgb/v2/keyboard.json
@@ -39,6 +39,15 @@
         "led_process_limit": 4,
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["F7", "F6", "F5", "C7", "B0", "B1", "B2", "B3", "B4", "D7", "D6", "D4", "D5", "D3", "D2"],
         "rows": ["F0", "F1", "F4", "E6", "C6"]
diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v2/rules.mk b/keyboards/kbdfans/kbd67/mkiirgb/v2/rules.mk
deleted file mode 100644
index 502113e3b8..0000000000
--- a/keyboards/kbdfans/kbd67/mkiirgb/v2/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           # Audio output
-RGB_MATRIX_ENABLE = yes     # Use RGB matrix
diff --git a/keyboards/kbdfans/maja/info.json b/keyboards/kbdfans/maja/keyboard.json
similarity index 96%
rename from keyboards/kbdfans/maja/info.json
rename to keyboards/kbdfans/maja/keyboard.json
index 7b64cae893..c307f78637 100644
--- a/keyboards/kbdfans/maja/info.json
+++ b/keyboards/kbdfans/maja/keyboard.json
@@ -45,6 +45,15 @@
         "led_process_limit": 4,
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["C6", "C7", "F7", "F6", "F5", "F4", "F1", "B0", "B1", "B2", "B3", "B7", "D2", "D3", "D5"],
         "rows": ["F0", "B6", "B5", "B4", "D7"]
diff --git a/keyboards/kbdfans/maja/rules.mk b/keyboards/kbdfans/maja/rules.mk
deleted file mode 100755
index a59c9aa4cf..0000000000
--- a/keyboards/kbdfans/maja/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           # Audio output
-RGB_MATRIX_ENABLE = yes     # Use RGB matrix
diff --git a/keyboards/kbdfans/maja_soldered/info.json b/keyboards/kbdfans/maja_soldered/keyboard.json
similarity index 95%
rename from keyboards/kbdfans/maja_soldered/info.json
rename to keyboards/kbdfans/maja_soldered/keyboard.json
index 197f26870b..f9ae338ae7 100644
--- a/keyboards/kbdfans/maja_soldered/info.json
+++ b/keyboards/kbdfans/maja_soldered/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x6069",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["C6", "C7", "F7", "F6", "F5", "F4", "F1", "B0", "B1", "B2", "B3", "B7", "D2", "D3", "D5"],
         "rows": ["F0", "B6", "D6", "B4", "D7"]
diff --git a/keyboards/kbdfans/maja_soldered/rules.mk b/keyboards/kbdfans/maja_soldered/rules.mk
deleted file mode 100755
index 901d395d65..0000000000
--- a/keyboards/kbdfans/maja_soldered/rules.mk
+++ /dev/null
@@ -1,11 +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           # Audio output
diff --git a/keyboards/keebio/bfo9000/info.json b/keyboards/keebio/bfo9000/keyboard.json
similarity index 97%
rename from keyboards/keebio/bfo9000/info.json
rename to keyboards/keebio/bfo9000/keyboard.json
index c5571d31db..86fd59a598 100644
--- a/keyboards/keebio/bfo9000/info.json
+++ b/keyboards/keebio/bfo9000/keyboard.json
@@ -8,6 +8,14 @@
       "pid": "0x1169",
       "device_version": "1.0.0"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
       "cols": ["B5", "B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"],
       "rows": ["D3", "D2", "D4", "C6", "D7", "E6"]
diff --git a/keyboards/keebio/bfo9000/rules.mk b/keyboards/keebio/bfo9000/rules.mk
deleted file mode 100644
index b7f1787db7..0000000000
--- a/keyboards/keebio/bfo9000/rules.mk
+++ /dev/null
@@ -1,12 +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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # 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/keebio/fourier/info.json b/keyboards/keebio/fourier/keyboard.json
similarity index 94%
rename from keyboards/keebio/fourier/info.json
rename to keyboards/keebio/fourier/keyboard.json
index 8f0de7e531..a1dab05c56 100644
--- a/keyboards/keebio/fourier/info.json
+++ b/keyboards/keebio/fourier/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x1247",
         "device_version": "1.0.0"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["F4", "D7", "E6", "B4"]
diff --git a/keyboards/keebio/fourier/rules.mk b/keyboards/keebio/fourier/rules.mk
deleted file mode 100644
index cda7d53ecb..0000000000
--- a/keyboards/keebio/fourier/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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = yes        # Enable WS2812 RGB underlight.
diff --git a/keyboards/keebio/iris/rev1/info.json b/keyboards/keebio/iris/rev1/keyboard.json
similarity index 94%
rename from keyboards/keebio/iris/rev1/info.json
rename to keyboards/keebio/iris/rev1/keyboard.json
index b639cb4328..c6b69c3677 100644
--- a/keyboards/keebio/iris/rev1/info.json
+++ b/keyboards/keebio/iris/rev1/keyboard.json
@@ -4,6 +4,16 @@
         "pid": "0x1256",
         "device_version": "1.0.0"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["D7", "E6", "B4", "B5", "D4"]
diff --git a/keyboards/keebio/iris/rev1/rules.mk b/keyboards/keebio/iris/rev1/rules.mk
deleted file mode 100644
index 2ed9572062..0000000000
--- a/keyboards/keebio/iris/rev1/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 = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
diff --git a/keyboards/keebio/iris/rev1_led/info.json b/keyboards/keebio/iris/rev1_led/keyboard.json
similarity index 94%
rename from keyboards/keebio/iris/rev1_led/info.json
rename to keyboards/keebio/iris/rev1_led/keyboard.json
index 85e6ba797a..70500da27e 100644
--- a/keyboards/keebio/iris/rev1_led/info.json
+++ b/keyboards/keebio/iris/rev1_led/keyboard.json
@@ -4,6 +4,16 @@
         "pid": "0x1256",
         "device_version": "1.1.0"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "F7", "B1", "B3", "B2", "F4"],
         "rows": ["D7", "E6", "B4", "B5", "D4"]
diff --git a/keyboards/keebio/iris/rev1_led/rules.mk b/keyboards/keebio/iris/rev1_led/rules.mk
deleted file mode 100644
index 2ed9572062..0000000000
--- a/keyboards/keebio/iris/rev1_led/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 = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
diff --git a/keyboards/keebio/iris/rev5/info.json b/keyboards/keebio/iris/rev5/keyboard.json
similarity index 94%
rename from keyboards/keebio/iris/rev5/info.json
rename to keyboards/keebio/iris/rev5/keyboard.json
index e812a086e9..a1f97a7831 100644
--- a/keyboards/keebio/iris/rev5/info.json
+++ b/keyboards/keebio/iris/rev5/keyboard.json
@@ -4,6 +4,17 @@
         "pid": "0x5356",
         "device_version": "5.1.0"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F1", "F4", "D3", "D2", "B7", "D4"],
         "rows": ["B1", "F0", "F5", "F6", "F7"]
diff --git a/keyboards/keebio/iris/rev5/rules.mk b/keyboards/keebio/iris/rev5/rules.mk
deleted file mode 100644
index 8b2f28c1c4..0000000000
--- a/keyboards/keebio/iris/rev5/rules.mk
+++ /dev/null
@@ -1,13 +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 = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes
diff --git a/keyboards/keebio/nyquist/rev1/info.json b/keyboards/keebio/nyquist/rev1/keyboard.json
similarity index 97%
rename from keyboards/keebio/nyquist/rev1/info.json
rename to keyboards/keebio/nyquist/rev1/keyboard.json
index 105e159d5a..717b49e971 100644
--- a/keyboards/keebio/nyquist/rev1/info.json
+++ b/keyboards/keebio/nyquist/rev1/keyboard.json
@@ -4,6 +4,14 @@
         "pid": "0x1156",
         "device_version": "1.0.0"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["D4", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/keebio/nyquist/rev1/rules.mk b/keyboards/keebio/nyquist/rev1/rules.mk
deleted file mode 100644
index e39bab4422..0000000000
--- a/keyboards/keebio/nyquist/rev1/rules.mk
+++ /dev/null
@@ -1,12 +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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # 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/keebio/nyquist/rev2/info.json b/keyboards/keebio/nyquist/rev2/keyboard.json
similarity index 96%
rename from keyboards/keebio/nyquist/rev2/info.json
rename to keyboards/keebio/nyquist/rev2/keyboard.json
index 31987f2f94..435cdd189f 100644
--- a/keyboards/keebio/nyquist/rev2/info.json
+++ b/keyboards/keebio/nyquist/rev2/keyboard.json
@@ -4,6 +4,16 @@
         "pid": "0x2156",
         "device_version": "2.0.0"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D2", "F5", "F6", "F7", "B1", "B3"],
         "rows": ["D4", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/keebio/nyquist/rev2/rules.mk b/keyboards/keebio/nyquist/rev2/rules.mk
deleted file mode 100644
index 083a3e806c..0000000000
--- a/keyboards/keebio/nyquist/rev2/rules.mk
+++ /dev/null
@@ -1,12 +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 = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
diff --git a/keyboards/keebio/nyquist/rev3/info.json b/keyboards/keebio/nyquist/rev3/keyboard.json
similarity index 96%
rename from keyboards/keebio/nyquist/rev3/info.json
rename to keyboards/keebio/nyquist/rev3/keyboard.json
index 955c928107..80e5a10a17 100644
--- a/keyboards/keebio/nyquist/rev3/info.json
+++ b/keyboards/keebio/nyquist/rev3/keyboard.json
@@ -4,6 +4,16 @@
         "pid": "0x3156",
         "device_version": "3.0.0"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F1", "F4", "B7", "D2", "D3", "D4"],
         "rows": ["F0", "F5", "D7", "F6", "F7"]
diff --git a/keyboards/keebio/nyquist/rev3/rules.mk b/keyboards/keebio/nyquist/rev3/rules.mk
deleted file mode 100644
index 083a3e806c..0000000000
--- a/keyboards/keebio/nyquist/rev3/rules.mk
+++ /dev/null
@@ -1,12 +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 = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
diff --git a/keyboards/keyprez/bison/info.json b/keyboards/keyprez/bison/keyboard.json
similarity index 98%
rename from keyboards/keyprez/bison/info.json
rename to keyboards/keyprez/bison/keyboard.json
index 29b1a9da72..462b9d4274 100644
--- a/keyboards/keyprez/bison/info.json
+++ b/keyboards/keyprez/bison/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D3", "E6", "B2", "B4", "D4", "F6", "F5", "F4"],
         "rows": ["D2", "F7", "B1", "B3", "D7"]
diff --git a/keyboards/keyprez/bison/rules.mk b/keyboards/keyprez/bison/rules.mk
deleted file mode 100644
index 453f0a34d3..0000000000
--- a/keyboards/keyprez/bison/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
-
-ENCODER_ENABLE = yes
diff --git a/keyboards/keyprez/unicorn/info.json b/keyboards/keyprez/unicorn/keyboard.json
similarity index 96%
rename from keyboards/keyprez/unicorn/info.json
rename to keyboards/keyprez/unicorn/keyboard.json
index 2d2ab010e7..56061290ea 100644
--- a/keyboards/keyprez/unicorn/info.json
+++ b/keyboards/keyprez/unicorn/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x7563",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F5", "B2", "B5", "D7", "B4", "B6", "E6", "D4"],
         "rows": ["F4", "D3", "F6", "F7", "B1", "B3"]
diff --git a/keyboards/keyprez/unicorn/rules.mk b/keyboards/keyprez/unicorn/rules.mk
deleted file mode 100644
index 4f4828ca97..0000000000
--- a/keyboards/keyprez/unicorn/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 = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes
diff --git a/keyboards/keystonecaps/gameroyadvance/info.json b/keyboards/keystonecaps/gameroyadvance/keyboard.json
similarity index 98%
rename from keyboards/keystonecaps/gameroyadvance/info.json
rename to keyboards/keystonecaps/gameroyadvance/keyboard.json
index 21f078a7c5..89b30fe4d8 100644
--- a/keyboards/keystonecaps/gameroyadvance/info.json
+++ b/keyboards/keystonecaps/gameroyadvance/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x6060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D4", "D0", "D1", "C6", "D7", "E6", "F4", "B2", "B6"],
         "rows": ["F5", "F6", "F7", "B1", "B3"]
diff --git a/keyboards/keystonecaps/gameroyadvance/rules.mk b/keyboards/keystonecaps/gameroyadvance/rules.mk
deleted file mode 100644
index f90bd0ef99..0000000000
--- a/keyboards/keystonecaps/gameroyadvance/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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
-ENCODER_ENABLE = yes
diff --git a/keyboards/latincompass/latin17rgb/info.json b/keyboards/latincompass/latin17rgb/keyboard.json
similarity index 94%
rename from keyboards/latincompass/latin17rgb/info.json
rename to keyboards/latincompass/latin17rgb/keyboard.json
index a211846f62..161672aea4 100644
--- a/keyboards/latincompass/latin17rgb/info.json
+++ b/keyboards/latincompass/latin17rgb/keyboard.json
@@ -64,6 +64,15 @@
     "driver": "is31fl3731",
     "sleep": true
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false,
+    "rgb_matrix": true
+  },
   "matrix_pins": {
     "cols": ["F7", "F6", "F5", "F4"],
     "rows": ["C7", "C6", "B6", "B5", "B4"]
diff --git a/keyboards/latincompass/latin17rgb/rules.mk b/keyboards/latincompass/latin17rgb/rules.mk
deleted file mode 100644
index 0af5f68e5e..0000000000
--- a/keyboards/latincompass/latin17rgb/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
-AUDIO_ENABLE = no              # Audio output
-RGB_MATRIX_ENABLE = yes
diff --git a/keyboards/majistic/info.json b/keyboards/majistic/keyboard.json
similarity index 96%
rename from keyboards/majistic/info.json
rename to keyboards/majistic/keyboard.json
index 00dffa2fc1..258df08d88 100644
--- a/keyboards/majistic/info.json
+++ b/keyboards/majistic/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x6E55",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5", "F4", "F5"],
         "rows": ["F6", "F7", "B1", "B3", "B2"]
diff --git a/keyboards/majistic/rules.mk b/keyboards/majistic/rules.mk
deleted file mode 100644
index fce764c22d..0000000000
--- a/keyboards/majistic/rules.mk
+++ /dev/null
@@ -1,12 +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 backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/manta60/info.json b/keyboards/manta60/keyboard.json
similarity index 95%
rename from keyboards/manta60/info.json
rename to keyboards/manta60/keyboard.json
index 06bcfb88d7..8482970b9b 100644
--- a/keyboards/manta60/info.json
+++ b/keyboards/manta60/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x991D",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": false,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
         "rows": ["D4", "C6", "D7", "E6", "B4"]
diff --git a/keyboards/manta60/rules.mk b/keyboards/manta60/rules.mk
deleted file mode 100644
index be0c854d3c..0000000000
--- a/keyboards/manta60/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 = no        # Audio control and System control
-CONSOLE_ENABLE = no         # 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 = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
-IOS_DEVICE_ENABLE = no      # connect to IOS device (iPad, iPhone)
diff --git a/keyboards/melgeek/mj61/rev1/info.json b/keyboards/melgeek/mj61/rev1/keyboard.json
similarity index 52%
rename from keyboards/melgeek/mj61/rev1/info.json
rename to keyboards/melgeek/mj61/rev1/keyboard.json
index 67a4a004d6..e0bd315865 100644
--- a/keyboards/melgeek/mj61/rev1/info.json
+++ b/keyboards/melgeek/mj61/rev1/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B15", "A8", "A10", "A15", "B3", "B4", "B5", "B8", "B9", "C13", "C14", "C15", "A0", "A1"],
         "rows": ["B12", "B11", "B10", "B1", "A3"]
diff --git a/keyboards/melgeek/mj61/rev1/rules.mk b/keyboards/melgeek/mj61/rev1/rules.mk
deleted file mode 100644
index c66b1abcd4..0000000000
--- a/keyboards/melgeek/mj61/rev1/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
-RGB_MATRIX_ENABLE = yes        # Use RGB matrix
diff --git a/keyboards/melgeek/mj64/rev3/info.json b/keyboards/melgeek/mj61/rev2/keyboard.json
similarity index 52%
rename from keyboards/melgeek/mj64/rev3/info.json
rename to keyboards/melgeek/mj61/rev2/keyboard.json
index 62c5827117..779cfc091c 100644
--- a/keyboards/melgeek/mj64/rev3/info.json
+++ b/keyboards/melgeek/mj61/rev2/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B15", "A8", "B13", "A15", "B3", "B4", "B5", "B8", "B9", "C13", "C14", "C15", "A0", "A1"],
         "rows": ["B12", "B11", "B10", "B1", "A3"]
diff --git a/keyboards/melgeek/mj61/rev2/rules.mk b/keyboards/melgeek/mj61/rev2/rules.mk
deleted file mode 100644
index c66b1abcd4..0000000000
--- a/keyboards/melgeek/mj61/rev2/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
-RGB_MATRIX_ENABLE = yes        # Use RGB matrix
diff --git a/keyboards/melgeek/mj64/rev1/info.json b/keyboards/melgeek/mj63/rev1/keyboard.json
similarity index 52%
rename from keyboards/melgeek/mj64/rev1/info.json
rename to keyboards/melgeek/mj63/rev1/keyboard.json
index 67a4a004d6..e0bd315865 100644
--- a/keyboards/melgeek/mj64/rev1/info.json
+++ b/keyboards/melgeek/mj63/rev1/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B15", "A8", "A10", "A15", "B3", "B4", "B5", "B8", "B9", "C13", "C14", "C15", "A0", "A1"],
         "rows": ["B12", "B11", "B10", "B1", "A3"]
diff --git a/keyboards/melgeek/mj63/rev1/rules.mk b/keyboards/melgeek/mj63/rev1/rules.mk
deleted file mode 100644
index c66b1abcd4..0000000000
--- a/keyboards/melgeek/mj63/rev1/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
-RGB_MATRIX_ENABLE = yes        # Use RGB matrix
diff --git a/keyboards/melgeek/mj61/rev2/info.json b/keyboards/melgeek/mj63/rev2/keyboard.json
similarity index 52%
rename from keyboards/melgeek/mj61/rev2/info.json
rename to keyboards/melgeek/mj63/rev2/keyboard.json
index 62c5827117..779cfc091c 100644
--- a/keyboards/melgeek/mj61/rev2/info.json
+++ b/keyboards/melgeek/mj63/rev2/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B15", "A8", "B13", "A15", "B3", "B4", "B5", "B8", "B9", "C13", "C14", "C15", "A0", "A1"],
         "rows": ["B12", "B11", "B10", "B1", "A3"]
diff --git a/keyboards/melgeek/mj63/rev2/rules.mk b/keyboards/melgeek/mj63/rev2/rules.mk
deleted file mode 100644
index c66b1abcd4..0000000000
--- a/keyboards/melgeek/mj63/rev2/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
-RGB_MATRIX_ENABLE = yes        # Use RGB matrix
diff --git a/keyboards/melgeek/mj63/rev1/info.json b/keyboards/melgeek/mj64/rev1/keyboard.json
similarity index 52%
rename from keyboards/melgeek/mj63/rev1/info.json
rename to keyboards/melgeek/mj64/rev1/keyboard.json
index 67a4a004d6..e0bd315865 100644
--- a/keyboards/melgeek/mj63/rev1/info.json
+++ b/keyboards/melgeek/mj64/rev1/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B15", "A8", "A10", "A15", "B3", "B4", "B5", "B8", "B9", "C13", "C14", "C15", "A0", "A1"],
         "rows": ["B12", "B11", "B10", "B1", "A3"]
diff --git a/keyboards/melgeek/mj64/rev1/rules.mk b/keyboards/melgeek/mj64/rev1/rules.mk
deleted file mode 100644
index c66b1abcd4..0000000000
--- a/keyboards/melgeek/mj64/rev1/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
-RGB_MATRIX_ENABLE = yes        # Use RGB matrix
diff --git a/keyboards/melgeek/mj64/rev2/info.json b/keyboards/melgeek/mj64/rev2/keyboard.json
similarity index 52%
rename from keyboards/melgeek/mj64/rev2/info.json
rename to keyboards/melgeek/mj64/rev2/keyboard.json
index 67a4a004d6..e0bd315865 100644
--- a/keyboards/melgeek/mj64/rev2/info.json
+++ b/keyboards/melgeek/mj64/rev2/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B15", "A8", "A10", "A15", "B3", "B4", "B5", "B8", "B9", "C13", "C14", "C15", "A0", "A1"],
         "rows": ["B12", "B11", "B10", "B1", "A3"]
diff --git a/keyboards/melgeek/mj64/rev2/rules.mk b/keyboards/melgeek/mj64/rev2/rules.mk
deleted file mode 100644
index c66b1abcd4..0000000000
--- a/keyboards/melgeek/mj64/rev2/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
-RGB_MATRIX_ENABLE = yes        # Use RGB matrix
diff --git a/keyboards/melgeek/mj63/rev2/info.json b/keyboards/melgeek/mj64/rev3/keyboard.json
similarity index 52%
rename from keyboards/melgeek/mj63/rev2/info.json
rename to keyboards/melgeek/mj64/rev3/keyboard.json
index 62c5827117..779cfc091c 100644
--- a/keyboards/melgeek/mj63/rev2/info.json
+++ b/keyboards/melgeek/mj64/rev3/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B15", "A8", "B13", "A15", "B3", "B4", "B5", "B8", "B9", "C13", "C14", "C15", "A0", "A1"],
         "rows": ["B12", "B11", "B10", "B1", "A3"]
diff --git a/keyboards/melgeek/mj64/rev3/rules.mk b/keyboards/melgeek/mj64/rev3/rules.mk
deleted file mode 100644
index c66b1abcd4..0000000000
--- a/keyboards/melgeek/mj64/rev3/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
-RGB_MATRIX_ENABLE = yes        # Use RGB matrix
diff --git a/keyboards/merge/um70/info.json b/keyboards/merge/um70/keyboard.json
similarity index 98%
rename from keyboards/merge/um70/info.json
rename to keyboards/merge/um70/keyboard.json
index a667dbe11b..c349abc788 100644
--- a/keyboards/merge/um70/info.json
+++ b/keyboards/merge/um70/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0x3222",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "D6", "D4"],
         "rows": ["B0", "B1", "B2", "B3", "B7"]
diff --git a/keyboards/merge/um70/rules.mk b/keyboards/merge/um70/rules.mk
deleted file mode 100644
index 45cbdcf015..0000000000
--- a/keyboards/merge/um70/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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes
-OLED_ENABLE = yes
diff --git a/keyboards/merge/um80/info.json b/keyboards/merge/um80/keyboard.json
similarity index 96%
rename from keyboards/merge/um80/info.json
rename to keyboards/merge/um80/keyboard.json
index 64939a18fb..5a369877f8 100644
--- a/keyboards/merge/um80/info.json
+++ b/keyboards/merge/um80/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0x3241",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "D6", "D4"],
         "rows": ["B0", "B1", "B2", "B3", "B7", "C7"]
diff --git a/keyboards/merge/um80/rules.mk b/keyboards/merge/um80/rules.mk
deleted file mode 100644
index 45cbdcf015..0000000000
--- a/keyboards/merge/um80/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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes
-OLED_ENABLE = yes
diff --git a/keyboards/meson/info.json b/keyboards/meson/keyboard.json
similarity index 96%
rename from keyboards/meson/info.json
rename to keyboards/meson/keyboard.json
index aeec25f046..72d9ec58e7 100644
--- a/keyboards/meson/info.json
+++ b/keyboards/meson/keyboard.json
@@ -7,6 +7,15 @@
       "pid": "0x0000",
       "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
       "cols": ["D4", "D7", "E6", "B3", "B2", "B6", "F4"],
       "rows": ["F7", "C6", "F6", "F5"]
diff --git a/keyboards/meson/rules.mk b/keyboards/meson/rules.mk
deleted file mode 100644
index 9686f2e033..0000000000
--- a/keyboards/meson/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/miller/gm862/info.json b/keyboards/miller/gm862/keyboard.json
similarity index 96%
rename from keyboards/miller/gm862/info.json
rename to keyboards/miller/gm862/keyboard.json
index 1249b0a5ab..b8c32cf16a 100644
--- a/keyboards/miller/gm862/info.json
+++ b/keyboards/miller/gm862/keyboard.json
@@ -42,6 +42,15 @@
         "driver": "is31fl3733",
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B5", "B6", "C6", "C7", "F7", "F6", "B0", "B1", "B2", "B3", "B7", "D2", "D3", "D5"],
         "rows": ["F0", "F1", "F4", "F5", "B4"]
diff --git a/keyboards/miller/gm862/rules.mk b/keyboards/miller/gm862/rules.mk
deleted file mode 100644
index ea646d3d93..0000000000
--- a/keyboards/miller/gm862/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
-RGB_MATRIX_ENABLE = yes        # Use RGB matrix
diff --git a/keyboards/mint60/info.json b/keyboards/mint60/keyboard.json
similarity index 95%
rename from keyboards/mint60/info.json
rename to keyboards/mint60/keyboard.json
index a7f992056e..332a366aa6 100644
--- a/keyboards/mint60/info.json
+++ b/keyboards/mint60/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x0000",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": false,
+    "mousekey": false,
+    "nkro": false,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["D4", "B3", "B1", "F7", "B2", "B6", "F6", "F5"],
     "rows": ["C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/mint60/rules.mk b/keyboards/mint60/rules.mk
deleted file mode 100644
index e788df9b32..0000000000
--- a/keyboards/mint60/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 = no        # 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 WS2812 RGB underlight.
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/momoka_ergo/info.json b/keyboards/momoka_ergo/keyboard.json
similarity index 96%
rename from keyboards/momoka_ergo/info.json
rename to keyboards/momoka_ergo/keyboard.json
index f509451ab3..da21c509b9 100644
--- a/keyboards/momoka_ergo/info.json
+++ b/keyboards/momoka_ergo/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "F6", "F5", "F4", "F1", "F0"],
         "rows": ["C6", "D7", "E6", "B4", "B5", "B6", "B7"]
diff --git a/keyboards/momoka_ergo/rules.mk b/keyboards/momoka_ergo/rules.mk
deleted file mode 100644
index 6d85e16f92..0000000000
--- a/keyboards/momoka_ergo/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/nacly/sodium42/info.json b/keyboards/nacly/sodium42/keyboard.json
similarity index 94%
rename from keyboards/nacly/sodium42/info.json
rename to keyboards/nacly/sodium42/keyboard.json
index e87c76e21a..f084ca2a23 100644
--- a/keyboards/nacly/sodium42/info.json
+++ b/keyboards/nacly/sodium42/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xFED0",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D2", "C6", "E6", "B5", "B2", "B3"],
         "rows": ["F7", "D4", "D7", "B4"]
diff --git a/keyboards/nacly/sodium42/rules.mk b/keyboards/nacly/sodium42/rules.mk
deleted file mode 100644
index 7c9f712027..0000000000
--- a/keyboards/nacly/sodium42/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 = yes        # 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/nacly/sodium50/info.json b/keyboards/nacly/sodium50/keyboard.json
similarity index 95%
rename from keyboards/nacly/sodium50/info.json
rename to keyboards/nacly/sodium50/keyboard.json
index e82dc8c1b5..ff7b691d9d 100644
--- a/keyboards/nacly/sodium50/info.json
+++ b/keyboards/nacly/sodium50/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xFED0",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D2", "C6", "E6", "B5", "B2", "B3", "B1"],
         "rows": ["F7", "D4", "D7", "B4"]
diff --git a/keyboards/nacly/sodium50/rules.mk b/keyboards/nacly/sodium50/rules.mk
deleted file mode 100644
index 7c9f712027..0000000000
--- a/keyboards/nacly/sodium50/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 = yes        # 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/nacly/sodium62/info.json b/keyboards/nacly/sodium62/keyboard.json
similarity index 95%
rename from keyboards/nacly/sodium62/info.json
rename to keyboards/nacly/sodium62/keyboard.json
index 45f5c488b8..941bad2bd6 100644
--- a/keyboards/nacly/sodium62/info.json
+++ b/keyboards/nacly/sodium62/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x636C",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "oled": true
+    },
     "matrix_pins": {
         "cols": ["D2", "C6", "E6", "B5", "B2", "B3", "B1"],
         "rows": ["F7", "D4", "D7", "B4", "B6"]
diff --git a/keyboards/nacly/sodium62/rules.mk b/keyboards/nacly/sodium62/rules.mk
deleted file mode 100644
index 020e702921..0000000000
--- a/keyboards/nacly/sodium62/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 = yes        # 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
-
-OLED_ENABLE = yes
diff --git a/keyboards/nacly/splitreus62/info.json b/keyboards/nacly/splitreus62/keyboard.json
similarity index 94%
rename from keyboards/nacly/splitreus62/info.json
rename to keyboards/nacly/splitreus62/keyboard.json
index 85038a903b..4efc32f5c5 100644
--- a/keyboards/nacly/splitreus62/info.json
+++ b/keyboards/nacly/splitreus62/keyboard.json
@@ -8,6 +8,15 @@
       "pid": "0xFED0",
       "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["E6", "B4", "B5", "B6", "B2", "B3"],
         "rows": ["D3", "D2", "D1", "D4", "C6", "D7"]
diff --git a/keyboards/nacly/splitreus62/rules.mk b/keyboards/nacly/splitreus62/rules.mk
deleted file mode 100644
index 28c29a3b4d..0000000000
--- a/keyboards/nacly/splitreus62/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 = yes        # 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/obosob/arch_36/info.json b/keyboards/obosob/arch_36/keyboard.json
similarity index 92%
rename from keyboards/obosob/arch_36/info.json
rename to keyboards/obosob/arch_36/keyboard.json
index bc99737278..db3e356f3a 100644
--- a/keyboards/obosob/arch_36/info.json
+++ b/keyboards/obosob/arch_36/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x9CE3",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "B1", "B3", "B2", "B6"],
         "rows": ["D7", "E6", "B4", "B5"]
diff --git a/keyboards/obosob/arch_36/rules.mk b/keyboards/obosob/arch_36/rules.mk
deleted file mode 100644
index 7d3e33104f..0000000000
--- a/keyboards/obosob/arch_36/rules.mk
+++ /dev/null
@@ -1,13 +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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes      # Enable keyboard RGB underglow
-OLED_ENABLE = yes
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/obosob/steal_this_keyboard/info.json b/keyboards/obosob/steal_this_keyboard/keyboard.json
similarity index 93%
rename from keyboards/obosob/steal_this_keyboard/info.json
rename to keyboards/obosob/steal_this_keyboard/keyboard.json
index aecfffd759..83de29d69c 100644
--- a/keyboards/obosob/steal_this_keyboard/info.json
+++ b/keyboards/obosob/steal_this_keyboard/keyboard.json
@@ -10,6 +10,15 @@
     },
     "processor": "atmega32u4",
     "bootloader": "caterina",
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "unicode": true
+    },
     "matrix_pins": {
         "direct": [
             ["F4", "F7", "B2", "D1", "D7"],
diff --git a/keyboards/obosob/steal_this_keyboard/rules.mk b/keyboards/obosob/steal_this_keyboard/rules.mk
deleted file mode 100644
index f59e3a8823..0000000000
--- a/keyboards/obosob/steal_this_keyboard/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 = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-UNICODE_ENABLE = yes        # Unicode
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/ogre/ergo_single/info.json b/keyboards/ogre/ergo_single/keyboard.json
similarity index 96%
rename from keyboards/ogre/ergo_single/info.json
rename to keyboards/ogre/ergo_single/keyboard.json
index 6c3feea0e0..3ebd88b0d2 100644
--- a/keyboards/ogre/ergo_single/info.json
+++ b/keyboards/ogre/ergo_single/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": false,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
         "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/ogre/ergo_single/rules.mk b/keyboards/ogre/ergo_single/rules.mk
deleted file mode 100644
index ff287d5235..0000000000
--- a/keyboards/ogre/ergo_single/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 = no        # 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/ogre/ergo_split/info.json b/keyboards/ogre/ergo_split/keyboard.json
similarity index 96%
rename from keyboards/ogre/ergo_split/info.json
rename to keyboards/ogre/ergo_split/keyboard.json
index d937fe9373..765bebc2fb 100644
--- a/keyboards/ogre/ergo_split/info.json
+++ b/keyboards/ogre/ergo_split/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": false,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
         "rows": ["C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/ogre/ergo_split/rules.mk b/keyboards/ogre/ergo_split/rules.mk
deleted file mode 100644
index ff287d5235..0000000000
--- a/keyboards/ogre/ergo_split/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 = no        # 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/pisces/info.json b/keyboards/pisces/keyboard.json
similarity index 93%
rename from keyboards/pisces/info.json
rename to keyboards/pisces/keyboard.json
index 48ef9db5c0..2783f1085f 100644
--- a/keyboards/pisces/info.json
+++ b/keyboards/pisces/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B1", "B2", "B3", "B4", "B5", "B6", "B7"],
         "rows": ["C4", "B0", "C7"]
diff --git a/keyboards/pisces/rules.mk b/keyboards/pisces/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/pisces/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/pluckey/info.json b/keyboards/pluckey/keyboard.json
similarity index 97%
rename from keyboards/pluckey/info.json
rename to keyboards/pluckey/keyboard.json
index 0efd9db12d..52e951e875 100644
--- a/keyboards/pluckey/info.json
+++ b/keyboards/pluckey/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x91CE",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D1", "D0", "D4", "C6", "D7", "E6", "F7"],
         "rows": ["B4", "F5", "F6", "B6", "B5"]
diff --git a/keyboards/pluckey/rules.mk b/keyboards/pluckey/rules.mk
deleted file mode 100644
index b03b6fa905..0000000000
--- a/keyboards/pluckey/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
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes
diff --git a/keyboards/pteron36/info.json b/keyboards/pteron36/keyboard.json
similarity index 95%
rename from keyboards/pteron36/info.json
rename to keyboards/pteron36/keyboard.json
index 2adb97ec51..f4bab52419 100644
--- a/keyboards/pteron36/info.json
+++ b/keyboards/pteron36/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0x5054",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "F7", "B1", "B3", "B2"],
         "rows": ["E6", "D7", "B4", "B5"]
diff --git a/keyboards/pteron36/rules.mk b/keyboards/pteron36/rules.mk
deleted file mode 100644
index 182bad228c..0000000000
--- a/keyboards/pteron36/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 = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-OLED_ENABLE = yes           # OLED display
-ENCODER_ENABLE = yes        # Encoder support
diff --git a/keyboards/recompile_keys/cocoa40/info.json b/keyboards/recompile_keys/cocoa40/keyboard.json
similarity index 94%
rename from keyboards/recompile_keys/cocoa40/info.json
rename to keyboards/recompile_keys/cocoa40/keyboard.json
index 1051dfb673..f964ff6621 100644
--- a/keyboards/recompile_keys/cocoa40/info.json
+++ b/keyboards/recompile_keys/cocoa40/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x4000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1"],
         "rows": ["F4", "F5", "F6", "F7"]
diff --git a/keyboards/recompile_keys/cocoa40/rules.mk b/keyboards/recompile_keys/cocoa40/rules.mk
deleted file mode 100644
index 7552bdafa6..0000000000
--- a/keyboards/recompile_keys/cocoa40/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/salicylic_acid3/7splus/info.json b/keyboards/salicylic_acid3/7splus/keyboard.json
similarity index 96%
rename from keyboards/salicylic_acid3/7splus/info.json
rename to keyboards/salicylic_acid3/7splus/keyboard.json
index 4a3ed4cc90..38ca750cd4 100644
--- a/keyboards/salicylic_acid3/7splus/info.json
+++ b/keyboards/salicylic_acid3/7splus/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0xEAE7",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5"],
         "rows": ["D1", "D0", "D4", "C6", "D7", "E6", "B4"]
diff --git a/keyboards/salicylic_acid3/7splus/rules.mk b/keyboards/salicylic_acid3/7splus/rules.mk
deleted file mode 100644
index a3deaf30b9..0000000000
--- a/keyboards/salicylic_acid3/7splus/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 = yes        # 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/salicylic_acid3/ajisai74/info.json b/keyboards/salicylic_acid3/ajisai74/keyboard.json
similarity index 96%
rename from keyboards/salicylic_acid3/ajisai74/info.json
rename to keyboards/salicylic_acid3/ajisai74/keyboard.json
index 7c8110c155..b29c5bf178 100644
--- a/keyboards/salicylic_acid3/ajisai74/info.json
+++ b/keyboards/salicylic_acid3/ajisai74/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xEB54",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5", "D3"],
         "rows": ["D4", "C6", "D7", "E6", "B4"]
diff --git a/keyboards/salicylic_acid3/ajisai74/rules.mk b/keyboards/salicylic_acid3/ajisai74/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/salicylic_acid3/ajisai74/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/salicylic_acid3/ergoarrows/info.json b/keyboards/salicylic_acid3/ergoarrows/keyboard.json
similarity index 96%
rename from keyboards/salicylic_acid3/ergoarrows/info.json
rename to keyboards/salicylic_acid3/ergoarrows/keyboard.json
index bc6a715f1d..bb9956a2d0 100644
--- a/keyboards/salicylic_acid3/ergoarrows/info.json
+++ b/keyboards/salicylic_acid3/ergoarrows/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0xEA54",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2"],
         "rows": ["D4", "C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/salicylic_acid3/ergoarrows/rules.mk b/keyboards/salicylic_acid3/ergoarrows/rules.mk
deleted file mode 100644
index 951dd07d6e..0000000000
--- a/keyboards/salicylic_acid3/ergoarrows/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/salicylic_acid3/nknl7en/info.json b/keyboards/salicylic_acid3/nknl7en/keyboard.json
similarity index 96%
rename from keyboards/salicylic_acid3/nknl7en/info.json
rename to keyboards/salicylic_acid3/nknl7en/keyboard.json
index b5ac551bc9..4d6b494b9f 100644
--- a/keyboards/salicylic_acid3/nknl7en/info.json
+++ b/keyboards/salicylic_acid3/nknl7en/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0xEA56",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5", "D2"],
         "rows": ["D4", "C6", "D7", "E6", "B4"]
diff --git a/keyboards/salicylic_acid3/nknl7en/rules.mk b/keyboards/salicylic_acid3/nknl7en/rules.mk
deleted file mode 100644
index 951dd07d6e..0000000000
--- a/keyboards/salicylic_acid3/nknl7en/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/salicylic_acid3/nknl7jp/info.json b/keyboards/salicylic_acid3/nknl7jp/keyboard.json
similarity index 96%
rename from keyboards/salicylic_acid3/nknl7jp/info.json
rename to keyboards/salicylic_acid3/nknl7jp/keyboard.json
index 2501f84d9f..0f260cdfdd 100644
--- a/keyboards/salicylic_acid3/nknl7jp/info.json
+++ b/keyboards/salicylic_acid3/nknl7jp/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0xEA55",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B5", "D2"],
         "rows": ["D4", "C6", "D7", "E6", "B4"]
diff --git a/keyboards/salicylic_acid3/nknl7jp/rules.mk b/keyboards/salicylic_acid3/nknl7jp/rules.mk
deleted file mode 100644
index 951dd07d6e..0000000000
--- a/keyboards/salicylic_acid3/nknl7jp/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/scatter42/info.json b/keyboards/scatter42/keyboard.json
similarity index 94%
rename from keyboards/scatter42/info.json
rename to keyboards/scatter42/keyboard.json
index c0f8df47be..7ccf9cb9fc 100644
--- a/keyboards/scatter42/info.json
+++ b/keyboards/scatter42/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3B47",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3"],
         "rows": ["D4", "C6", "D7", "E6"]
diff --git a/keyboards/scatter42/rules.mk b/keyboards/scatter42/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/scatter42/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/sparrow62/info.json b/keyboards/sparrow62/keyboard.json
similarity index 95%
rename from keyboards/sparrow62/info.json
rename to keyboards/sparrow62/keyboard.json
index d7d0d8b84d..e551bb4851 100644
--- a/keyboards/sparrow62/info.json
+++ b/keyboards/sparrow62/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x7461",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F5", "F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/sparrow62/rules.mk b/keyboards/sparrow62/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/sparrow62/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/takashiski/otaku_split/rev0/info.json b/keyboards/takashiski/otaku_split/rev0/keyboard.json
similarity index 96%
rename from keyboards/takashiski/otaku_split/rev0/info.json
rename to keyboards/takashiski/otaku_split/rev0/keyboard.json
index c65a429f69..db577c2260 100644
--- a/keyboards/takashiski/otaku_split/rev0/info.json
+++ b/keyboards/takashiski/otaku_split/rev0/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B6", "B2", "B3", "B1", "F7", "F6", "F5", "F4"],
         "rows": ["B5", "B4", "E6", "D7", "C6"]
diff --git a/keyboards/takashiski/otaku_split/rev0/rules.mk b/keyboards/takashiski/otaku_split/rev0/rules.mk
deleted file mode 100644
index fce764c22d..0000000000
--- a/keyboards/takashiski/otaku_split/rev0/rules.mk
+++ /dev/null
@@ -1,12 +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 backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/takashiski/otaku_split/rev1/info.json b/keyboards/takashiski/otaku_split/rev1/keyboard.json
similarity index 96%
rename from keyboards/takashiski/otaku_split/rev1/info.json
rename to keyboards/takashiski/otaku_split/rev1/keyboard.json
index 251e2c36b9..0c83593eea 100644
--- a/keyboards/takashiski/otaku_split/rev1/info.json
+++ b/keyboards/takashiski/otaku_split/rev1/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/takashiski/otaku_split/rev1/rules.mk b/keyboards/takashiski/otaku_split/rev1/rules.mk
deleted file mode 100644
index fce764c22d..0000000000
--- a/keyboards/takashiski/otaku_split/rev1/rules.mk
+++ /dev/null
@@ -1,12 +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 backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/unikeyboard/diverge3/info.json b/keyboards/unikeyboard/diverge3/keyboard.json
similarity index 95%
rename from keyboards/unikeyboard/diverge3/info.json
rename to keyboards/unikeyboard/diverge3/keyboard.json
index d85d76b785..a6dd684be6 100644
--- a/keyboards/unikeyboard/diverge3/info.json
+++ b/keyboards/unikeyboard/diverge3/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x1257",
     "device_version": "0.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": false,
+    "command": true,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
     "rows": ["D4", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/unikeyboard/diverge3/rules.mk b/keyboards/unikeyboard/diverge3/rules.mk
deleted file mode 100644
index fd50645e4a..0000000000
--- a/keyboards/unikeyboard/diverge3/rules.mk
+++ /dev/null
@@ -1,12 +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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = no       # Enable WS2812 RGB underlight.
diff --git a/keyboards/unikeyboard/divergetm2/info.json b/keyboards/unikeyboard/divergetm2/keyboard.json
similarity index 94%
rename from keyboards/unikeyboard/divergetm2/info.json
rename to keyboards/unikeyboard/divergetm2/keyboard.json
index d68c4da94b..3c1420c39a 100644
--- a/keyboards/unikeyboard/divergetm2/info.json
+++ b/keyboards/unikeyboard/divergetm2/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x1256",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["D7", "E6", "B4", "B5"]
diff --git a/keyboards/unikeyboard/divergetm2/rules.mk b/keyboards/unikeyboard/divergetm2/rules.mk
deleted file mode 100644
index e39bab4422..0000000000
--- a/keyboards/unikeyboard/divergetm2/rules.mk
+++ /dev/null
@@ -1,12 +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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # 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/viktus/sp_mini/info.json b/keyboards/viktus/sp_mini/keyboard.json
similarity index 99%
rename from keyboards/viktus/sp_mini/info.json
rename to keyboards/viktus/sp_mini/keyboard.json
index c630942241..25aa4c9494 100644
--- a/keyboards/viktus/sp_mini/info.json
+++ b/keyboards/viktus/sp_mini/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x534D",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B6", "C6", "C7", "D4", "D2", "D3", "D5", null],
         "rows": ["F0", "B5", "B4", "D7", "D6"]
diff --git a/keyboards/viktus/sp_mini/rules.mk b/keyboards/viktus/sp_mini/rules.mk
deleted file mode 100644
index e3c4a42def..0000000000
--- a/keyboards/viktus/sp_mini/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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes