From 8e5cd981e1cb8580cde65ac99f335b59d65da632 Mon Sep 17 00:00:00 2001
From: Joel Challis <git@zvecr.com>
Date: Thu, 14 Mar 2024 03:56:42 +0000
Subject: [PATCH] Migrate features from rules.mk to DD (#23247)

---
 .../ellipse/rev1/{info.json => keyboard.json}    | 10 ++++++++++
 keyboards/abstract/ellipse/rev1/rules.mk         | 13 -------------
 .../titan60/{info.json => keyboard.json}         | 10 ++++++++++
 keyboards/acekeyboard/titan60/rules.mk           | 12 ------------
 .../87h/delta/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/acheron/apollo/87h/delta/rules.mk      | 14 --------------
 .../apollo/87htsc/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/acheron/apollo/87htsc/rules.mk         | 14 --------------
 .../apollo/88htsc/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/acheron/apollo/88htsc/rules.mk         | 14 --------------
 .../acheron/arctic/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/acheron/arctic/rules.mk                | 13 -------------
 .../acheron/austin/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/acheron/austin/rules.mk                | 12 ------------
 .../elongate/delta/{info.json => keyboard.json}  | 10 ++++++++++
 keyboards/acheron/elongate/delta/rules.mk        | 12 ------------
 .../keebspcb/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/acheron/keebspcb/rules.mk              | 12 ------------
 .../lasgweloth/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/acheron/lasgweloth/rules.mk            | 14 --------------
 .../ada/ada1800mini/{info.json => keyboard.json} |  9 +++++++++
 keyboards/ada/ada1800mini/rules.mk               | 16 ----------------
 .../ada/infinity81/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/ada/infinity81/rules.mk                | 12 ------------
 keyboards/adelheid/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/adelheid/rules.mk                      | 12 ------------
 .../akemipad/{info.json => keyboard.json}        | 11 +++++++++++
 keyboards/adpenrose/akemipad/rules.mk            | 14 --------------
 .../kintsugi/{info.json => keyboard.json}        | 11 +++++++++++
 keyboards/adpenrose/kintsugi/rules.mk            | 14 --------------
 .../adpenrose/obi/{info.json => keyboard.json}   | 10 ++++++++++
 keyboards/adpenrose/obi/rules.mk                 | 13 -------------
 .../shisaku/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/adpenrose/shisaku/rules.mk             | 12 ------------
 .../aeboards/aegis/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/aeboards/aegis/rules.mk                | 11 -----------
 .../gust/rev1/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/afternoonlabs/gust/rev1/rules.mk       | 12 ------------
 .../ai03/andromeda/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/ai03/andromeda/rules.mk                | 13 -------------
 .../equinox/rev0/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/ai03/equinox/rev0/rules.mk             | 12 ------------
 .../equinox/rev1/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/ai03/equinox/rev1/rules.mk             | 12 ------------
 .../ai03/lunar/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/ai03/lunar/rules.mk                    | 12 ------------
 .../ai03/polaris/{info.json => keyboard.json}    | 10 ++++++++++
 keyboards/ai03/polaris/rules.mk                  | 12 ------------
 .../ai03/quasar/{info.json => keyboard.json}     |  8 ++++++++
 keyboards/ai03/quasar/rules.mk                   | 12 ------------
 .../ai03/soyuz/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/ai03/soyuz/rules.mk                    | 12 ------------
 keyboards/ai03/vega/{info.json => keyboard.json} |  8 ++++++++
 keyboards/ai03/vega/rules.mk                     | 13 -------------
 .../voyager60_alps/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/ai03/voyager60_alps/rules.mk           | 12 ------------
 keyboards/akb/eb46/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/akb/eb46/rules.mk                      | 12 ------------
 keyboards/akb/raine/{info.json => keyboard.json} |  8 ++++++++
 keyboards/akb/raine/rules.mk                     | 12 ------------
 keyboards/alf/dc60/{info.json => keyboard.json}  | 10 ++++++++++
 keyboards/alf/dc60/rules.mk                      | 12 ------------
 keyboards/alf/x2/{info.json => keyboard.json}    | 10 ++++++++++
 keyboards/alf/x2/rules.mk                        | 12 ------------
 .../swift65/hotswap/{info.json => keyboard.json} |  9 +++++++++
 keyboards/alfredslab/swift65/hotswap/rules.mk    | 12 ------------
 .../swift65/solder/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/alfredslab/swift65/solder/rules.mk     | 12 ------------
 keyboards/alpha/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/alpha/rules.mk                         | 12 ------------
 keyboards/alpine65/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/alpine65/rules.mk                      | 13 -------------
 keyboards/alps64/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/alps64/rules.mk                        |  9 ---------
 keyboards/amag23/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/amag23/rules.mk                        | 10 ----------
 .../amj40/{info.json => keyboard.json}           | 10 ++++++++++
 keyboards/amjkeyboard/amj40/rules.mk             | 12 ------------
 .../amj60/{info.json => keyboard.json}           | 10 ++++++++++
 keyboards/amjkeyboard/amj60/rules.mk             | 12 ------------
 .../amj84/{info.json => keyboard.json}           |  9 +++++++++
 keyboards/amjkeyboard/amj84/rules.mk             | 12 ------------
 .../amjpad/{info.json => keyboard.json}          |  9 +++++++++
 keyboards/amjkeyboard/amjpad/rules.mk            | 12 ------------
 .../anavi/macropad8/{info.json => keyboard.json} | 11 +++++++++++
 keyboards/anavi/macropad8/rules.mk               | 13 -------------
 keyboards/ano/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/ano/rules.mk                           | 13 -------------
 .../anomalykb/a65i/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/anomalykb/a65i/rules.mk                | 12 ------------
 keyboards/aos/tkl/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/aos/tkl/rules.mk                       | 12 ------------
 keyboards/aozora/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/aozora/rules.mk                        | 13 -------------
 .../aplx6/rev1/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/aplyard/aplx6/rev1/rules.mk            | 13 -------------
 .../aplx6/rev2/{info.json => keyboard.json}      | 11 +++++++++++
 keyboards/aplyard/aplx6/rev2/rules.mk            | 15 ---------------
 keyboards/ares/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/ares/rules.mk                          | 10 ----------
 keyboards/arisu/{info.json => keyboard.json}     |  8 ++++++++
 keyboards/arisu/rules.mk                         | 12 ------------
 .../1x4p1/{info.json => keyboard.json}           | 10 ++++++++++
 keyboards/arrayperipherals/1x4p1/rules.mk        | 14 --------------
 keyboards/ash1800/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/ash1800/rules.mk                       | 12 ------------
 keyboards/ash_xiix/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/ash_xiix/rules.mk                      | 12 ------------
 keyboards/atlas_65/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/atlas_65/rules.mk                      | 12 ------------
 keyboards/atomic/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/atomic/rules.mk                        | 12 ------------
 keyboards/atreus62/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/atreus62/rules.mk                      | 11 -----------
 keyboards/atset/at1/{info.json => keyboard.json} |  8 ++++++++
 keyboards/atset/at1/rules.mk                     | 12 ------------
 .../atset/at12/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/atset/at12/rules.mk                    | 12 ------------
 .../atset/at16/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/atset/at16/rules.mk                    | 12 ------------
 keyboards/atset/at3/{info.json => keyboard.json} |  8 ++++++++
 keyboards/atset/at3/rules.mk                     | 12 ------------
 keyboards/atset/at6/{info.json => keyboard.json} |  8 ++++++++
 keyboards/atset/at6/rules.mk                     | 12 ------------
 keyboards/atset/at9/{info.json => keyboard.json} |  8 ++++++++
 keyboards/atset/at9/rules.mk                     | 12 ------------
 keyboards/aves60/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/aves60/rules.mk                        | 12 ------------
 keyboards/aves65/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/aves65/rules.mk                        | 12 ------------
 .../{info.json => keyboard.json}                 |  8 ++++++++
 keyboards/axolstudio/foundation_gamma/rules.mk   | 12 ------------
 .../yeti/soldered/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/axolstudio/yeti/soldered/rules.mk      | 12 ------------
 .../b_sides/rev41lp/{info.json => keyboard.json} |  9 +++++++++
 keyboards/b_sides/rev41lp/rules.mk               | 12 ------------
 keyboards/bacca70/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/bacca70/rules.mk                       | 12 ------------
 keyboards/baguette/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/baguette/rules.mk                      | 12 ------------
 keyboards/bantam44/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/bantam44/rules.mk                      | 10 ----------
 keyboards/barracuda/{info.json => keyboard.json} |  8 ++++++++
 keyboards/barracuda/rules.mk                     | 12 ------------
 .../trifecta/{info.json => keyboard.json}        | 10 ++++++++++
 keyboards/basekeys/trifecta/rules.mk             | 14 --------------
 keyboards/beatervan/{info.json => keyboard.json} |  9 +++++++++
 keyboards/beatervan/rules.mk                     | 12 ------------
 keyboards/bfake/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/bfake/rules.mk                         | 10 ----------
 .../biacco42/meishi/{info.json => keyboard.json} |  8 ++++++++
 keyboards/biacco42/meishi/rules.mk               | 11 -----------
 .../meishi2/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/biacco42/meishi2/rules.mk              | 12 ------------
 .../binepad/bn003/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/binepad/bn003/rules.mk                 | 12 ------------
 keyboards/bioi/f60/{info.json => keyboard.json}  | 10 ++++++++++
 keyboards/bioi/f60/rules.mk                      | 12 ------------
 keyboards/blackplum/{info.json => keyboard.json} |  9 +++++++++
 keyboards/blackplum/rules.mk                     | 12 ------------
 .../blank/blank01/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/blank/blank01/rules.mk                 | 12 ------------
 keyboards/blaster75/{info.json => keyboard.json} |  8 ++++++++
 keyboards/blaster75/rules.mk                     | 13 -------------
 keyboards/blockey/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/blockey/rules.mk                       | 13 -------------
 .../bizarre/{info.json => keyboard.json}         |  9 +++++++++
 keyboards/boardrun/bizarre/rules.mk              | 12 ------------
 .../classic/{info.json => keyboard.json}         |  9 +++++++++
 keyboards/boardrun/classic/rules.mk              | 12 ------------
 keyboards/boardwalk/{info.json => keyboard.json} | 10 ++++++++++
 keyboards/boardwalk/rules.mk                     | 13 -------------
 keyboards/bobpad/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/bobpad/rules.mk                        | 14 --------------
 .../bolsa/bolsalice/{info.json => keyboard.json} |  9 +++++++++
 keyboards/bolsa/bolsalice/rules.mk               | 12 ------------
 .../bolsa/damapad/{info.json => keyboard.json}   | 10 ++++++++++
 keyboards/bolsa/damapad/rules.mk                 | 14 --------------
 keyboards/bop/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/bop/rules.mk                           | 13 -------------
 keyboards/boston/{info.json => keyboard.json}    | 11 +++++++++++
 keyboards/boston/rules.mk                        | 14 --------------
 .../fm2u/{info.json => keyboard.json}            |  8 ++++++++
 keyboards/botanicalkeyboards/fm2u/rules.mk       | 12 ------------
 keyboards/box75/{info.json => keyboard.json}     |  8 ++++++++
 keyboards/box75/rules.mk                         | 14 --------------
 .../four_banger/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/bpiphany/four_banger/rules.mk          | 12 ------------
 .../sixshooter/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/bpiphany/sixshooter/rules.mk           | 11 -----------
 .../bthlabs/geekpad/{info.json => keyboard.json} |  8 ++++++++
 keyboards/bthlabs/geekpad/rules.mk               | 12 ------------
 .../potato65/{info.json => keyboard.json}        |  9 +++++++++
 keyboards/buildakb/potato65/rules.mk             | 12 ------------
 .../potato65hs/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/buildakb/potato65hs/rules.mk           | 12 ------------
 .../potato65s/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/buildakb/potato65s/rules.mk            | 12 ------------
 .../cypher/rev6/{info.json => keyboard.json}     | 10 ++++++++++
 keyboards/cablecardesigns/cypher/rev6/rules.mk   | 12 ------------
 .../serpent65/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/caffeinated/serpent65/rules.mk         | 12 ------------
 .../adelie/{info.json => keyboard.json}          |  9 +++++++++
 keyboards/cannonkeys/adelie/rules.mk             | 12 ------------
 .../atlas/{info.json => keyboard.json}           |  9 +++++++++
 keyboards/cannonkeys/atlas/rules.mk              | 11 -----------
 .../atlas_alps/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/cannonkeys/atlas_alps/rules.mk         | 12 ------------
 .../chimera65/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/cannonkeys/chimera65/rules.mk          | 13 -------------
 .../hoodrowg/{info.json => keyboard.json}        |  9 +++++++++
 keyboards/cannonkeys/hoodrowg/rules.mk           | 12 ------------
 .../iron165/{info.json => keyboard.json}         |  9 +++++++++
 keyboards/cannonkeys/iron165/rules.mk            | 13 -------------
 .../nearfield/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/cannonkeys/nearfield/rules.mk          | 12 ------------
 .../ortho48/{info.json => keyboard.json}         | 11 +++++++++++
 keyboards/cannonkeys/ortho48/rules.mk            | 13 -------------
 .../ortho60/{info.json => keyboard.json}         | 11 +++++++++++
 keyboards/cannonkeys/ortho60/rules.mk            | 13 -------------
 .../ortho75/{info.json => keyboard.json}         | 12 ++++++++++++
 keyboards/cannonkeys/ortho75/rules.mk            | 14 --------------
 .../practice65/{info.json => keyboard.json}      | 11 +++++++++++
 keyboards/cannonkeys/practice65/rules.mk         | 13 -------------
 .../cu24/{info.json => keyboard.json}            | 10 ++++++++++
 keyboards/capsunlocked/cu24/rules.mk             | 12 ------------
 .../cu65/{info.json => keyboard.json}            |  8 ++++++++
 keyboards/capsunlocked/cu65/rules.mk             | 12 ------------
 .../cu7/{info.json => keyboard.json}             | 10 ++++++++++
 keyboards/capsunlocked/cu7/rules.mk              | 13 -------------
 .../cu80/v1/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/capsunlocked/cu80/v1/rules.mk          | 12 ------------
 keyboards/carbo65/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/carbo65/rules.mk                       | 13 -------------
 keyboards/catch22/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/catch22/rules.mk                       | 12 ------------
 .../cest73/tkm/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/cest73/tkm/rules.mk                    | 12 ------------
 keyboards/chalice/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/chalice/rules.mk                       | 12 ------------
 keyboards/chaos65/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/chaos65/rules.mk                       | 12 ------------
 .../charue/charon/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/charue/charon/rules.mk                 | 12 ------------
 .../sunsetter/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/charue/sunsetter/rules.mk              | 13 -------------
 .../sunsetter_r2/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/charue/sunsetter_r2/rules.mk           | 12 ------------
 .../chavdai40/rev1/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/chavdai40/rev1/rules.mk                | 12 ------------
 .../chavdai40/rev2/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/chavdai40/rev2/rules.mk                | 12 ------------
 .../axon40/{info.json => keyboard.json}          |  9 +++++++++
 keyboards/checkerboards/axon40/rules.mk          | 12 ------------
 .../candybar_ortho/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/checkerboards/candybar_ortho/rules.mk  | 12 ------------
 .../g_idb60/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/checkerboards/g_idb60/rules.mk         | 12 ------------
 .../nop60/{info.json => keyboard.json}           | 10 ++++++++++
 keyboards/checkerboards/nop60/rules.mk           | 12 ------------
 .../plexus75/{info.json => keyboard.json}        | 10 ++++++++++
 keyboards/checkerboards/plexus75/rules.mk        | 13 -------------
 .../plexus75_he/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/checkerboards/plexus75_he/rules.mk     | 12 ------------
 .../pursuit40/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/checkerboards/pursuit40/rules.mk       | 12 ------------
 .../quark_lp/{info.json => keyboard.json}        |  9 +++++++++
 keyboards/checkerboards/quark_lp/rules.mk        | 13 -------------
 .../quark_plus/{info.json => keyboard.json}      | 11 +++++++++++
 keyboards/checkerboards/quark_plus/rules.mk      | 13 -------------
 .../ud40_ortho_alt/{info.json => keyboard.json}  | 10 ++++++++++
 keyboards/checkerboards/ud40_ortho_alt/rules.mk  | 14 --------------
 .../cb1800/{info.json => keyboard.json}          |  9 +++++++++
 keyboards/cherrybstudio/cb1800/rules.mk          | 12 ------------
 .../cb65/{info.json => keyboard.json}            |  9 +++++++++
 keyboards/cherrybstudio/cb65/rules.mk            | 13 -------------
 .../cb87/{info.json => keyboard.json}            | 10 ++++++++++
 keyboards/cherrybstudio/cb87/rules.mk            | 12 ------------
 .../cb87rgb/{info.json => keyboard.json}         |  9 +++++++++
 keyboards/cherrybstudio/cb87rgb/rules.mk         | 14 --------------
 .../cb87v2/{info.json => keyboard.json}          | 10 ++++++++++
 keyboards/cherrybstudio/cb87v2/rules.mk          | 12 ------------
 .../curiosity/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/cheshire/curiosity/rules.mk            | 11 -----------
 .../chickenman/ciel/{info.json => keyboard.json} |  8 ++++++++
 keyboards/chickenman/ciel/rules.mk               | 12 ------------
 .../chlx/merro60/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/chlx/merro60/rules.mk                  | 12 ------------
 .../chocofly/v1/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/chocofly/v1/rules.mk                   | 14 --------------
 keyboards/chocv/{info.json => keyboard.json}     |  8 ++++++++
 keyboards/chocv/rules.mk                         | 12 ------------
 keyboards/ck60i/{info.json => keyboard.json}     | 10 ++++++++++
 keyboards/ck60i/rules.mk                         | 13 -------------
 .../handwire_101/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/ckeys/handwire_101/rules.mk            | 11 -----------
 .../ckeys/nakey/{info.json => keyboard.json}     |  8 ++++++++
 keyboards/ckeys/nakey/rules.mk                   | 11 -----------
 .../ckeys/obelus/{info.json => keyboard.json}    | 10 ++++++++++
 keyboards/ckeys/obelus/rules.mk                  | 12 ------------
 .../ckeys/thedora/{info.json => keyboard.json}   | 11 +++++++++++
 keyboards/ckeys/thedora/rules.mk                 | 15 ---------------
 .../washington/{info.json => keyboard.json}      | 11 +++++++++++
 keyboards/ckeys/washington/rules.mk              | 14 --------------
 .../bookerboard/{info.json => keyboard.json}     |  8 ++++++++
 keyboards/clawsome/bookerboard/rules.mk          | 12 ------------
 .../clawsome/coupe/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/clawsome/coupe/rules.mk                | 12 ------------
 .../clawsome/doodle/{info.json => keyboard.json} |  8 ++++++++
 keyboards/clawsome/doodle/rules.mk               | 12 ------------
 .../fightpad/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/clawsome/fightpad/rules.mk             | 12 ------------
 .../gamebuddy/v1_0/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/clawsome/gamebuddy/v1_0/rules.mk       | 12 ------------
 .../gamebuddy/v1_m/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/clawsome/gamebuddy/v1_m/rules.mk       | 12 ------------
 .../hatchback/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/clawsome/hatchback/rules.mk            | 12 ------------
 .../luggage_rack/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/clawsome/luggage_rack/rules.mk         | 12 ------------
 .../numeros/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/clawsome/numeros/rules.mk              | 12 ------------
 .../roadster/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/clawsome/roadster/rules.mk             | 12 ------------
 .../clawsome/sedan/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/clawsome/sedan/rules.mk                | 12 ------------
 .../sidekick/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/clawsome/sidekick/rules.mk             | 12 ------------
 .../clawsome/suv/{info.json => keyboard.json}    |  8 ++++++++
 keyboards/clawsome/suv/rules.mk                  | 12 ------------
 .../fuji65/{info.json => keyboard.json}          |  9 +++++++++
 keyboards/cmm_studio/fuji65/rules.mk             | 15 ---------------
 .../saka68/hotswap/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/cmm_studio/saka68/hotswap/rules.mk     | 12 ------------
 .../saka68/solder/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/cmm_studio/saka68/solder/rules.mk      | 12 ------------
 .../cordillera/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/coarse/cordillera/rules.mk             | 13 -------------
 .../coban/pad3a/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/coban/pad3a/rules.mk                   |  3 ---
 keyboards/compound/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/compound/rules.mk                      | 12 ------------
 keyboards/contender/{info.json => keyboard.json} |  9 +++++++++
 keyboards/contender/rules.mk                     | 12 ------------
 .../a1200/miss1200/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/converter/a1200/miss1200/rules.mk      | 12 ------------
 .../a1200/teensy2pp/{info.json => keyboard.json} |  8 ++++++++
 keyboards/converter/a1200/teensy2pp/rules.mk     | 12 ------------
 .../{info.json => keyboard.json}                 |  8 ++++++++
 keyboards/converter/numeric_keypad_iie/rules.mk  | 12 ------------
 keyboards/cool836a/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/cool836a/rules.mk                      | 12 ------------
 .../click_pad_v1/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/copenhagen_click/click_pad_v1/rules.mk | 12 ------------
 .../discipad/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/coseyfannitutti/discipad/rules.mk      | 12 ------------
 .../mullet/{info.json => keyboard.json}          |  9 +++++++++
 keyboards/coseyfannitutti/mullet/rules.mk        | 12 ------------
 .../mulletpad/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/coseyfannitutti/mulletpad/rules.mk     | 12 ------------
 .../romeo/{info.json => keyboard.json}           |  8 ++++++++
 keyboards/coseyfannitutti/romeo/rules.mk         | 12 ------------
 keyboards/cosmo65/{info.json => keyboard.json}   |  9 +++++++++
 keyboards/cosmo65/rules.mk                       | 12 ------------
 .../bloomer/v2/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/cozykeys/bloomer/v2/rules.mk           | 12 ------------
 .../bloomer/v3/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/cozykeys/bloomer/v3/rules.mk           | 12 ------------
 .../speedo/v2/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/cozykeys/speedo/v2/rules.mk            | 12 ------------
 keyboards/craftwalk/{info.json => keyboard.json} |  9 +++++++++
 keyboards/craftwalk/rules.mk                     | 12 ------------
 keyboards/crawlpad/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/crawlpad/rules.mk                      | 12 ------------
 .../{info.json => keyboard.json}                 |  9 +++++++++
 keyboards/crazy_keyboard_68/rules.mk             | 12 ------------
 keyboards/crbn/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/crbn/rules.mk                          | 13 -------------
 .../glacier/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/creatkeebs/glacier/rules.mk            | 12 ------------
 .../thera/{info.json => keyboard.json}           |  8 ++++++++
 keyboards/creatkeebs/thera/rules.mk              | 12 ------------
 keyboards/crin/{info.json => keyboard.json}      |  8 ++++++++
 keyboards/crin/rules.mk                          | 13 -------------
 .../borsdorf/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/cutie_club/borsdorf/rules.mk           | 12 ------------
 .../giant_macro_pad/{info.json => keyboard.json} |  8 ++++++++
 keyboards/cutie_club/giant_macro_pad/rules.mk    | 12 ------------
 .../keebcats/denis/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/cutie_club/keebcats/denis/rules.mk     | 12 ------------
 .../keebcats/dougal/{info.json => keyboard.json} |  8 ++++++++
 keyboards/cutie_club/keebcats/dougal/rules.mk    | 12 ------------
 .../novus/{info.json => keyboard.json}           |  8 ++++++++
 keyboards/cutie_club/novus/rules.mk              | 12 ------------
 .../wraith/{info.json => keyboard.json}          |  8 ++++++++
 keyboards/cutie_club/wraith/rules.mk             | 12 ------------
 keyboards/cx60/{info.json => keyboard.json}      | 10 ++++++++++
 keyboards/cx60/rules.mk                          | 12 ------------
 .../macro25/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/cybergear/macro25/rules.mk             | 12 ------------
 .../dailycraft/owl8/{info.json => keyboard.json} |  9 +++++++++
 keyboards/dailycraft/owl8/rules.mk               | 14 --------------
 .../stickey4/{info.json => keyboard.json}        |  9 +++++++++
 keyboards/dailycraft/stickey4/rules.mk           | 14 --------------
 .../daji/seis_cinco/{info.json => keyboard.json} |  8 ++++++++
 keyboards/daji/seis_cinco/rules.mk               | 13 -------------
 keyboards/db/db63/{info.json => keyboard.json}   | 10 ++++++++++
 keyboards/db/db63/rules.mk                       | 10 ----------
 .../flatbread60/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/delikeeb/flatbread60/rules.mk          | 12 ------------
 .../vaguettelite/{info.json => keyboard.json}    | 10 ++++++++++
 keyboards/delikeeb/vaguettelite/rules.mk         | 13 -------------
 .../vaneela/{info.json => keyboard.json}         |  8 ++++++++
 keyboards/delikeeb/vaneela/rules.mk              | 12 ------------
 .../vaneelaex/{info.json => keyboard.json}       |  8 ++++++++
 keyboards/delikeeb/vaneelaex/rules.mk            | 12 ------------
 keyboards/deltapad/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/deltapad/rules.mk                      | 12 ------------
 keyboards/demiurge/{info.json => keyboard.json}  |  9 +++++++++
 keyboards/demiurge/rules.mk                      | 12 ------------
 keyboards/deng/djam/{info.json => keyboard.json} | 10 ++++++++++
 keyboards/deng/djam/rules.mk                     | 13 -------------
 .../fnrow/v1/{info.json => keyboard.json}        |  8 ++++++++
 keyboards/dinofizz/fnrow/v1/rules.mk             | 13 -------------
 keyboards/dk60/{info.json => keyboard.json}      | 10 ++++++++++
 keyboards/dk60/rules.mk                          | 14 --------------
 .../dm9records/lain/{info.json => keyboard.json} |  8 ++++++++
 keyboards/dm9records/lain/rules.mk               | 12 ------------
 .../dmqdesign/spin/{info.json => keyboard.json}  | 11 +++++++++++
 keyboards/dmqdesign/spin/rules.mk                | 14 --------------
 keyboards/do60/{info.json => keyboard.json}      | 10 ++++++++++
 keyboards/do60/rules.mk                          | 12 ------------
 keyboards/doio/kb30/{info.json => keyboard.json} | 11 +++++++++++
 keyboards/doio/kb30/rules.mk                     | 15 ---------------
 .../budget96/{info.json => keyboard.json}        | 10 ++++++++++
 keyboards/donutcables/budget96/rules.mk          | 10 ----------
 .../scrabblepad/{info.json => keyboard.json}     |  8 ++++++++
 keyboards/donutcables/scrabblepad/rules.mk       | 12 ------------
 .../duckboard/{info.json => keyboard.json}       | 11 +++++++++++
 keyboards/doodboard/duckboard/rules.mk           | 15 ---------------
 .../duckboard_r2/{info.json => keyboard.json}    | 11 +++++++++++
 keyboards/doodboard/duckboard_r2/rules.mk        | 15 ---------------
 .../doro67/multi/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/doro67/multi/rules.mk                  | 12 ------------
 .../doro67/regular/{info.json => keyboard.json}  |  8 ++++++++
 keyboards/doro67/regular/rules.mk                | 12 ------------
 .../doro67/rgb/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/doro67/rgb/rules.mk                    | 13 -------------
 .../daisy/{info.json => keyboard.json}           | 10 ++++++++++
 keyboards/draytronics/daisy/rules.mk             | 13 -------------
 .../elise/{info.json => keyboard.json}           |  9 +++++++++
 keyboards/draytronics/elise/rules.mk             | 12 ------------
 .../elise_v2/{info.json => keyboard.json}        |  9 +++++++++
 keyboards/draytronics/elise_v2/rules.mk          | 12 ------------
 .../dtisaac/cg108/{info.json => keyboard.json}   |  8 ++++++++
 keyboards/dtisaac/cg108/rules.mk                 | 12 ------------
 .../dtisaac01/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/dtisaac/dtisaac01/rules.mk             | 12 ------------
 keyboards/dyz/dyz40/{info.json => keyboard.json} | 10 ++++++++++
 keyboards/dyz/dyz40/rules.mk                     | 13 -------------
 keyboards/dyz/dyz60/{info.json => keyboard.json} | 10 ++++++++++
 keyboards/dyz/dyz60/rules.mk                     | 13 -------------
 .../dyz/dyz60_hs/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/dyz/dyz60_hs/rules.mk                  | 13 -------------
 .../dyz/dyz_tkl/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/dyz/dyz_tkl/rules.mk                   | 12 ------------
 .../dyz/selka40/{info.json => keyboard.json}     | 10 ++++++++++
 keyboards/dyz/selka40/rules.mk                   | 13 -------------
 .../dyz/synthesis60/{info.json => keyboard.json} | 10 ++++++++++
 keyboards/dyz/synthesis60/rules.mk               | 14 --------------
 keyboards/dz60/{info.json => keyboard.json}      | 10 ++++++++++
 keyboards/dz60/rules.mk                          | 12 ------------
 .../dztech/bocc/{info.json => keyboard.json}     | 10 ++++++++++
 keyboards/dztech/bocc/rules.mk                   | 12 ------------
 .../dztech/duo_s/{info.json => keyboard.json}    |  9 +++++++++
 keyboards/dztech/duo_s/rules.mk                  | 12 ------------
 .../dz65rgb/v1/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/dztech/dz65rgb/v1/rules.mk             | 13 -------------
 .../dz65rgb/v2/{info.json => keyboard.json}      |  9 +++++++++
 keyboards/dztech/dz65rgb/v2/rules.mk             | 13 -------------
 .../dztech/dz96/{info.json => keyboard.json}     |  9 +++++++++
 keyboards/dztech/dz96/rules.mk                   | 12 ------------
 .../endless80/{info.json => keyboard.json}       |  9 +++++++++
 keyboards/dztech/endless80/rules.mk              | 12 ------------
 484 files changed, 2147 insertions(+), 2980 deletions(-)
 rename keyboards/abstract/ellipse/rev1/{info.json => keyboard.json} (85%)
 delete mode 100644 keyboards/abstract/ellipse/rev1/rules.mk
 rename keyboards/acekeyboard/titan60/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/acekeyboard/titan60/rules.mk
 rename keyboards/acheron/apollo/87h/delta/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/acheron/apollo/87h/delta/rules.mk
 rename keyboards/acheron/apollo/87htsc/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/acheron/apollo/87htsc/rules.mk
 rename keyboards/acheron/apollo/88htsc/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/acheron/apollo/88htsc/rules.mk
 rename keyboards/acheron/arctic/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/acheron/arctic/rules.mk
 rename keyboards/acheron/austin/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/acheron/austin/rules.mk
 rename keyboards/acheron/elongate/delta/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/acheron/elongate/delta/rules.mk
 rename keyboards/acheron/keebspcb/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/acheron/keebspcb/rules.mk
 rename keyboards/acheron/lasgweloth/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/acheron/lasgweloth/rules.mk
 rename keyboards/ada/ada1800mini/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/ada/ada1800mini/rules.mk
 rename keyboards/ada/infinity81/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/ada/infinity81/rules.mk
 rename keyboards/adelheid/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/adelheid/rules.mk
 rename keyboards/adpenrose/akemipad/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/adpenrose/akemipad/rules.mk
 rename keyboards/adpenrose/kintsugi/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/adpenrose/kintsugi/rules.mk
 rename keyboards/adpenrose/obi/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/adpenrose/obi/rules.mk
 rename keyboards/adpenrose/shisaku/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/adpenrose/shisaku/rules.mk
 rename keyboards/aeboards/aegis/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/aeboards/aegis/rules.mk
 rename keyboards/afternoonlabs/gust/rev1/{info.json => keyboard.json} (84%)
 delete mode 100644 keyboards/afternoonlabs/gust/rev1/rules.mk
 rename keyboards/ai03/andromeda/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/ai03/andromeda/rules.mk
 rename keyboards/ai03/equinox/rev0/{info.json => keyboard.json} (65%)
 delete mode 100644 keyboards/ai03/equinox/rev0/rules.mk
 rename keyboards/ai03/equinox/rev1/{info.json => keyboard.json} (63%)
 delete mode 100644 keyboards/ai03/equinox/rev1/rules.mk
 rename keyboards/ai03/lunar/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/ai03/lunar/rules.mk
 rename keyboards/ai03/polaris/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/ai03/polaris/rules.mk
 rename keyboards/ai03/quasar/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/ai03/quasar/rules.mk
 rename keyboards/ai03/soyuz/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/ai03/soyuz/rules.mk
 rename keyboards/ai03/vega/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/ai03/vega/rules.mk
 rename keyboards/ai03/voyager60_alps/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/ai03/voyager60_alps/rules.mk
 rename keyboards/akb/eb46/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/akb/eb46/rules.mk
 rename keyboards/akb/raine/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/akb/raine/rules.mk
 rename keyboards/alf/dc60/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/alf/dc60/rules.mk
 rename keyboards/alf/x2/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/alf/x2/rules.mk
 rename keyboards/alfredslab/swift65/hotswap/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/alfredslab/swift65/hotswap/rules.mk
 rename keyboards/alfredslab/swift65/solder/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/alfredslab/swift65/solder/rules.mk
 rename keyboards/alpha/{info.json => keyboard.json} (92%)
 delete mode 100755 keyboards/alpha/rules.mk
 rename keyboards/alpine65/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/alpine65/rules.mk
 rename keyboards/alps64/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/alps64/rules.mk
 rename keyboards/amag23/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/amag23/rules.mk
 rename keyboards/amjkeyboard/amj40/{info.json => keyboard.json} (97%)
 delete mode 100755 keyboards/amjkeyboard/amj40/rules.mk
 rename keyboards/amjkeyboard/amj60/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/amjkeyboard/amj60/rules.mk
 rename keyboards/amjkeyboard/amj84/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/amjkeyboard/amj84/rules.mk
 rename keyboards/amjkeyboard/amjpad/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/amjkeyboard/amjpad/rules.mk
 rename keyboards/anavi/macropad8/{info.json => keyboard.json} (85%)
 delete mode 100644 keyboards/anavi/macropad8/rules.mk
 rename keyboards/ano/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/ano/rules.mk
 rename keyboards/anomalykb/a65i/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/anomalykb/a65i/rules.mk
 rename keyboards/aos/tkl/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/aos/tkl/rules.mk
 rename keyboards/aozora/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/aozora/rules.mk
 rename keyboards/aplyard/aplx6/rev1/{info.json => keyboard.json} (76%)
 delete mode 100644 keyboards/aplyard/aplx6/rev1/rules.mk
 rename keyboards/aplyard/aplx6/rev2/{info.json => keyboard.json} (76%)
 delete mode 100644 keyboards/aplyard/aplx6/rev2/rules.mk
 rename keyboards/ares/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/ares/rules.mk
 rename keyboards/arisu/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/arisu/rules.mk
 rename keyboards/arrayperipherals/1x4p1/{info.json => keyboard.json} (80%)
 delete mode 100644 keyboards/arrayperipherals/1x4p1/rules.mk
 rename keyboards/ash1800/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/ash1800/rules.mk
 rename keyboards/ash_xiix/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/ash_xiix/rules.mk
 rename keyboards/atlas_65/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/atlas_65/rules.mk
 rename keyboards/atomic/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/atomic/rules.mk
 rename keyboards/atreus62/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/atreus62/rules.mk
 rename keyboards/atset/at1/{info.json => keyboard.json} (74%)
 delete mode 100644 keyboards/atset/at1/rules.mk
 rename keyboards/atset/at12/{info.json => keyboard.json} (86%)
 delete mode 100644 keyboards/atset/at12/rules.mk
 rename keyboards/atset/at16/{info.json => keyboard.json} (88%)
 delete mode 100644 keyboards/atset/at16/rules.mk
 rename keyboards/atset/at3/{info.json => keyboard.json} (78%)
 delete mode 100644 keyboards/atset/at3/rules.mk
 rename keyboards/atset/at6/{info.json => keyboard.json} (82%)
 delete mode 100644 keyboards/atset/at6/rules.mk
 rename keyboards/atset/at9/{info.json => keyboard.json} (84%)
 delete mode 100644 keyboards/atset/at9/rules.mk
 rename keyboards/aves60/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/aves60/rules.mk
 rename keyboards/aves65/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/aves65/rules.mk
 rename keyboards/axolstudio/foundation_gamma/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/axolstudio/foundation_gamma/rules.mk
 rename keyboards/axolstudio/yeti/soldered/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/axolstudio/yeti/soldered/rules.mk
 rename keyboards/b_sides/rev41lp/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/b_sides/rev41lp/rules.mk
 rename keyboards/bacca70/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/bacca70/rules.mk
 rename keyboards/baguette/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/baguette/rules.mk
 rename keyboards/bantam44/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/bantam44/rules.mk
 rename keyboards/barracuda/{info.json => keyboard.json} (92%)
 delete mode 100644 keyboards/barracuda/rules.mk
 rename keyboards/basekeys/trifecta/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/basekeys/trifecta/rules.mk
 rename keyboards/beatervan/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/beatervan/rules.mk
 rename keyboards/bfake/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/bfake/rules.mk
 rename keyboards/biacco42/meishi/{info.json => keyboard.json} (79%)
 delete mode 100644 keyboards/biacco42/meishi/rules.mk
 rename keyboards/biacco42/meishi2/{info.json => keyboard.json} (80%)
 delete mode 100644 keyboards/biacco42/meishi2/rules.mk
 rename keyboards/binepad/bn003/{info.json => keyboard.json} (79%)
 delete mode 100644 keyboards/binepad/bn003/rules.mk
 rename keyboards/bioi/f60/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/bioi/f60/rules.mk
 rename keyboards/blackplum/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/blackplum/rules.mk
 rename keyboards/blank/blank01/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/blank/blank01/rules.mk
 rename keyboards/blaster75/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/blaster75/rules.mk
 rename keyboards/blockey/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/blockey/rules.mk
 rename keyboards/boardrun/bizarre/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/boardrun/bizarre/rules.mk
 rename keyboards/boardrun/classic/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/boardrun/classic/rules.mk
 rename keyboards/boardwalk/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/boardwalk/rules.mk
 rename keyboards/bobpad/{info.json => keyboard.json} (84%)
 delete mode 100644 keyboards/bobpad/rules.mk
 rename keyboards/bolsa/bolsalice/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/bolsa/bolsalice/rules.mk
 rename keyboards/bolsa/damapad/{info.json => keyboard.json} (91%)
 delete mode 100644 keyboards/bolsa/damapad/rules.mk
 rename keyboards/bop/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/bop/rules.mk
 rename keyboards/boston/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/boston/rules.mk
 rename keyboards/botanicalkeyboards/fm2u/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/botanicalkeyboards/fm2u/rules.mk
 rename keyboards/box75/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/box75/rules.mk
 rename keyboards/bpiphany/four_banger/{info.json => keyboard.json} (85%)
 delete mode 100644 keyboards/bpiphany/four_banger/rules.mk
 rename keyboards/bpiphany/sixshooter/{info.json => keyboard.json} (82%)
 delete mode 100644 keyboards/bpiphany/sixshooter/rules.mk
 rename keyboards/bthlabs/geekpad/{info.json => keyboard.json} (85%)
 delete mode 100644 keyboards/bthlabs/geekpad/rules.mk
 rename keyboards/buildakb/potato65/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/buildakb/potato65/rules.mk
 rename keyboards/buildakb/potato65hs/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/buildakb/potato65hs/rules.mk
 rename keyboards/buildakb/potato65s/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/buildakb/potato65s/rules.mk
 rename keyboards/cablecardesigns/cypher/rev6/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/cablecardesigns/cypher/rev6/rules.mk
 rename keyboards/caffeinated/serpent65/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/caffeinated/serpent65/rules.mk
 rename keyboards/cannonkeys/adelie/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/cannonkeys/adelie/rules.mk
 rename keyboards/cannonkeys/atlas/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/cannonkeys/atlas/rules.mk
 rename keyboards/cannonkeys/atlas_alps/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/cannonkeys/atlas_alps/rules.mk
 rename keyboards/cannonkeys/chimera65/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/cannonkeys/chimera65/rules.mk
 rename keyboards/cannonkeys/hoodrowg/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/cannonkeys/hoodrowg/rules.mk
 rename keyboards/cannonkeys/iron165/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/cannonkeys/iron165/rules.mk
 rename keyboards/cannonkeys/nearfield/{info.json => keyboard.json} (98%)
 delete mode 100755 keyboards/cannonkeys/nearfield/rules.mk
 rename keyboards/cannonkeys/ortho48/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/cannonkeys/ortho48/rules.mk
 rename keyboards/cannonkeys/ortho60/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/cannonkeys/ortho60/rules.mk
 rename keyboards/cannonkeys/ortho75/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/cannonkeys/ortho75/rules.mk
 rename keyboards/cannonkeys/practice65/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/cannonkeys/practice65/rules.mk
 rename keyboards/capsunlocked/cu24/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/capsunlocked/cu24/rules.mk
 rename keyboards/capsunlocked/cu65/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/capsunlocked/cu65/rules.mk
 rename keyboards/capsunlocked/cu7/{info.json => keyboard.json} (86%)
 delete mode 100644 keyboards/capsunlocked/cu7/rules.mk
 rename keyboards/capsunlocked/cu80/v1/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/capsunlocked/cu80/v1/rules.mk
 rename keyboards/carbo65/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/carbo65/rules.mk
 rename keyboards/catch22/{info.json => keyboard.json} (91%)
 delete mode 100644 keyboards/catch22/rules.mk
 rename keyboards/cest73/tkm/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/cest73/tkm/rules.mk
 rename keyboards/chalice/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/chalice/rules.mk
 rename keyboards/chaos65/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/chaos65/rules.mk
 rename keyboards/charue/charon/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/charue/charon/rules.mk
 rename keyboards/charue/sunsetter/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/charue/sunsetter/rules.mk
 rename keyboards/charue/sunsetter_r2/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/charue/sunsetter_r2/rules.mk
 rename keyboards/chavdai40/rev1/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/chavdai40/rev1/rules.mk
 rename keyboards/chavdai40/rev2/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/chavdai40/rev2/rules.mk
 rename keyboards/checkerboards/axon40/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/checkerboards/axon40/rules.mk
 rename keyboards/checkerboards/candybar_ortho/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/checkerboards/candybar_ortho/rules.mk
 rename keyboards/checkerboards/g_idb60/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/checkerboards/g_idb60/rules.mk
 rename keyboards/checkerboards/nop60/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/checkerboards/nop60/rules.mk
 rename keyboards/checkerboards/plexus75/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/checkerboards/plexus75/rules.mk
 rename keyboards/checkerboards/plexus75_he/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/checkerboards/plexus75_he/rules.mk
 rename keyboards/checkerboards/pursuit40/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/checkerboards/pursuit40/rules.mk
 rename keyboards/checkerboards/quark_lp/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/checkerboards/quark_lp/rules.mk
 rename keyboards/checkerboards/quark_plus/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/checkerboards/quark_plus/rules.mk
 rename keyboards/checkerboards/ud40_ortho_alt/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/checkerboards/ud40_ortho_alt/rules.mk
 rename keyboards/cherrybstudio/cb1800/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/cherrybstudio/cb1800/rules.mk
 rename keyboards/cherrybstudio/cb65/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/cherrybstudio/cb65/rules.mk
 rename keyboards/cherrybstudio/cb87/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/cherrybstudio/cb87/rules.mk
 rename keyboards/cherrybstudio/cb87rgb/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/cherrybstudio/cb87rgb/rules.mk
 rename keyboards/cherrybstudio/cb87v2/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/cherrybstudio/cb87v2/rules.mk
 rename keyboards/cheshire/curiosity/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/cheshire/curiosity/rules.mk
 rename keyboards/chickenman/ciel/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/chickenman/ciel/rules.mk
 rename keyboards/chlx/merro60/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/chlx/merro60/rules.mk
 rename keyboards/chocofly/v1/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/chocofly/v1/rules.mk
 rename keyboards/chocv/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/chocv/rules.mk
 rename keyboards/ck60i/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/ck60i/rules.mk
 rename keyboards/ckeys/handwire_101/{info.json => keyboard.json} (89%)
 delete mode 100755 keyboards/ckeys/handwire_101/rules.mk
 rename keyboards/ckeys/nakey/{info.json => keyboard.json} (89%)
 delete mode 100644 keyboards/ckeys/nakey/rules.mk
 rename keyboards/ckeys/obelus/{info.json => keyboard.json} (86%)
 delete mode 100644 keyboards/ckeys/obelus/rules.mk
 rename keyboards/ckeys/thedora/{info.json => keyboard.json} (88%)
 delete mode 100755 keyboards/ckeys/thedora/rules.mk
 rename keyboards/ckeys/washington/{info.json => keyboard.json} (82%)
 delete mode 100644 keyboards/ckeys/washington/rules.mk
 rename keyboards/clawsome/bookerboard/{info.json => keyboard.json} (86%)
 delete mode 100644 keyboards/clawsome/bookerboard/rules.mk
 rename keyboards/clawsome/coupe/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/clawsome/coupe/rules.mk
 rename keyboards/clawsome/doodle/{info.json => keyboard.json} (82%)
 delete mode 100644 keyboards/clawsome/doodle/rules.mk
 rename keyboards/clawsome/fightpad/{info.json => keyboard.json} (86%)
 delete mode 100644 keyboards/clawsome/fightpad/rules.mk
 rename keyboards/clawsome/gamebuddy/v1_0/{info.json => keyboard.json} (91%)
 delete mode 100644 keyboards/clawsome/gamebuddy/v1_0/rules.mk
 rename keyboards/clawsome/gamebuddy/v1_m/{info.json => keyboard.json} (91%)
 delete mode 100644 keyboards/clawsome/gamebuddy/v1_m/rules.mk
 rename keyboards/clawsome/hatchback/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/clawsome/hatchback/rules.mk
 rename keyboards/clawsome/luggage_rack/{info.json => keyboard.json} (87%)
 delete mode 100644 keyboards/clawsome/luggage_rack/rules.mk
 rename keyboards/clawsome/numeros/{info.json => keyboard.json} (89%)
 delete mode 100644 keyboards/clawsome/numeros/rules.mk
 rename keyboards/clawsome/roadster/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/clawsome/roadster/rules.mk
 rename keyboards/clawsome/sedan/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/clawsome/sedan/rules.mk
 rename keyboards/clawsome/sidekick/{info.json => keyboard.json} (91%)
 delete mode 100644 keyboards/clawsome/sidekick/rules.mk
 rename keyboards/clawsome/suv/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/clawsome/suv/rules.mk
 rename keyboards/cmm_studio/fuji65/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/cmm_studio/fuji65/rules.mk
 rename keyboards/cmm_studio/saka68/hotswap/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/cmm_studio/saka68/hotswap/rules.mk
 rename keyboards/cmm_studio/saka68/solder/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/cmm_studio/saka68/solder/rules.mk
 rename keyboards/coarse/cordillera/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/coarse/cordillera/rules.mk
 rename keyboards/coban/pad3a/{info.json => keyboard.json} (80%)
 delete mode 100644 keyboards/coban/pad3a/rules.mk
 rename keyboards/compound/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/compound/rules.mk
 rename keyboards/contender/{info.json => keyboard.json} (92%)
 delete mode 100644 keyboards/contender/rules.mk
 rename keyboards/converter/a1200/miss1200/{info.json => keyboard.json} (75%)
 delete mode 100644 keyboards/converter/a1200/miss1200/rules.mk
 rename keyboards/converter/a1200/teensy2pp/{info.json => keyboard.json} (74%)
 delete mode 100644 keyboards/converter/a1200/teensy2pp/rules.mk
 rename keyboards/converter/numeric_keypad_iie/{info.json => keyboard.json} (91%)
 delete mode 100644 keyboards/converter/numeric_keypad_iie/rules.mk
 rename keyboards/cool836a/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/cool836a/rules.mk
 rename keyboards/copenhagen_click/click_pad_v1/{info.json => keyboard.json} (76%)
 delete mode 100755 keyboards/copenhagen_click/click_pad_v1/rules.mk
 rename keyboards/coseyfannitutti/discipad/{info.json => keyboard.json} (89%)
 delete mode 100644 keyboards/coseyfannitutti/discipad/rules.mk
 rename keyboards/coseyfannitutti/mullet/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/coseyfannitutti/mullet/rules.mk
 rename keyboards/coseyfannitutti/mulletpad/{info.json => keyboard.json} (89%)
 delete mode 100644 keyboards/coseyfannitutti/mulletpad/rules.mk
 rename keyboards/coseyfannitutti/romeo/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/coseyfannitutti/romeo/rules.mk
 rename keyboards/cosmo65/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/cosmo65/rules.mk
 rename keyboards/cozykeys/bloomer/v2/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/cozykeys/bloomer/v2/rules.mk
 rename keyboards/cozykeys/bloomer/v3/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/cozykeys/bloomer/v3/rules.mk
 rename keyboards/cozykeys/speedo/v2/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/cozykeys/speedo/v2/rules.mk
 rename keyboards/craftwalk/{info.json => keyboard.json} (89%)
 delete mode 100644 keyboards/craftwalk/rules.mk
 rename keyboards/crawlpad/{info.json => keyboard.json} (91%)
 delete mode 100755 keyboards/crawlpad/rules.mk
 rename keyboards/crazy_keyboard_68/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/crazy_keyboard_68/rules.mk
 rename keyboards/crbn/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/crbn/rules.mk
 rename keyboards/creatkeebs/glacier/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/creatkeebs/glacier/rules.mk
 rename keyboards/creatkeebs/thera/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/creatkeebs/thera/rules.mk
 rename keyboards/crin/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/crin/rules.mk
 rename keyboards/cutie_club/borsdorf/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/cutie_club/borsdorf/rules.mk
 rename keyboards/cutie_club/giant_macro_pad/{info.json => keyboard.json} (99%)
 delete mode 100755 keyboards/cutie_club/giant_macro_pad/rules.mk
 rename keyboards/cutie_club/keebcats/denis/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/cutie_club/keebcats/denis/rules.mk
 rename keyboards/cutie_club/keebcats/dougal/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/cutie_club/keebcats/dougal/rules.mk
 rename keyboards/cutie_club/novus/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/cutie_club/novus/rules.mk
 rename keyboards/cutie_club/wraith/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/cutie_club/wraith/rules.mk
 rename keyboards/cx60/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/cx60/rules.mk
 rename keyboards/cybergear/macro25/{info.json => keyboard.json} (86%)
 delete mode 100644 keyboards/cybergear/macro25/rules.mk
 rename keyboards/dailycraft/owl8/{info.json => keyboard.json} (86%)
 delete mode 100644 keyboards/dailycraft/owl8/rules.mk
 rename keyboards/dailycraft/stickey4/{info.json => keyboard.json} (79%)
 delete mode 100644 keyboards/dailycraft/stickey4/rules.mk
 rename keyboards/daji/seis_cinco/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/daji/seis_cinco/rules.mk
 rename keyboards/db/db63/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/db/db63/rules.mk
 rename keyboards/delikeeb/flatbread60/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/delikeeb/flatbread60/rules.mk
 rename keyboards/delikeeb/vaguettelite/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/delikeeb/vaguettelite/rules.mk
 rename keyboards/delikeeb/vaneela/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/delikeeb/vaneela/rules.mk
 rename keyboards/delikeeb/vaneelaex/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/delikeeb/vaneelaex/rules.mk
 rename keyboards/deltapad/{info.json => keyboard.json} (92%)
 delete mode 100644 keyboards/deltapad/rules.mk
 rename keyboards/demiurge/{info.json => keyboard.json} (98%)
 delete mode 100755 keyboards/demiurge/rules.mk
 rename keyboards/deng/djam/{info.json => keyboard.json} (89%)
 delete mode 100644 keyboards/deng/djam/rules.mk
 rename keyboards/dinofizz/fnrow/v1/{info.json => keyboard.json} (87%)
 delete mode 100644 keyboards/dinofizz/fnrow/v1/rules.mk
 rename keyboards/dk60/{info.json => keyboard.json} (94%)
 delete mode 100644 keyboards/dk60/rules.mk
 rename keyboards/dm9records/lain/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/dm9records/lain/rules.mk
 rename keyboards/dmqdesign/spin/{info.json => keyboard.json} (86%)
 delete mode 100644 keyboards/dmqdesign/spin/rules.mk
 rename keyboards/do60/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/do60/rules.mk
 rename keyboards/doio/kb30/{info.json => keyboard.json} (93%)
 delete mode 100644 keyboards/doio/kb30/rules.mk
 rename keyboards/donutcables/budget96/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/donutcables/budget96/rules.mk
 rename keyboards/donutcables/scrabblepad/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/donutcables/scrabblepad/rules.mk
 rename keyboards/doodboard/duckboard/{info.json => keyboard.json} (87%)
 delete mode 100644 keyboards/doodboard/duckboard/rules.mk
 rename keyboards/doodboard/duckboard_r2/{info.json => keyboard.json} (88%)
 delete mode 100644 keyboards/doodboard/duckboard_r2/rules.mk
 rename keyboards/doro67/multi/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/doro67/multi/rules.mk
 rename keyboards/doro67/regular/{info.json => keyboard.json} (95%)
 delete mode 100644 keyboards/doro67/regular/rules.mk
 rename keyboards/doro67/rgb/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/doro67/rgb/rules.mk
 rename keyboards/draytronics/daisy/{info.json => keyboard.json} (89%)
 delete mode 100644 keyboards/draytronics/daisy/rules.mk
 rename keyboards/draytronics/elise/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/draytronics/elise/rules.mk
 rename keyboards/draytronics/elise_v2/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/draytronics/elise_v2/rules.mk
 rename keyboards/dtisaac/cg108/{info.json => keyboard.json} (97%)
 delete mode 100644 keyboards/dtisaac/cg108/rules.mk
 rename keyboards/dtisaac/dtisaac01/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/dtisaac/dtisaac01/rules.mk
 rename keyboards/dyz/dyz40/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/dyz/dyz40/rules.mk
 rename keyboards/dyz/dyz60/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/dyz/dyz60/rules.mk
 rename keyboards/dyz/dyz60_hs/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/dyz/dyz60_hs/rules.mk
 rename keyboards/dyz/dyz_tkl/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/dyz/dyz_tkl/rules.mk
 rename keyboards/dyz/selka40/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/dyz/selka40/rules.mk
 rename keyboards/dyz/synthesis60/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/dyz/synthesis60/rules.mk
 rename keyboards/dz60/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/dz60/rules.mk
 rename keyboards/dztech/bocc/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/dztech/bocc/rules.mk
 rename keyboards/dztech/duo_s/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/dztech/duo_s/rules.mk
 rename keyboards/dztech/dz65rgb/v1/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/dztech/dz65rgb/v1/rules.mk
 rename keyboards/dztech/dz65rgb/v2/{info.json => keyboard.json} (96%)
 delete mode 100644 keyboards/dztech/dz65rgb/v2/rules.mk
 rename keyboards/dztech/dz96/{info.json => keyboard.json} (99%)
 delete mode 100644 keyboards/dztech/dz96/rules.mk
 rename keyboards/dztech/endless80/{info.json => keyboard.json} (98%)
 delete mode 100644 keyboards/dztech/endless80/rules.mk

diff --git a/keyboards/abstract/ellipse/rev1/info.json b/keyboards/abstract/ellipse/rev1/keyboard.json
similarity index 85%
rename from keyboards/abstract/ellipse/rev1/info.json
rename to keyboards/abstract/ellipse/rev1/keyboard.json
index 341b522926..31a17301a7 100644
--- a/keyboards/abstract/ellipse/rev1/info.json
+++ b/keyboards/abstract/ellipse/rev1/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "B6", "B5"],
         "rows": ["D3", "C7"]
diff --git a/keyboards/abstract/ellipse/rev1/rules.mk b/keyboards/abstract/ellipse/rev1/rules.mk
deleted file mode 100644
index e0bcc61952..0000000000
--- a/keyboards/abstract/ellipse/rev1/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
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes		# Enable support for rotary encoders
diff --git a/keyboards/acekeyboard/titan60/info.json b/keyboards/acekeyboard/titan60/keyboard.json
similarity index 99%
rename from keyboards/acekeyboard/titan60/info.json
rename to keyboards/acekeyboard/titan60/keyboard.json
index 8f11e1df07..3111e1e9d7 100644
--- a/keyboards/acekeyboard/titan60/info.json
+++ b/keyboards/acekeyboard/titan60/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x5449",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
       "cols": ["F4", "F7", "F5", "F6", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3"],
       "rows": ["B1", "B2", "B3", "F0", "F1"]
diff --git a/keyboards/acekeyboard/titan60/rules.mk b/keyboards/acekeyboard/titan60/rules.mk
deleted file mode 100644
index 63a5839b10..0000000000
--- a/keyboards/acekeyboard/titan60/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/acheron/apollo/87h/delta/info.json b/keyboards/acheron/apollo/87h/delta/keyboard.json
similarity index 97%
rename from keyboards/acheron/apollo/87h/delta/info.json
rename to keyboards/acheron/apollo/87h/delta/keyboard.json
index 729512839f..c2d5e20692 100644
--- a/keyboards/acheron/apollo/87h/delta/info.json
+++ b/keyboards/acheron/apollo/87h/delta/keyboard.json
@@ -59,6 +59,15 @@
         "driver": "ws2812",
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["C8", "C9", "A8", "A10", "C7", "C6", "B14", "B12", "B10", "B1", "C5", "C4", "A7", "B0", "C11", "A3", "B4"],
         "rows": ["B3", "D2", "C12", "A6", "A5", "A4"]
diff --git a/keyboards/acheron/apollo/87h/delta/rules.mk b/keyboards/acheron/apollo/87h/delta/rules.mk
deleted file mode 100644
index 723724b7aa..0000000000
--- a/keyboards/acheron/apollo/87h/delta/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = 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/acheron/apollo/87htsc/info.json b/keyboards/acheron/apollo/87htsc/keyboard.json
similarity index 97%
rename from keyboards/acheron/apollo/87htsc/info.json
rename to keyboards/acheron/apollo/87htsc/keyboard.json
index 91e2cb320e..5f7d30e65a 100644
--- a/keyboards/acheron/apollo/87htsc/info.json
+++ b/keyboards/acheron/apollo/87htsc/keyboard.json
@@ -63,6 +63,15 @@
         "driver": "ws2812",
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["C8", "C9", "A8", "A10", "C7", "C6", "B14", "B12", "B10", "B1", "C5", "C4", "A7", "B0", "C11", "A3", "B4"],
         "rows": ["B3", "D2", "C12", "A6", "A5", "A4"]
diff --git a/keyboards/acheron/apollo/87htsc/rules.mk b/keyboards/acheron/apollo/87htsc/rules.mk
deleted file mode 100644
index 723724b7aa..0000000000
--- a/keyboards/acheron/apollo/87htsc/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = 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/acheron/apollo/88htsc/info.json b/keyboards/acheron/apollo/88htsc/keyboard.json
similarity index 97%
rename from keyboards/acheron/apollo/88htsc/info.json
rename to keyboards/acheron/apollo/88htsc/keyboard.json
index 17c12b3beb..e29300019c 100644
--- a/keyboards/acheron/apollo/88htsc/info.json
+++ b/keyboards/acheron/apollo/88htsc/keyboard.json
@@ -63,6 +63,15 @@
         "driver": "ws2812",
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["C8", "C9", "A8", "A10", "C7", "C6", "B14", "B12", "B10", "B1", "C5", "C4", "A7", "B0", "C11", "A3", "B4"],
         "rows": ["B3", "D2", "C12", "A6", "A5", "A4"]
diff --git a/keyboards/acheron/apollo/88htsc/rules.mk b/keyboards/acheron/apollo/88htsc/rules.mk
deleted file mode 100644
index 723724b7aa..0000000000
--- a/keyboards/acheron/apollo/88htsc/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = 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/acheron/arctic/info.json b/keyboards/acheron/arctic/keyboard.json
similarity index 97%
rename from keyboards/acheron/arctic/info.json
rename to keyboards/acheron/arctic/keyboard.json
index 22eb5763bb..e8c9e92f61 100644
--- a/keyboards/acheron/arctic/info.json
+++ b/keyboards/acheron/arctic/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x4152",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B0", "A5", "A4", "A3", "A2", "A1", "A0", "F1", "F0", "C15", "C14", "C13", "B9", "B8"],
         "rows": ["B7", "B6", "A6", "A7", "B1"]
diff --git a/keyboards/acheron/arctic/rules.mk b/keyboards/acheron/arctic/rules.mk
deleted file mode 100644
index 7f4f202a1b..0000000000
--- a/keyboards/acheron/arctic/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 = yes        # 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/acheron/austin/info.json b/keyboards/acheron/austin/keyboard.json
similarity index 99%
rename from keyboards/acheron/austin/info.json
rename to keyboards/acheron/austin/keyboard.json
index d36258fb92..6c467a7da0 100755
--- a/keyboards/acheron/austin/info.json
+++ b/keyboards/acheron/austin/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x4175",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B10", "B11", "B12", "B13", "B14", "B15", "A8", "A9", "A10", "A5", "A15", "B3", "B4", "B5", "B8", "A3", "C15", "C14", "F1"],
         "rows": ["C13", "A4", "A7", "B0", "B1", "B2"]
diff --git a/keyboards/acheron/austin/rules.mk b/keyboards/acheron/austin/rules.mk
deleted file mode 100644
index a5089d51a5..0000000000
--- a/keyboards/acheron/austin/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/acheron/elongate/delta/info.json b/keyboards/acheron/elongate/delta/keyboard.json
similarity index 95%
rename from keyboards/acheron/elongate/delta/info.json
rename to keyboards/acheron/elongate/delta/keyboard.json
index 19991ecb86..33fc5b55dd 100644
--- a/keyboards/acheron/elongate/delta/info.json
+++ b/keyboards/acheron/elongate/delta/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x454D",
         "device_version": "0.0.2"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["A10", "A9", "A8", "B14", "B12", "B11", "B10", "B2", "B1", "A7", "A5", "B9", "B8", "B7", "B6"],
         "rows": ["B3", "A15", "B0", "B4", "B5"]
diff --git a/keyboards/acheron/elongate/delta/rules.mk b/keyboards/acheron/elongate/delta/rules.mk
deleted file mode 100644
index 3d5cb57ad5..0000000000
--- a/keyboards/acheron/elongate/delta/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/acheron/keebspcb/info.json b/keyboards/acheron/keebspcb/keyboard.json
similarity index 95%
rename from keyboards/acheron/keebspcb/info.json
rename to keyboards/acheron/keebspcb/keyboard.json
index 9609611059..1017cf47ec 100644
--- a/keyboards/acheron/keebspcb/info.json
+++ b/keyboards/acheron/keebspcb/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x4B45",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B12", "A1", "A0", "F1", "F0", "C15", "C14", "C13", "B9", "B8", "B7", "B6", "B5"],
         "rows": ["B4", "B3", "A2", "A3", "A4"]
diff --git a/keyboards/acheron/keebspcb/rules.mk b/keyboards/acheron/keebspcb/rules.mk
deleted file mode 100644
index 5356b24d77..0000000000
--- a/keyboards/acheron/keebspcb/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = 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/acheron/lasgweloth/info.json b/keyboards/acheron/lasgweloth/keyboard.json
similarity index 97%
rename from keyboards/acheron/lasgweloth/info.json
rename to keyboards/acheron/lasgweloth/keyboard.json
index 653af34452..ccdf9d6f30 100644
--- a/keyboards/acheron/lasgweloth/info.json
+++ b/keyboards/acheron/lasgweloth/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x7641",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B12", "A2", "A1", "A0", "F1", "F0", "C15", "C14", "C13", "A7", "A6", "A5", "A4", "B7"],
         "rows": ["B9", "B8", "A3", "B0", "B1"]
diff --git a/keyboards/acheron/lasgweloth/rules.mk b/keyboards/acheron/lasgweloth/rules.mk
deleted file mode 100644
index 5b6b0c9299..0000000000
--- a/keyboards/acheron/lasgweloth/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 = yes        # 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
-ENCODER_ENABLE = no
-
diff --git a/keyboards/ada/ada1800mini/info.json b/keyboards/ada/ada1800mini/keyboard.json
similarity index 96%
rename from keyboards/ada/ada1800mini/info.json
rename to keyboards/ada/ada1800mini/keyboard.json
index 22cac5ade4..80e8ee64aa 100644
--- a/keyboards/ada/ada1800mini/info.json
+++ b/keyboards/ada/ada1800mini/keyboard.json
@@ -30,6 +30,15 @@
             "twinkle": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": false,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "B3", "B2", "B1"],
         "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/ada/ada1800mini/rules.mk b/keyboards/ada/ada1800mini/rules.mk
deleted file mode 100644
index 7d5bd18e35..0000000000
--- a/keyboards/ada/ada1800mini/rules.mk
+++ /dev/null
@@ -1,16 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = no        # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = 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
-
-
-# generated by KBFirmware JSON to QMK Parser
-# https://noroadsleft.github.io/kbf_qmk_converter/
diff --git a/keyboards/ada/infinity81/info.json b/keyboards/ada/infinity81/keyboard.json
similarity index 96%
rename from keyboards/ada/infinity81/info.json
rename to keyboards/ada/infinity81/keyboard.json
index f56b6f92d1..934bd6fca2 100644
--- a/keyboards/ada/infinity81/info.json
+++ b/keyboards/ada/infinity81/keyboard.json
@@ -29,6 +29,15 @@
     "ws2812": {
         "pin": "D0"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F5", "F1", "F4"],
         "rows": ["B3", "B2", "B1", "B0", "F6", "B7"]
diff --git a/keyboards/ada/infinity81/rules.mk b/keyboards/ada/infinity81/rules.mk
deleted file mode 100644
index 951dd07d6e..0000000000
--- a/keyboards/ada/infinity81/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/adelheid/info.json b/keyboards/adelheid/keyboard.json
similarity index 96%
rename from keyboards/adelheid/info.json
rename to keyboards/adelheid/keyboard.json
index fa203432c1..e066e5d5f1 100644
--- a/keyboards/adelheid/info.json
+++ b/keyboards/adelheid/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0xAD78",
         "device_version": "0.0.2"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "E6", "C7", "F6", "B6", "D4", "B1", "B0", "B7", "B5", "B4", "D7", "D6", "B3"],
         "rows": ["D0", "F4", "D1", "D2", "D3", "D5", "F7"]
diff --git a/keyboards/adelheid/rules.mk b/keyboards/adelheid/rules.mk
deleted file mode 100644
index a1d35866e5..0000000000
--- a/keyboards/adelheid/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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/adpenrose/akemipad/info.json b/keyboards/adpenrose/akemipad/keyboard.json
similarity index 94%
rename from keyboards/adpenrose/akemipad/info.json
rename to keyboards/adpenrose/akemipad/keyboard.json
index 28ac8d6d4c..50003fbb5f 100644
--- a/keyboards/adpenrose/akemipad/info.json
+++ b/keyboards/adpenrose/akemipad/keyboard.json
@@ -20,6 +20,17 @@
         "max_brightness": 175,
         "sleep": true
     },
+    "features": {
+        "audio": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["D3", "D2", "F5", "F6", "B2"],
         "rows": ["D4", "D7", "E6", "B6", "B4", "B5"]
diff --git a/keyboards/adpenrose/akemipad/rules.mk b/keyboards/adpenrose/akemipad/rules.mk
deleted file mode 100644
index 084dbaec05..0000000000
--- a/keyboards/adpenrose/akemipad/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = yes          # Audio output
-RGB_MATRIX_ENABLE = yes
-ENCODER_ENABLE = yes
diff --git a/keyboards/adpenrose/kintsugi/info.json b/keyboards/adpenrose/kintsugi/keyboard.json
similarity index 95%
rename from keyboards/adpenrose/kintsugi/info.json
rename to keyboards/adpenrose/kintsugi/keyboard.json
index 42cc69ed7f..46504298f8 100644
--- a/keyboards/adpenrose/kintsugi/info.json
+++ b/keyboards/adpenrose/kintsugi/keyboard.json
@@ -28,6 +28,17 @@
     "ws2812": {
         "pin": "F1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "F7", "B1", "B3", "B2", "B6", "F0"],
         "rows": ["B0", "E6", "D7", "C6", "D4", "D2", "F4", "F5", "B5", "B4"]
diff --git a/keyboards/adpenrose/kintsugi/rules.mk b/keyboards/adpenrose/kintsugi/rules.mk
deleted file mode 100644
index 864f929c81..0000000000
--- a/keyboards/adpenrose/kintsugi/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no      	# Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = 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		    # Encoder functionality
-OLED_ENABLE = yes           # OLED functionality
diff --git a/keyboards/adpenrose/obi/info.json b/keyboards/adpenrose/obi/keyboard.json
similarity index 97%
rename from keyboards/adpenrose/obi/info.json
rename to keyboards/adpenrose/obi/keyboard.json
index d11e00a50e..8c1428ca81 100644
--- a/keyboards/adpenrose/obi/info.json
+++ b/keyboards/adpenrose/obi/keyboard.json
@@ -27,6 +27,16 @@
     "ws2812": {
         "pin": "F7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "B7", "B6", "B4", "B5", "D6", "D5", "D3", "D7", "D4", "D2", "D1", "D0", "B0"],
         "rows": ["F4", "F5", "C7", "C6"]
diff --git a/keyboards/adpenrose/obi/rules.mk b/keyboards/adpenrose/obi/rules.mk
deleted file mode 100644
index eef937e03a..0000000000
--- a/keyboards/adpenrose/obi/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes		    # Encoder functionality
diff --git a/keyboards/adpenrose/shisaku/info.json b/keyboards/adpenrose/shisaku/keyboard.json
similarity index 94%
rename from keyboards/adpenrose/shisaku/info.json
rename to keyboards/adpenrose/shisaku/keyboard.json
index 5ccc7e1d11..1382ee3b62 100644
--- a/keyboards/adpenrose/shisaku/info.json
+++ b/keyboards/adpenrose/shisaku/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0003",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D1", "C3", "C4", "D4", "C0", "C1", "C2"],
         "rows": ["B2", "B0", "B1", "D0", "B4", "D6", "B3", "D7"]
diff --git a/keyboards/adpenrose/shisaku/rules.mk b/keyboards/adpenrose/shisaku/rules.mk
deleted file mode 100644
index 0fa7711516..0000000000
--- a/keyboards/adpenrose/shisaku/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
\ No newline at end of file
diff --git a/keyboards/aeboards/aegis/info.json b/keyboards/aeboards/aegis/keyboard.json
similarity index 99%
rename from keyboards/aeboards/aegis/info.json
rename to keyboards/aeboards/aegis/keyboard.json
index 823e45c8e2..26414ba55a 100644
--- a/keyboards/aeboards/aegis/info.json
+++ b/keyboards/aeboards/aegis/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0807",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["C7", "C6", "B7", "D2", "D3", "B3", "B2", "B1", "B0"],
         "rows": ["F5", "F6", "E6", "F7", "D1", "D0", "D6", "D4", "B4", "D7", "B6", "B5"]
diff --git a/keyboards/aeboards/aegis/rules.mk b/keyboards/aeboards/aegis/rules.mk
deleted file mode 100644
index 29eb5c8fbe..0000000000
--- a/keyboards/aeboards/aegis/rules.mk
+++ /dev/null
@@ -1,11 +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
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/afternoonlabs/gust/rev1/info.json b/keyboards/afternoonlabs/gust/rev1/keyboard.json
similarity index 84%
rename from keyboards/afternoonlabs/gust/rev1/info.json
rename to keyboards/afternoonlabs/gust/rev1/keyboard.json
index 4cfac9dc59..93ad60ad7d 100644
--- a/keyboards/afternoonlabs/gust/rev1/info.json
+++ b/keyboards/afternoonlabs/gust/rev1/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0002",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D1", "D2", "D3"],
         "rows": ["F5", "F4", "D0"]
diff --git a/keyboards/afternoonlabs/gust/rev1/rules.mk b/keyboards/afternoonlabs/gust/rev1/rules.mk
deleted file mode 100644
index b48a43e89f..0000000000
--- a/keyboards/afternoonlabs/gust/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 = 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
\ No newline at end of file
diff --git a/keyboards/ai03/andromeda/info.json b/keyboards/ai03/andromeda/keyboard.json
similarity index 96%
rename from keyboards/ai03/andromeda/info.json
rename to keyboards/ai03/andromeda/keyboard.json
index fb3cf0d78d..5a9bf32ef1 100644
--- a/keyboards/ai03/andromeda/info.json
+++ b/keyboards/ai03/andromeda/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x000A",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6", "B5", "B8", "B9"],
         "rows": ["B4", "B3", "A15", "A3", "A4", "A5"]
diff --git a/keyboards/ai03/andromeda/rules.mk b/keyboards/ai03/andromeda/rules.mk
deleted file mode 100644
index 7f4f202a1b..0000000000
--- a/keyboards/ai03/andromeda/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 = yes        # 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/ai03/equinox/rev0/info.json b/keyboards/ai03/equinox/rev0/keyboard.json
similarity index 65%
rename from keyboards/ai03/equinox/rev0/info.json
rename to keyboards/ai03/equinox/rev0/keyboard.json
index 396f50c376..e38fada333 100644
--- a/keyboards/ai03/equinox/rev0/info.json
+++ b/keyboards/ai03/equinox/rev0/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["C4", "B7", "C6", "C7", "B6", "B5", "B4", "B3", "B2", "B1", "B0", "D6"],
         "rows": ["D3", "C5", "D4", "D5"]
diff --git a/keyboards/ai03/equinox/rev0/rules.mk b/keyboards/ai03/equinox/rev0/rules.mk
deleted file mode 100644
index 5e28d2cc45..0000000000
--- a/keyboards/ai03/equinox/rev0/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 = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/ai03/equinox/rev1/info.json b/keyboards/ai03/equinox/rev1/keyboard.json
similarity index 63%
rename from keyboards/ai03/equinox/rev1/info.json
rename to keyboards/ai03/equinox/rev1/keyboard.json
index 9c0727f7ba..590a84b31c 100644
--- a/keyboards/ai03/equinox/rev1/info.json
+++ b/keyboards/ai03/equinox/rev1/keyboard.json
@@ -1,4 +1,13 @@
 {
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D1", "D2", "C6", "C7", "B6", "B5", "B4", "B3", "B2", "B1", "B0", "D6"],
         "rows": ["D3", "C5", "D4", "D5"]
diff --git a/keyboards/ai03/equinox/rev1/rules.mk b/keyboards/ai03/equinox/rev1/rules.mk
deleted file mode 100644
index 5e28d2cc45..0000000000
--- a/keyboards/ai03/equinox/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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/ai03/lunar/info.json b/keyboards/ai03/lunar/keyboard.json
similarity index 96%
rename from keyboards/ai03/lunar/info.json
rename to keyboards/ai03/lunar/keyboard.json
index 6e7845b136..8a5bc14576 100644
--- a/keyboards/ai03/lunar/info.json
+++ b/keyboards/ai03/lunar/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"],
         "rows": ["B3", "D0", "D1", "D2", "D3"]
diff --git a/keyboards/ai03/lunar/rules.mk b/keyboards/ai03/lunar/rules.mk
deleted file mode 100644
index 0a85fffb85..0000000000
--- a/keyboards/ai03/lunar/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 = 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/ai03/polaris/info.json b/keyboards/ai03/polaris/keyboard.json
similarity index 98%
rename from keyboards/ai03/polaris/info.json
rename to keyboards/ai03/polaris/keyboard.json
index dca6df3dba..169118a0cf 100644
--- a/keyboards/ai03/polaris/info.json
+++ b/keyboards/ai03/polaris/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x0002",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F7", "F5", "F6", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3"],
         "rows": ["B1", "B2", "B3", "F0", "F1"]
diff --git a/keyboards/ai03/polaris/rules.mk b/keyboards/ai03/polaris/rules.mk
deleted file mode 100644
index 4537738380..0000000000
--- a/keyboards/ai03/polaris/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 = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/ai03/quasar/info.json b/keyboards/ai03/quasar/keyboard.json
similarity index 96%
rename from keyboards/ai03/quasar/info.json
rename to keyboards/ai03/quasar/keyboard.json
index fc2d39cc3b..b0514f9e9a 100644
--- a/keyboards/ai03/quasar/info.json
+++ b/keyboards/ai03/quasar/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0010",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B0", "B1", "B2", "B3", "B7", "F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4"],
         "rows": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7"]
diff --git a/keyboards/ai03/quasar/rules.mk b/keyboards/ai03/quasar/rules.mk
deleted file mode 100644
index 3f2eac5940..0000000000
--- a/keyboards/ai03/quasar/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/ai03/soyuz/info.json b/keyboards/ai03/soyuz/keyboard.json
similarity index 93%
rename from keyboards/ai03/soyuz/info.json
rename to keyboards/ai03/soyuz/keyboard.json
index 0c1cd54810..61e8375dd1 100644
--- a/keyboards/ai03/soyuz/info.json
+++ b/keyboards/ai03/soyuz/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0018",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["F4", "B3", "D7", "B5"],
         "rows": ["D4", "C6", "B6", "E6", "B4"]
diff --git a/keyboards/ai03/soyuz/rules.mk b/keyboards/ai03/soyuz/rules.mk
deleted file mode 100644
index ed40609648..0000000000
--- a/keyboards/ai03/soyuz/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/ai03/vega/info.json b/keyboards/ai03/vega/keyboard.json
similarity index 99%
rename from keyboards/ai03/vega/info.json
rename to keyboards/ai03/vega/keyboard.json
index 35127edbc2..64eaf5eadd 100644
--- a/keyboards/ai03/vega/info.json
+++ b/keyboards/ai03/vega/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0015",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B5", "A3", "A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B0", "A7", "A6"],
         "rows": ["A1", "A2", "B3", "A15", "A10"]
diff --git a/keyboards/ai03/vega/rules.mk b/keyboards/ai03/vega/rules.mk
deleted file mode 100644
index 7f4f202a1b..0000000000
--- a/keyboards/ai03/vega/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 = yes        # 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/ai03/voyager60_alps/info.json b/keyboards/ai03/voyager60_alps/keyboard.json
similarity index 95%
rename from keyboards/ai03/voyager60_alps/info.json
rename to keyboards/ai03/voyager60_alps/keyboard.json
index 440f061432..9b8fa051b5 100644
--- a/keyboards/ai03/voyager60_alps/info.json
+++ b/keyboards/ai03/voyager60_alps/keyboard.json
@@ -17,6 +17,15 @@
     "ws2812": {
         "pin": "D2"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F7", "F5", "F6", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3"],
         "rows": ["B1", "B2", "B3", "F0", "F1"]
diff --git a/keyboards/ai03/voyager60_alps/rules.mk b/keyboards/ai03/voyager60_alps/rules.mk
deleted file mode 100644
index b851d0ab39..0000000000
--- a/keyboards/ai03/voyager60_alps/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/akb/eb46/info.json b/keyboards/akb/eb46/keyboard.json
similarity index 94%
rename from keyboards/akb/eb46/info.json
rename to keyboards/akb/eb46/keyboard.json
index fafd42cd90..ec00eaa44e 100644
--- a/keyboards/akb/eb46/info.json
+++ b/keyboards/akb/eb46/keyboard.json
@@ -7,6 +7,14 @@
         "pid": "0xFEED",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "C6"],
         "rows": ["B5", "B4", "D7", "B6"]
diff --git a/keyboards/akb/eb46/rules.mk b/keyboards/akb/eb46/rules.mk
deleted file mode 100644
index c58df49ea8..0000000000
--- a/keyboards/akb/eb46/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 = 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/akb/raine/info.json b/keyboards/akb/raine/keyboard.json
similarity index 96%
rename from keyboards/akb/raine/info.json
rename to keyboards/akb/raine/keyboard.json
index 71490b1e6a..f3631068fd 100644
--- a/keyboards/akb/raine/info.json
+++ b/keyboards/akb/raine/keyboard.json
@@ -7,6 +7,14 @@
         "pid": "0x6060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F6", "F5", "F4", "B1", "F1", "F0", "B3", "B7", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7"],
         "rows": ["E6", "C6", "F7", "B2", "B0"]
diff --git a/keyboards/akb/raine/rules.mk b/keyboards/akb/raine/rules.mk
deleted file mode 100644
index c58df49ea8..0000000000
--- a/keyboards/akb/raine/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 = 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/alf/dc60/info.json b/keyboards/alf/dc60/keyboard.json
similarity index 99%
rename from keyboards/alf/dc60/info.json
rename to keyboards/alf/dc60/keyboard.json
index e0aa59f44f..7fd360d726 100644
--- a/keyboards/alf/dc60/info.json
+++ b/keyboards/alf/dc60/keyboard.json
@@ -7,6 +7,16 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B5", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "C6", "C7", "F4", "F5", "F6", "F7"],
         "rows": ["B0", "B1", "B2", "B3", "B4"]
diff --git a/keyboards/alf/dc60/rules.mk b/keyboards/alf/dc60/rules.mk
deleted file mode 100644
index 16be45209b..0000000000
--- a/keyboards/alf/dc60/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 = yes        # 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
diff --git a/keyboards/alf/x2/info.json b/keyboards/alf/x2/keyboard.json
similarity index 98%
rename from keyboards/alf/x2/info.json
rename to keyboards/alf/x2/keyboard.json
index a7e76061f6..fe70097932 100644
--- a/keyboards/alf/x2/info.json
+++ b/keyboards/alf/x2/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x6060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4"],
         "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/alf/x2/rules.mk b/keyboards/alf/x2/rules.mk
deleted file mode 100644
index 3d5cb57ad5..0000000000
--- a/keyboards/alf/x2/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/alfredslab/swift65/hotswap/info.json b/keyboards/alfredslab/swift65/hotswap/keyboard.json
similarity index 96%
rename from keyboards/alfredslab/swift65/hotswap/info.json
rename to keyboards/alfredslab/swift65/hotswap/keyboard.json
index 5be2a3798c..7799374e7c 100644
--- a/keyboards/alfredslab/swift65/hotswap/info.json
+++ b/keyboards/alfredslab/swift65/hotswap/keyboard.json
@@ -29,6 +29,15 @@
     "ws2812": {
         "pin": "D2"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "C7", "C6", "B6", "B5", "B4", "D7", "D5", "D3", "D1"],
         "rows": ["B1", "B2", "B3", "D6", "D4"]
diff --git a/keyboards/alfredslab/swift65/hotswap/rules.mk b/keyboards/alfredslab/swift65/hotswap/rules.mk
deleted file mode 100644
index bb40a3ee66..0000000000
--- a/keyboards/alfredslab/swift65/hotswap/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
\ No newline at end of file
diff --git a/keyboards/alfredslab/swift65/solder/info.json b/keyboards/alfredslab/swift65/solder/keyboard.json
similarity index 99%
rename from keyboards/alfredslab/swift65/solder/info.json
rename to keyboards/alfredslab/swift65/solder/keyboard.json
index 83ca4d9b8a..3bd15e7496 100644
--- a/keyboards/alfredslab/swift65/solder/info.json
+++ b/keyboards/alfredslab/swift65/solder/keyboard.json
@@ -30,6 +30,15 @@
     "ws2812": {
         "pin": "D2"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "C7", "C6", "B6", "B5", "B4", "D7", "D5", "D3", "D1", "D0"],
         "rows": ["B1", "B2", "B3", "D4", "D6"]
diff --git a/keyboards/alfredslab/swift65/solder/rules.mk b/keyboards/alfredslab/swift65/solder/rules.mk
deleted file mode 100644
index 2697ebc6d5..0000000000
--- a/keyboards/alfredslab/swift65/solder/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 = 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/alpha/info.json b/keyboards/alpha/keyboard.json
similarity index 92%
rename from keyboards/alpha/info.json
rename to keyboards/alpha/keyboard.json
index 61f7f9d437..f708ad2b9f 100644
--- a/keyboards/alpha/info.json
+++ b/keyboards/alpha/keyboard.json
@@ -27,6 +27,15 @@
   "ws2812": {
     "pin": "F4"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["D7", "E6", "C6", "B6", "B2", "B3", "B1", "F7", "F6", "F5"],
     "rows": ["D4", "B4", "B5"]
diff --git a/keyboards/alpha/rules.mk b/keyboards/alpha/rules.mk
deleted file mode 100755
index ec53f47e70..0000000000
--- a/keyboards/alpha/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes	# Mouse keys
-EXTRAKEY_ENABLE = yes	# Audio control and System control
-CONSOLE_ENABLE = no	# Console for debug
-COMMAND_ENABLE = no    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no  # Enable keyboard backlight functionality
-AUDIO_ENABLE = no
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/alpine65/info.json b/keyboards/alpine65/keyboard.json
similarity index 96%
rename from keyboards/alpine65/info.json
rename to keyboards/alpine65/keyboard.json
index c0322f72b5..4fccb3c564 100644
--- a/keyboards/alpine65/info.json
+++ b/keyboards/alpine65/keyboard.json
@@ -28,6 +28,15 @@
     "ws2812": {
         "pin": "B15"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A9", "A8", "B14", "B12", "A10", "A0", "A1"],
         "rows": ["C14", "C15", "C13", "A2", "A3"]
diff --git a/keyboards/alpine65/rules.mk b/keyboards/alpine65/rules.mk
deleted file mode 100644
index 747e719be4..0000000000
--- a/keyboards/alpine65/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 = yes        # 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
-ENCODER_ENABLE = no
-
diff --git a/keyboards/alps64/info.json b/keyboards/alps64/keyboard.json
similarity index 99%
rename from keyboards/alps64/info.json
rename to keyboards/alps64/keyboard.json
index 87a141b53c..72f21d0c33 100644
--- a/keyboards/alps64/info.json
+++ b/keyboards/alps64/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x6464",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7"],
     "rows": ["D0", "D1", "D2", "D3", "D4", "D5", "D6", "C2"]
diff --git a/keyboards/alps64/rules.mk b/keyboards/alps64/rules.mk
deleted file mode 100644
index b07ffbcaaa..0000000000
--- a/keyboards/alps64/rules.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes	# Mouse keys
-EXTRAKEY_ENABLE = yes	# Audio control and System control
-CONSOLE_ENABLE = yes	# Console for debug
-COMMAND_ENABLE = yes    # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
diff --git a/keyboards/amag23/info.json b/keyboards/amag23/keyboard.json
similarity index 93%
rename from keyboards/amag23/info.json
rename to keyboards/amag23/keyboard.json
index fd8aa85bbb..ed37a36e54 100644
--- a/keyboards/amag23/info.json
+++ b/keyboards/amag23/keyboard.json
@@ -28,6 +28,15 @@
     "ws2812": {
         "driver": "i2c"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B0", "B1", "B2", "B3", "B4", "B5"],
         "rows": ["A0", "A1", "A2", "A3"]
diff --git a/keyboards/amag23/rules.mk b/keyboards/amag23/rules.mk
deleted file mode 100644
index 8bee1e931e..0000000000
--- a/keyboards/amag23/rules.mk
+++ /dev/null
@@ -1,10 +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
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
diff --git a/keyboards/amjkeyboard/amj40/info.json b/keyboards/amjkeyboard/amj40/keyboard.json
similarity index 97%
rename from keyboards/amjkeyboard/amj40/info.json
rename to keyboards/amjkeyboard/amj40/keyboard.json
index dca520375a..8ce166728c 100644
--- a/keyboards/amjkeyboard/amj40/info.json
+++ b/keyboards/amjkeyboard/amj40/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x6072",
         "device_version": "0.0.2"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F1", "F0", "E6", "C7", "C6", "B0", "D4", "B1", "B7", "B5", "B4", "D7"],
         "rows": ["F4", "F5", "F6", "F7"]
diff --git a/keyboards/amjkeyboard/amj40/rules.mk b/keyboards/amjkeyboard/amj40/rules.mk
deleted file mode 100755
index 3d5cb57ad5..0000000000
--- a/keyboards/amjkeyboard/amj40/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/amjkeyboard/amj60/info.json b/keyboards/amjkeyboard/amj60/keyboard.json
similarity index 98%
rename from keyboards/amjkeyboard/amj60/info.json
rename to keyboards/amjkeyboard/amj60/keyboard.json
index 7c626b5a5f..0b65c742aa 100644
--- a/keyboards/amjkeyboard/amj60/info.json
+++ b/keyboards/amjkeyboard/amj60/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x6066",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F1", "F0", "E6", "C7", "C6", "B0", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3"],
         "rows": ["F7", "F6", "F5", "F4", "D5"]
diff --git a/keyboards/amjkeyboard/amj60/rules.mk b/keyboards/amjkeyboard/amj60/rules.mk
deleted file mode 100644
index 262dfb657d..0000000000
--- a/keyboards/amjkeyboard/amj60/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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/amjkeyboard/amj84/info.json b/keyboards/amjkeyboard/amj84/keyboard.json
similarity index 99%
rename from keyboards/amjkeyboard/amj84/info.json
rename to keyboards/amjkeyboard/amj84/keyboard.json
index 85832229a3..217b685391 100644
--- a/keyboards/amjkeyboard/amj84/info.json
+++ b/keyboards/amjkeyboard/amj84/keyboard.json
@@ -9,6 +9,15 @@
         "device_version": "0.0.1",
         "force_nkro": true
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F1", "F0", "E6", "C7", "C6", "B0", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3", "D1"],
         "rows": ["D0", "F7", "F6", "F5", "F4", "D5"]
diff --git a/keyboards/amjkeyboard/amj84/rules.mk b/keyboards/amjkeyboard/amj84/rules.mk
deleted file mode 100644
index 254b0bc7bd..0000000000
--- a/keyboards/amjkeyboard/amj84/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/amjkeyboard/amjpad/info.json b/keyboards/amjkeyboard/amjpad/keyboard.json
similarity index 94%
rename from keyboards/amjkeyboard/amjpad/info.json
rename to keyboards/amjkeyboard/amjpad/keyboard.json
index fbaa2499d6..bd960d8c8a 100644
--- a/keyboards/amjkeyboard/amjpad/info.json
+++ b/keyboards/amjkeyboard/amjpad/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x6060",
     "device_version": "0.0.3"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": false,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": false,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["F1", "F0", "E6", "C7"],
     "rows": ["F7", "F6", "F5", "F4", "D5", "D0"]
diff --git a/keyboards/amjkeyboard/amjpad/rules.mk b/keyboards/amjkeyboard/amjpad/rules.mk
deleted file mode 100644
index cd5d6b66ea..0000000000
--- a/keyboards/amjkeyboard/amjpad/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 = yes    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-RGBLIGHT_ENABLE = no   # Enable keyboard underlight functionality
-BACKLIGHT_ENABLE = yes  # Enable keyboard backlight functionality
-AUDIO_ENABLE = no
diff --git a/keyboards/anavi/macropad8/info.json b/keyboards/anavi/macropad8/keyboard.json
similarity index 85%
rename from keyboards/anavi/macropad8/info.json
rename to keyboards/anavi/macropad8/keyboard.json
index 63f295069d..d70d3fa047 100644
--- a/keyboards/anavi/macropad8/info.json
+++ b/keyboards/anavi/macropad8/keyboard.json
@@ -35,6 +35,17 @@
   },
   "processor": "atmega32u4",
   "bootloader": "caterina",
+  "features": {
+    "backlight": true,
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "oled": true,
+    "rgblight": true
+  },
   "matrix_pins": {
     "direct": [
       ["D4", "F6", "B5", "E6"],
diff --git a/keyboards/anavi/macropad8/rules.mk b/keyboards/anavi/macropad8/rules.mk
deleted file mode 100644
index 63d200481c..0000000000
--- a/keyboards/anavi/macropad8/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 = yes       # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.
-OLED_ENABLE = yes
diff --git a/keyboards/ano/info.json b/keyboards/ano/keyboard.json
similarity index 96%
rename from keyboards/ano/info.json
rename to keyboards/ano/keyboard.json
index ce88965500..c522f816ce 100644
--- a/keyboards/ano/info.json
+++ b/keyboards/ano/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x0651",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "A5", "A6", "A7", "A8", "A15", "A2", "A1", "A0", "B8", "B13"],
         "rows": ["A4", "B14", "B15", "B9", "B10", "B11"]
diff --git a/keyboards/ano/rules.mk b/keyboards/ano/rules.mk
deleted file mode 100644
index f0a88209b6..0000000000
--- a/keyboards/ano/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
-ENCODER_ENABLE = yes
\ No newline at end of file
diff --git a/keyboards/anomalykb/a65i/info.json b/keyboards/anomalykb/a65i/keyboard.json
similarity index 99%
rename from keyboards/anomalykb/a65i/info.json
rename to keyboards/anomalykb/a65i/keyboard.json
index 553ad35daf..98015fcd72 100644
--- a/keyboards/anomalykb/a65i/info.json
+++ b/keyboards/anomalykb/a65i/keyboard.json
@@ -7,6 +7,14 @@
         "pid": "0x0004",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D7", "D6", "D4", "B4", "B6", "E6", "F1", "B7", "C6", "C7", "D5", "D3", "D2", "F0", "D1", "D0"],
         "rows": ["B3", "B2", "B1", "B0", "B5"]
diff --git a/keyboards/anomalykb/a65i/rules.mk b/keyboards/anomalykb/a65i/rules.mk
deleted file mode 100644
index 0df1feb181..0000000000
--- a/keyboards/anomalykb/a65i/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = 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/aos/tkl/info.json b/keyboards/aos/tkl/keyboard.json
similarity index 96%
rename from keyboards/aos/tkl/info.json
rename to keyboards/aos/tkl/keyboard.json
index 165344004b..730a262366 100644
--- a/keyboards/aos/tkl/info.json
+++ b/keyboards/aos/tkl/keyboard.json
@@ -28,6 +28,15 @@
             "twinkle": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B0", "B1", "B2", "B3", "F4", "F5", "F6", "F7", "B6", "B5", "D7", "B4", "D6", "F0", "D1", "C6", "D4"],
         "rows": ["D3", "D2", "B7", "F1", "C7", "D5"]
diff --git a/keyboards/aos/tkl/rules.mk b/keyboards/aos/tkl/rules.mk
deleted file mode 100644
index a927de843c..0000000000
--- a/keyboards/aos/tkl/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/aozora/info.json b/keyboards/aozora/keyboard.json
similarity index 98%
rename from keyboards/aozora/info.json
rename to keyboards/aozora/keyboard.json
index 21db981dab..6ce231680f 100644
--- a/keyboards/aozora/info.json
+++ b/keyboards/aozora/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xE86A",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "D2"],
         "rows": ["F6", "F5", "F4", "F1", "F0"]
diff --git a/keyboards/aozora/rules.mk b/keyboards/aozora/rules.mk
deleted file mode 100644
index 67d4dee2c7..0000000000
--- a/keyboards/aozora/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 = 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/aplyard/aplx6/rev1/info.json b/keyboards/aplyard/aplx6/rev1/keyboard.json
similarity index 76%
rename from keyboards/aplyard/aplx6/rev1/info.json
rename to keyboards/aplyard/aplx6/rev1/keyboard.json
index 943624fb8f..e7f59d12c6 100644
--- a/keyboards/aplyard/aplx6/rev1/info.json
+++ b/keyboards/aplyard/aplx6/rev1/keyboard.json
@@ -3,6 +3,15 @@
         "pid": "0x0030",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "unicode": true
+    },
     "matrix_pins": {
         "cols": ["F7", "B6", "F4"],
         "rows": ["E6", "B3"]
diff --git a/keyboards/aplyard/aplx6/rev1/rules.mk b/keyboards/aplyard/aplx6/rev1/rules.mk
deleted file mode 100644
index 879e2c47a3..0000000000
--- a/keyboards/aplyard/aplx6/rev1/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 = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-UNICODE_ENABLE = yes        # Unicode
diff --git a/keyboards/aplyard/aplx6/rev2/info.json b/keyboards/aplyard/aplx6/rev2/keyboard.json
similarity index 76%
rename from keyboards/aplyard/aplx6/rev2/info.json
rename to keyboards/aplyard/aplx6/rev2/keyboard.json
index 06e0296b68..7cd8d00544 100644
--- a/keyboards/aplyard/aplx6/rev2/info.json
+++ b/keyboards/aplyard/aplx6/rev2/keyboard.json
@@ -3,6 +3,17 @@
         "pid": "0x0040",
         "device_version": "0.0.2"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "oled": true,
+        "unicode": true
+    },
     "matrix_pins": {
         "cols": ["C6", "D7", "E6"],
         "rows": ["B4", "B5"]
diff --git a/keyboards/aplyard/aplx6/rev2/rules.mk b/keyboards/aplyard/aplx6/rev2/rules.mk
deleted file mode 100644
index bb653a97f2..0000000000
--- a/keyboards/aplyard/aplx6/rev2/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 = 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
-UNICODE_ENABLE = yes        # Unicode
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes        # Enable Support for Encoder
diff --git a/keyboards/ares/info.json b/keyboards/ares/keyboard.json
similarity index 99%
rename from keyboards/ares/info.json
rename to keyboards/ares/keyboard.json
index 125db97ed2..3894565702 100644
--- a/keyboards/ares/info.json
+++ b/keyboards/ares/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x422D",
         "device_version": "2.0.0"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2", "D7"],
         "rows": ["B0", "B1", "B2", "B3", "B4"]
diff --git a/keyboards/ares/rules.mk b/keyboards/ares/rules.mk
deleted file mode 100644
index ce73d877e7..0000000000
--- a/keyboards/ares/rules.mk
+++ /dev/null
@@ -1,10 +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
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
diff --git a/keyboards/arisu/info.json b/keyboards/arisu/keyboard.json
similarity index 96%
rename from keyboards/arisu/info.json
rename to keyboards/arisu/keyboard.json
index 4e59c2c211..af1cb819dc 100644
--- a/keyboards/arisu/info.json
+++ b/keyboards/arisu/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": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B0", "B7", "B5", "B4", "D7", "D6", "B3"],
         "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/arisu/rules.mk b/keyboards/arisu/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/arisu/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/arrayperipherals/1x4p1/info.json b/keyboards/arrayperipherals/1x4p1/keyboard.json
similarity index 80%
rename from keyboards/arrayperipherals/1x4p1/info.json
rename to keyboards/arrayperipherals/1x4p1/keyboard.json
index 6d450188c9..f9344e3538 100644
--- a/keyboards/arrayperipherals/1x4p1/info.json
+++ b/keyboards/arrayperipherals/1x4p1/keyboard.json
@@ -15,6 +15,16 @@
   },
   "processor": "atmega32u4",
   "bootloader": "caterina",
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "encoder": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "unicode": true
+  },
   "matrix_pins": {
     "direct": [
       ["C7", "B7", "D6", "F5", "F7"]
diff --git a/keyboards/arrayperipherals/1x4p1/rules.mk b/keyboards/arrayperipherals/1x4p1/rules.mk
deleted file mode 100644
index 125977e027..0000000000
--- a/keyboards/arrayperipherals/1x4p1/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
-UNICODE_ENABLE = yes
-ENCODER_ENABLE = yes
diff --git a/keyboards/ash1800/info.json b/keyboards/ash1800/keyboard.json
similarity index 97%
rename from keyboards/ash1800/info.json
rename to keyboards/ash1800/keyboard.json
index 658e76962d..9e60de6b34 100644
--- a/keyboards/ash1800/info.json
+++ b/keyboards/ash1800/keyboard.json
@@ -13,6 +13,14 @@
         "scroll_lock": "F7",
         "on_state": 0
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["F1", "F4", "F5", "F6", "B0", "B2", "B1", "B3", "B7", "C7"],
         "rows": ["C6", "B6", "B5", "B4", "D7", "D0", "D1", "D2", "D3", "D5", "D4", "D6"]
diff --git a/keyboards/ash1800/rules.mk b/keyboards/ash1800/rules.mk
deleted file mode 100644
index d1322df0ab..0000000000
--- a/keyboards/ash1800/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 = yes        # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/ash_xiix/info.json b/keyboards/ash_xiix/keyboard.json
similarity index 97%
rename from keyboards/ash_xiix/info.json
rename to keyboards/ash_xiix/keyboard.json
index d9f9964035..d1e32efec1 100644
--- a/keyboards/ash_xiix/info.json
+++ b/keyboards/ash_xiix/keyboard.json
@@ -14,6 +14,14 @@
         "scroll_lock": "F7",
         "on_state": 0
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["F1", "F4", "F5", "F6", "B0", "B2", "B1", "B3", "B7", "C7"],
         "rows": ["C6", "B6", "B5", "B4", "D7", "D0", "D1", "D2", "D3", "D5", "D4", "D6"]
diff --git a/keyboards/ash_xiix/rules.mk b/keyboards/ash_xiix/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/ash_xiix/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/atlas_65/info.json b/keyboards/atlas_65/keyboard.json
similarity index 96%
rename from keyboards/atlas_65/info.json
rename to keyboards/atlas_65/keyboard.json
index 5ed5466d47..896ecf6f20 100644
--- a/keyboards/atlas_65/info.json
+++ b/keyboards/atlas_65/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x1000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B0", "B7", "B5", "B4", "D7", "D6", "B3"],
         "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/atlas_65/rules.mk b/keyboards/atlas_65/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/atlas_65/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/atomic/info.json b/keyboards/atomic/keyboard.json
similarity index 97%
rename from keyboards/atomic/info.json
rename to keyboards/atomic/keyboard.json
index 8635648ea0..cb4bddceae 100644
--- a/keyboards/atomic/info.json
+++ b/keyboards/atomic/keyboard.json
@@ -7,6 +7,15 @@
         "pid": "0x6060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F1", "F0", "B0", "C7", "F4", "F5", "F6", "F7", "D4", "D6", "B4", "D7", "D3", "D2", "D1"],
         "rows": ["D0", "D5", "B5", "B6", "C6"]
diff --git a/keyboards/atomic/rules.mk b/keyboards/atomic/rules.mk
deleted file mode 100644
index 2b1de65bb4..0000000000
--- a/keyboards/atomic/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
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/atreus62/info.json b/keyboards/atreus62/keyboard.json
similarity index 96%
rename from keyboards/atreus62/info.json
rename to keyboards/atreus62/keyboard.json
index d27f97ce97..5263e799df 100644
--- a/keyboards/atreus62/info.json
+++ b/keyboards/atreus62/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x6062",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": false,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false,
+    "unicode": true
+  },
   "matrix_pins": {
     "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6", "B5", "B4", "E6", "D7", "C6"],
     "rows": ["D2", "D3", "D1", "D0", "D4"]
diff --git a/keyboards/atreus62/rules.mk b/keyboards/atreus62/rules.mk
deleted file mode 100644
index d1f7ba0815..0000000000
--- a/keyboards/atreus62/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes         # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-#BACKLIGHT_ENABLE = no      # Enable keyboard backlight functionality
-UNICODE_ENABLE = yes         # Unicode
diff --git a/keyboards/atset/at1/info.json b/keyboards/atset/at1/keyboard.json
similarity index 74%
rename from keyboards/atset/at1/info.json
rename to keyboards/atset/at1/keyboard.json
index 6948e6bc44..e8fa5f8b5f 100644
--- a/keyboards/atset/at1/info.json
+++ b/keyboards/atset/at1/keyboard.json
@@ -7,6 +7,14 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B6"],
     "rows": ["D2"]
diff --git a/keyboards/atset/at1/rules.mk b/keyboards/atset/at1/rules.mk
deleted file mode 100644
index 5356b24d77..0000000000
--- a/keyboards/atset/at1/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = 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/atset/at12/info.json b/keyboards/atset/at12/keyboard.json
similarity index 86%
rename from keyboards/atset/at12/info.json
rename to keyboards/atset/at12/keyboard.json
index c80f434460..c15ff3f46e 100644
--- a/keyboards/atset/at12/info.json
+++ b/keyboards/atset/at12/keyboard.json
@@ -7,6 +7,14 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B6", "B5", "B4"],
     "rows": ["D3", "D2", "D1", "D0"]
diff --git a/keyboards/atset/at12/rules.mk b/keyboards/atset/at12/rules.mk
deleted file mode 100644
index 5356b24d77..0000000000
--- a/keyboards/atset/at12/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = 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/atset/at16/info.json b/keyboards/atset/at16/keyboard.json
similarity index 88%
rename from keyboards/atset/at16/info.json
rename to keyboards/atset/at16/keyboard.json
index abe1745e7a..0db5ad692c 100644
--- a/keyboards/atset/at16/info.json
+++ b/keyboards/atset/at16/keyboard.json
@@ -7,6 +7,14 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B6", "B5", "B4", "B2"],
     "rows": ["D3", "D2", "D1", "D0"]
diff --git a/keyboards/atset/at16/rules.mk b/keyboards/atset/at16/rules.mk
deleted file mode 100644
index 5356b24d77..0000000000
--- a/keyboards/atset/at16/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = 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/atset/at3/info.json b/keyboards/atset/at3/keyboard.json
similarity index 78%
rename from keyboards/atset/at3/info.json
rename to keyboards/atset/at3/keyboard.json
index 959bbebce8..171faf984a 100644
--- a/keyboards/atset/at3/info.json
+++ b/keyboards/atset/at3/keyboard.json
@@ -7,6 +7,14 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B6", "B5", "B4"],
     "rows": ["D2"]
diff --git a/keyboards/atset/at3/rules.mk b/keyboards/atset/at3/rules.mk
deleted file mode 100644
index 5356b24d77..0000000000
--- a/keyboards/atset/at3/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = 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/atset/at6/info.json b/keyboards/atset/at6/keyboard.json
similarity index 82%
rename from keyboards/atset/at6/info.json
rename to keyboards/atset/at6/keyboard.json
index bc8c770692..c24611f8b7 100644
--- a/keyboards/atset/at6/info.json
+++ b/keyboards/atset/at6/keyboard.json
@@ -7,6 +7,14 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B6", "B5", "B4"],
     "rows": ["D2", "D1"]
diff --git a/keyboards/atset/at6/rules.mk b/keyboards/atset/at6/rules.mk
deleted file mode 100644
index 5356b24d77..0000000000
--- a/keyboards/atset/at6/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = 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/atset/at9/info.json b/keyboards/atset/at9/keyboard.json
similarity index 84%
rename from keyboards/atset/at9/info.json
rename to keyboards/atset/at9/keyboard.json
index ee263e71bb..35bdf95550 100644
--- a/keyboards/atset/at9/info.json
+++ b/keyboards/atset/at9/keyboard.json
@@ -7,6 +7,14 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B6", "B5", "B4"],
     "rows": ["D2", "D1", "D0"]
diff --git a/keyboards/atset/at9/rules.mk b/keyboards/atset/at9/rules.mk
deleted file mode 100644
index 5356b24d77..0000000000
--- a/keyboards/atset/at9/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = 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/aves60/info.json b/keyboards/aves60/keyboard.json
similarity index 99%
rename from keyboards/aves60/info.json
rename to keyboards/aves60/keyboard.json
index 111fcab3bd..fce12cd9f7 100644
--- a/keyboards/aves60/info.json
+++ b/keyboards/aves60/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xD408",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B2", "B3", "D0", "D1", "D2", "D3", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"],
         "rows": ["F6", "F7", "F5", "F1", "F4"]
diff --git a/keyboards/aves60/rules.mk b/keyboards/aves60/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/aves60/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/aves65/info.json b/keyboards/aves65/keyboard.json
similarity index 99%
rename from keyboards/aves65/info.json
rename to keyboards/aves65/keyboard.json
index 44299f80c5..fba7dcaf38 100644
--- a/keyboards/aves65/info.json
+++ b/keyboards/aves65/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x9038",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D0", "D1", "D2", "D3", "D5", "B5", "F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6"],
         "rows": ["D4", "D6", "D7", "B4", "E6"]
diff --git a/keyboards/aves65/rules.mk b/keyboards/aves65/rules.mk
deleted file mode 100644
index 951dd07d6e..0000000000
--- a/keyboards/aves65/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/axolstudio/foundation_gamma/info.json b/keyboards/axolstudio/foundation_gamma/keyboard.json
similarity index 98%
rename from keyboards/axolstudio/foundation_gamma/info.json
rename to keyboards/axolstudio/foundation_gamma/keyboard.json
index 230f0cef43..86ba316268 100644
--- a/keyboards/axolstudio/foundation_gamma/info.json
+++ b/keyboards/axolstudio/foundation_gamma/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xE3EB",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "B3", "F4", "F1", "F0"],
         "rows": ["B2", "B1", "B0", "F7", "F6", "F5"]
diff --git a/keyboards/axolstudio/foundation_gamma/rules.mk b/keyboards/axolstudio/foundation_gamma/rules.mk
deleted file mode 100644
index f84fabb766..0000000000
--- a/keyboards/axolstudio/foundation_gamma/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/axolstudio/yeti/soldered/info.json b/keyboards/axolstudio/yeti/soldered/keyboard.json
similarity index 98%
rename from keyboards/axolstudio/yeti/soldered/info.json
rename to keyboards/axolstudio/yeti/soldered/keyboard.json
index a2b3097716..9edb808330 100644
--- a/keyboards/axolstudio/yeti/soldered/info.json
+++ b/keyboards/axolstudio/yeti/soldered/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x9F9F",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": false,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["F6", "F5", "F4", "F1", "F0", "F7", "D7", "D6", "D4", "B3", "B7", "D0", "D1", "D2", "D3", "D5"],
     "rows": ["C7", "C6", "B6", "B5", "B4"]
diff --git a/keyboards/axolstudio/yeti/soldered/rules.mk b/keyboards/axolstudio/yeti/soldered/rules.mk
deleted file mode 100644
index 6fe874e748..0000000000
--- a/keyboards/axolstudio/yeti/soldered/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/b_sides/rev41lp/info.json b/keyboards/b_sides/rev41lp/keyboard.json
similarity index 93%
rename from keyboards/b_sides/rev41lp/info.json
rename to keyboards/b_sides/rev41lp/keyboard.json
index 9d121083bd..75c7affbf5 100644
--- a/keyboards/b_sides/rev41lp/info.json
+++ b/keyboards/b_sides/rev41lp/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x5F10",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5"],
         "rows": ["F4", "B2", "F5", "B3", "F6", "B1", "F7"]
diff --git a/keyboards/b_sides/rev41lp/rules.mk b/keyboards/b_sides/rev41lp/rules.mk
deleted file mode 100644
index a2444417d6..0000000000
--- a/keyboards/b_sides/rev41lp/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 = yes        # 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
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/bacca70/info.json b/keyboards/bacca70/keyboard.json
similarity index 98%
rename from keyboards/bacca70/info.json
rename to keyboards/bacca70/keyboard.json
index 143c19d987..c192fb0eb2 100644
--- a/keyboards/bacca70/info.json
+++ b/keyboards/bacca70/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x6970",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["A0", "A1", "A2", "B12", "B13", "B14", "B15", "A8"],
         "rows": ["A3", "A4", "A5", "A6", "A7", "B0", "B1", "B2", "B10", "B11", "A9", "A10"]
diff --git a/keyboards/bacca70/rules.mk b/keyboards/bacca70/rules.mk
deleted file mode 100644
index 718a1e8d09..0000000000
--- a/keyboards/bacca70/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 = 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/baguette/info.json b/keyboards/baguette/keyboard.json
similarity index 97%
rename from keyboards/baguette/info.json
rename to keyboards/baguette/keyboard.json
index 0a008f45fa..f6797dd939 100644
--- a/keyboards/baguette/info.json
+++ b/keyboards/baguette/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x5050",
     "device_version": "0.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "B0", "D0", "D1", "D2", "D3", "D5", "D4"],
     "rows": ["B3", "B2", "B1", "E6", "D6"]
diff --git a/keyboards/baguette/rules.mk b/keyboards/baguette/rules.mk
deleted file mode 100644
index a949e5d4d9..0000000000
--- a/keyboards/baguette/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
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/bantam44/info.json b/keyboards/bantam44/keyboard.json
similarity index 94%
rename from keyboards/bantam44/info.json
rename to keyboards/bantam44/keyboard.json
index 62713f82d7..2a884c2524 100644
--- a/keyboards/bantam44/info.json
+++ b/keyboards/bantam44/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["B0", "B1", "B2", "B3", "B7", "D0", "B6", "F7", "F6", "F5", "F4", "F1"],
     "rows": ["F0", "D6", "D4", "D5"]
diff --git a/keyboards/bantam44/rules.mk b/keyboards/bantam44/rules.mk
deleted file mode 100644
index 34dd06e002..0000000000
--- a/keyboards/bantam44/rules.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes	# Mouse keys
-EXTRAKEY_ENABLE = yes	# Audio control and System control
-CONSOLE_ENABLE = yes	# Console for debug
-COMMAND_ENABLE = yes    # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-# BACKLIGHT_ENABLE = yes  # Enable keyboard backlight functionality
diff --git a/keyboards/barracuda/info.json b/keyboards/barracuda/keyboard.json
similarity index 92%
rename from keyboards/barracuda/info.json
rename to keyboards/barracuda/keyboard.json
index 3b68e6e3f3..56cf8f08bb 100644
--- a/keyboards/barracuda/info.json
+++ b/keyboards/barracuda/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D4", "D5", "D6", "B0", "B1", "B2"],
         "rows": ["C4", "C5", "C6", "D1", "D2", "D3"]
diff --git a/keyboards/barracuda/rules.mk b/keyboards/barracuda/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/barracuda/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/basekeys/trifecta/info.json b/keyboards/basekeys/trifecta/keyboard.json
similarity index 96%
rename from keyboards/basekeys/trifecta/info.json
rename to keyboards/basekeys/trifecta/keyboard.json
index d9afe40a0c..8777b1ffa9 100644
--- a/keyboards/basekeys/trifecta/info.json
+++ b/keyboards/basekeys/trifecta/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0xEAF3",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "F4", "F5", "D1", "B2", "D0", "B3"],
         "rows": ["B0", "B7", "F7", "B1", "B6", "C6", "C7", "B5", "F6", "D2"]
diff --git a/keyboards/basekeys/trifecta/rules.mk b/keyboards/basekeys/trifecta/rules.mk
deleted file mode 100644
index 3989cc05ff..0000000000
--- a/keyboards/basekeys/trifecta/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = 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 = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
-ENCODER_ENABLE = yes
diff --git a/keyboards/beatervan/info.json b/keyboards/beatervan/keyboard.json
similarity index 98%
rename from keyboards/beatervan/info.json
rename to keyboards/beatervan/keyboard.json
index 8d4c77d2ce..4828127d14 100644
--- a/keyboards/beatervan/info.json
+++ b/keyboards/beatervan/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x6276",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "unicode": true
+  },
   "matrix_pins": {
     "cols": ["D7", "E6", "B4", "B5", "F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
     "rows": ["D1", "D0", "D4", "C6"]
diff --git a/keyboards/beatervan/rules.mk b/keyboards/beatervan/rules.mk
deleted file mode 100644
index 5cc6e14a93..0000000000
--- a/keyboards/beatervan/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
-UNICODE_ENABLE = yes         # Unicode
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/bfake/info.json b/keyboards/bfake/keyboard.json
similarity index 97%
rename from keyboards/bfake/info.json
rename to keyboards/bfake/keyboard.json
index 3aae216047..4774e282d7 100644
--- a/keyboards/bfake/info.json
+++ b/keyboards/bfake/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x422D",
     "device_version": "2.0.0"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": true,
+    "command": true,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5"],
     "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7"]
diff --git a/keyboards/bfake/rules.mk b/keyboards/bfake/rules.mk
deleted file mode 100644
index 90550484a6..0000000000
--- a/keyboards/bfake/rules.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = yes
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = no
diff --git a/keyboards/biacco42/meishi/info.json b/keyboards/biacco42/meishi/keyboard.json
similarity index 79%
rename from keyboards/biacco42/meishi/info.json
rename to keyboards/biacco42/meishi/keyboard.json
index 96e67d5078..d9d37d72fe 100644
--- a/keyboards/biacco42/meishi/info.json
+++ b/keyboards/biacco42/meishi/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0002",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B1", "B3", "B2", "B6"],
         "rows": ["B5"]
diff --git a/keyboards/biacco42/meishi/rules.mk b/keyboards/biacco42/meishi/rules.mk
deleted file mode 100644
index b6e2a5f9a4..0000000000
--- a/keyboards/biacco42/meishi/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/biacco42/meishi2/info.json b/keyboards/biacco42/meishi2/keyboard.json
similarity index 80%
rename from keyboards/biacco42/meishi2/info.json
rename to keyboards/biacco42/meishi2/keyboard.json
index fb88356968..3a392442f2 100644
--- a/keyboards/biacco42/meishi2/info.json
+++ b/keyboards/biacco42/meishi2/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x0003",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": false,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["F5", "F6"],
     "rows": ["D7", "E6"]
diff --git a/keyboards/biacco42/meishi2/rules.mk b/keyboards/biacco42/meishi2/rules.mk
deleted file mode 100644
index fce764c22d..0000000000
--- a/keyboards/biacco42/meishi2/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/binepad/bn003/info.json b/keyboards/binepad/bn003/keyboard.json
similarity index 79%
rename from keyboards/binepad/bn003/info.json
rename to keyboards/binepad/bn003/keyboard.json
index 408e670b95..695518828e 100644
--- a/keyboards/binepad/bn003/info.json
+++ b/keyboards/binepad/bn003/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x4287",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B4", "B5", "B6"],
     "rows": ["C6"]
diff --git a/keyboards/binepad/bn003/rules.mk b/keyboards/binepad/bn003/rules.mk
deleted file mode 100644
index 5356b24d77..0000000000
--- a/keyboards/binepad/bn003/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = 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/bioi/f60/info.json b/keyboards/bioi/f60/keyboard.json
similarity index 99%
rename from keyboards/bioi/f60/info.json
rename to keyboards/bioi/f60/keyboard.json
index 6223ba7b57..9adbb2f48a 100644
--- a/keyboards/bioi/f60/info.json
+++ b/keyboards/bioi/f60/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x4660",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D0", "D1"],
         "rows": ["B0", "E6", "F1", "F5", "F4"]
diff --git a/keyboards/bioi/f60/rules.mk b/keyboards/bioi/f60/rules.mk
deleted file mode 100644
index 85830d3115..0000000000
--- a/keyboards/bioi/f60/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/blackplum/info.json b/keyboards/blackplum/keyboard.json
similarity index 96%
rename from keyboards/blackplum/info.json
rename to keyboards/blackplum/keyboard.json
index ba93091bcc..d17bc37832 100644
--- a/keyboards/blackplum/info.json
+++ b/keyboards/blackplum/keyboard.json
@@ -30,6 +30,15 @@
     "ws2812": {
         "pin": "C7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D0", "D1", "D2", "F7", "F6", "F5", "F4", "F1"],
         "rows": ["C6", "B6", "B4", "B5", "D6", "D7", "D5", "D3", "D4"]
diff --git a/keyboards/blackplum/rules.mk b/keyboards/blackplum/rules.mk
deleted file mode 100644
index 817d092c27..0000000000
--- a/keyboards/blackplum/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes	  # Mouse keys
-EXTRAKEY_ENABLE = yes	  # Audio control and System control
-CONSOLE_ENABLE = no			# Console for debug
-COMMAND_ENABLE = no     # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no  # Enable keyboard backlight functionality
-AUDIO_ENABLE = no
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/blank/blank01/info.json b/keyboards/blank/blank01/keyboard.json
similarity index 97%
rename from keyboards/blank/blank01/info.json
rename to keyboards/blank/blank01/keyboard.json
index 13b4971546..5dfa7e67ec 100644
--- a/keyboards/blank/blank01/info.json
+++ b/keyboards/blank/blank01/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x4B01",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D5", "D4", "D6", "D7", "B5", "B4", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"],
         "rows": ["D0", "D1", "D2", "D3", "B3"]
diff --git a/keyboards/blank/blank01/rules.mk b/keyboards/blank/blank01/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/blank/blank01/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/blaster75/info.json b/keyboards/blaster75/keyboard.json
similarity index 98%
rename from keyboards/blaster75/info.json
rename to keyboards/blaster75/keyboard.json
index 406de75028..81cc789da6 100644
--- a/keyboards/blaster75/info.json
+++ b/keyboards/blaster75/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xB075",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": true,
+        "extrakey": false,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B0", "B4", "B5", "B6", "B7", "C6", "C7", "D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7"],
         "rows": ["F0", "F1", "F4", "F5", "F6", "F7"]
diff --git a/keyboards/blaster75/rules.mk b/keyboards/blaster75/rules.mk
deleted file mode 100644
index 997fedb0b1..0000000000
--- a/keyboards/blaster75/rules.mk
+++ /dev/null
@@ -1,13 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes     # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = no       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
diff --git a/keyboards/blockey/info.json b/keyboards/blockey/keyboard.json
similarity index 95%
rename from keyboards/blockey/info.json
rename to keyboards/blockey/keyboard.json
index 2ed60f6e69..0c150420dc 100644
--- a/keyboards/blockey/info.json
+++ b/keyboards/blockey/keyboard.json
@@ -27,6 +27,15 @@
   "ws2812": {
     "pin": "B1"
   },
+  "features": {
+    "bootmagic": false,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": false,
+    "nkro": false,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["D0", "B4", "C6", "D7", "F4", "F5", "F7"],
     "rows": ["D3", "D1", "D4", "E6", "B5", "D2", "F6", "B3", "B2", "B6"]
diff --git a/keyboards/blockey/rules.mk b/keyboards/blockey/rules.mk
deleted file mode 100644
index 08022075e7..0000000000
--- a/keyboards/blockey/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 = 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
-AUDIO_ENABLE = no           # Audio output
-
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/boardrun/bizarre/info.json b/keyboards/boardrun/bizarre/keyboard.json
similarity index 98%
rename from keyboards/boardrun/bizarre/info.json
rename to keyboards/boardrun/bizarre/keyboard.json
index 428ca3bac6..6901f93625 100644
--- a/keyboards/boardrun/bizarre/info.json
+++ b/keyboards/boardrun/bizarre/keyboard.json
@@ -30,6 +30,15 @@
     "ws2812": {
         "pin": "B7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "B3", "B2", "B1"],
         "rows": ["F0", "F1", "F4", "F5", "F6"]
diff --git a/keyboards/boardrun/bizarre/rules.mk b/keyboards/boardrun/bizarre/rules.mk
deleted file mode 100644
index e027898b62..0000000000
--- a/keyboards/boardrun/bizarre/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 = 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/boardrun/classic/info.json b/keyboards/boardrun/classic/keyboard.json
similarity index 96%
rename from keyboards/boardrun/classic/info.json
rename to keyboards/boardrun/classic/keyboard.json
index 4518961b4a..cd83ef58f0 100644
--- a/keyboards/boardrun/classic/info.json
+++ b/keyboards/boardrun/classic/keyboard.json
@@ -30,6 +30,15 @@
     "ws2812": {
         "pin": "B7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "B3", "B2", "B1"],
         "rows": ["F0", "F1", "F4", "F5", "F6"]
diff --git a/keyboards/boardrun/classic/rules.mk b/keyboards/boardrun/classic/rules.mk
deleted file mode 100644
index 3c777809b4..0000000000
--- a/keyboards/boardrun/classic/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 = 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/boardwalk/info.json b/keyboards/boardwalk/keyboard.json
similarity index 99%
rename from keyboards/boardwalk/info.json
rename to keyboards/boardwalk/keyboard.json
index 82b8fb23e4..8c4ad37eb0 100644
--- a/keyboards/boardwalk/info.json
+++ b/keyboards/boardwalk/keyboard.json
@@ -29,6 +29,16 @@
     "ws2812": {
         "pin": "B7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true,
+        "unicode": true
+    },
     "matrix_pins": {
         "cols": ["F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"],
         "rows": ["F0", "F1", "F4", "F5", "F6"]
diff --git a/keyboards/boardwalk/rules.mk b/keyboards/boardwalk/rules.mk
deleted file mode 100644
index bca0082d2e..0000000000
--- a/keyboards/boardwalk/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 = yes        # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-UNICODE_ENABLE = yes        # Unicode
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight.  Do not enable this with audio at the same time.
diff --git a/keyboards/bobpad/info.json b/keyboards/bobpad/keyboard.json
similarity index 84%
rename from keyboards/bobpad/info.json
rename to keyboards/bobpad/keyboard.json
index eb6a25104b..feddbbf222 100644
--- a/keyboards/bobpad/info.json
+++ b/keyboards/bobpad/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x0002",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F6", "F5", "F4"],
         "rows": ["F7", "B1"]
diff --git a/keyboards/bobpad/rules.mk b/keyboards/bobpad/rules.mk
deleted file mode 100644
index 453f0a34d3..0000000000
--- a/keyboards/bobpad/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/bolsa/bolsalice/info.json b/keyboards/bolsa/bolsalice/keyboard.json
similarity index 97%
rename from keyboards/bolsa/bolsalice/info.json
rename to keyboards/bolsa/bolsalice/keyboard.json
index 51e342b10b..8ada9b5546 100644
--- a/keyboards/bolsa/bolsalice/info.json
+++ b/keyboards/bolsa/bolsalice/keyboard.json
@@ -26,6 +26,15 @@
     "ws2812": {
         "pin": "B1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1"],
         "rows": ["B2", "B3", "C7", "C6", "B5"]
diff --git a/keyboards/bolsa/bolsalice/rules.mk b/keyboards/bolsa/bolsalice/rules.mk
deleted file mode 100644
index b851d0ab39..0000000000
--- a/keyboards/bolsa/bolsalice/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/bolsa/damapad/info.json b/keyboards/bolsa/damapad/keyboard.json
similarity index 91%
rename from keyboards/bolsa/damapad/info.json
rename to keyboards/bolsa/damapad/keyboard.json
index 2a3867c6d5..5a47d12322 100644
--- a/keyboards/bolsa/damapad/info.json
+++ b/keyboards/bolsa/damapad/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x6470",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "oled": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "F4", "F5", "F6", "B7"],
         "rows": ["E6", "F7", "C7"]
diff --git a/keyboards/bolsa/damapad/rules.mk b/keyboards/bolsa/damapad/rules.mk
deleted file mode 100644
index 9c75f75d52..0000000000
--- a/keyboards/bolsa/damapad/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
-OLED_ENABLE = yes
diff --git a/keyboards/bop/info.json b/keyboards/bop/keyboard.json
similarity index 97%
rename from keyboards/bop/info.json
rename to keyboards/bop/keyboard.json
index f7ae94b3be..81bbbf33f0 100644
--- a/keyboards/bop/info.json
+++ b/keyboards/bop/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x626F",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D5", "C5", "B0", "B1", "B2", "B3", "B4", "B5", "B6", "E7", "E6", "F0", "F7", "F6", "F5", "F4", "F3", "F2", "F1", "C6"],
         "rows": ["B7", "D0", "D1", "D2", "D3", "D4"]
diff --git a/keyboards/bop/rules.mk b/keyboards/bop/rules.mk
deleted file mode 100644
index 1eca777d61..0000000000
--- a/keyboards/bop/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
-SWAP_HANDS_ENABLE = no
diff --git a/keyboards/boston/info.json b/keyboards/boston/keyboard.json
similarity index 99%
rename from keyboards/boston/info.json
rename to keyboards/boston/keyboard.json
index 39c5a7c160..1960df6d45 100644
--- a/keyboards/boston/info.json
+++ b/keyboards/boston/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0x4176",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B10", "B11", "B12", "B13", "B14", "B15", "A8", "A9", "A10", "A15", "B3", "B4", "B7", "B8", "B9", "C14", "C15", "F0", "A3"],
         "rows": ["B5", "B6", "A7", "B0", "B1", "B2", "A4"]
diff --git a/keyboards/boston/rules.mk b/keyboards/boston/rules.mk
deleted file mode 100644
index 80d17a2dfd..0000000000
--- a/keyboards/boston/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 = yes     # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes      # Enable keyboard RGB underglow
-AUDIO_ENABLE = no          # Audio output
-ENCODER_ENABLE = yes
-
diff --git a/keyboards/botanicalkeyboards/fm2u/info.json b/keyboards/botanicalkeyboards/fm2u/keyboard.json
similarity index 93%
rename from keyboards/botanicalkeyboards/fm2u/info.json
rename to keyboards/botanicalkeyboards/fm2u/keyboard.json
index 3f9009625d..907d5d46b8 100644
--- a/keyboards/botanicalkeyboards/fm2u/info.json
+++ b/keyboards/botanicalkeyboards/fm2u/keyboard.json
@@ -10,6 +10,14 @@
     },
     "processor": "atmega32u2",
     "bootloader": "atmel-dfu",
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "direct": [
             ["C4"]
diff --git a/keyboards/botanicalkeyboards/fm2u/rules.mk b/keyboards/botanicalkeyboards/fm2u/rules.mk
deleted file mode 100644
index 6ff9b4e02b..0000000000
--- a/keyboards/botanicalkeyboards/fm2u/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 = 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/box75/info.json b/keyboards/box75/keyboard.json
similarity index 96%
rename from keyboards/box75/info.json
rename to keyboards/box75/keyboard.json
index 35689400f7..8932f81ae7 100644
--- a/keyboards/box75/info.json
+++ b/keyboards/box75/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xB075",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A8", "B15", "B14", "B13", "A15"],
         "rows": ["A10", "A9", "B12", "A2", "A1", "A0"]
diff --git a/keyboards/box75/rules.mk b/keyboards/box75/rules.mk
deleted file mode 100644
index 5b6b0c9299..0000000000
--- a/keyboards/box75/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 = yes        # 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
-ENCODER_ENABLE = no
-
diff --git a/keyboards/bpiphany/four_banger/info.json b/keyboards/bpiphany/four_banger/keyboard.json
similarity index 85%
rename from keyboards/bpiphany/four_banger/info.json
rename to keyboards/bpiphany/four_banger/keyboard.json
index e267922ab8..2462050684 100644
--- a/keyboards/bpiphany/four_banger/info.json
+++ b/keyboards/bpiphany/four_banger/keyboard.json
@@ -28,6 +28,15 @@
     "ws2812": {
         "pin": "E6"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B5", "B4"],
         "rows": ["B2", "B6"]
diff --git a/keyboards/bpiphany/four_banger/rules.mk b/keyboards/bpiphany/four_banger/rules.mk
deleted file mode 100644
index 21fd8f40ee..0000000000
--- a/keyboards/bpiphany/four_banger/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes  # Mouse keys
-EXTRAKEY_ENABLE = yes  # Audio control and System control
-CONSOLE_ENABLE = no    # Console for debug
-COMMAND_ENABLE = no    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no  # Enable keyboard backlight functionality
-AUDIO_ENABLE = no
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/bpiphany/sixshooter/info.json b/keyboards/bpiphany/sixshooter/keyboard.json
similarity index 82%
rename from keyboards/bpiphany/sixshooter/info.json
rename to keyboards/bpiphany/sixshooter/keyboard.json
index 9705eb2f18..21e52f3629 100644
--- a/keyboards/bpiphany/sixshooter/info.json
+++ b/keyboards/bpiphany/sixshooter/keyboard.json
@@ -10,6 +10,14 @@
   },
   "processor": "atmega32u4",
   "bootloader": "halfkay",
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "direct": [
       ["F7", "F6", "F1"],
diff --git a/keyboards/bpiphany/sixshooter/rules.mk b/keyboards/bpiphany/sixshooter/rules.mk
deleted file mode 100644
index 315dc5de53..0000000000
--- a/keyboards/bpiphany/sixshooter/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = 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
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/bthlabs/geekpad/info.json b/keyboards/bthlabs/geekpad/keyboard.json
similarity index 85%
rename from keyboards/bthlabs/geekpad/info.json
rename to keyboards/bthlabs/geekpad/keyboard.json
index 5c193f9f85..43ce11edf5 100644
--- a/keyboards/bthlabs/geekpad/info.json
+++ b/keyboards/bthlabs/geekpad/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x4257",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": false,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["D4", "D0", "D1"],
     "rows": ["F4", "F5", "F6"]
diff --git a/keyboards/bthlabs/geekpad/rules.mk b/keyboards/bthlabs/geekpad/rules.mk
deleted file mode 100644
index 4d82dff69a..0000000000
--- a/keyboards/bthlabs/geekpad/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/buildakb/potato65/info.json b/keyboards/buildakb/potato65/keyboard.json
similarity index 98%
rename from keyboards/buildakb/potato65/info.json
rename to keyboards/buildakb/potato65/keyboard.json
index 7fee44a1ce..1aeba49bde 100644
--- a/keyboards/buildakb/potato65/info.json
+++ b/keyboards/buildakb/potato65/keyboard.json
@@ -30,6 +30,15 @@
             "twinkle": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "B0", "F1", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0"],
         "rows": ["E6", "B7", "F7", "F4", "F5"]
diff --git a/keyboards/buildakb/potato65/rules.mk b/keyboards/buildakb/potato65/rules.mk
deleted file mode 100644
index abd8c0135a..0000000000
--- a/keyboards/buildakb/potato65/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
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = yes        # Enable keyboard RGB underglow
diff --git a/keyboards/buildakb/potato65hs/info.json b/keyboards/buildakb/potato65hs/keyboard.json
similarity index 96%
rename from keyboards/buildakb/potato65hs/info.json
rename to keyboards/buildakb/potato65hs/keyboard.json
index 2b6a22179e..61ecd61a15 100644
--- a/keyboards/buildakb/potato65hs/info.json
+++ b/keyboards/buildakb/potato65hs/keyboard.json
@@ -30,6 +30,15 @@
             "twinkle": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D3", "D4", "D6", "D7", "B4", "B5", "B6", "F1", "B0", "B1", "B2", "B3", "B7", "D0", "D1"],
         "rows": ["F5", "F4", "F6", "F0", "D2"]
diff --git a/keyboards/buildakb/potato65hs/rules.mk b/keyboards/buildakb/potato65hs/rules.mk
deleted file mode 100644
index 0ce88ac19e..0000000000
--- a/keyboards/buildakb/potato65hs/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
-RGBLIGHT_ENABLE = yes        # Enable keyboard RGB underglow
diff --git a/keyboards/buildakb/potato65s/info.json b/keyboards/buildakb/potato65s/keyboard.json
similarity index 99%
rename from keyboards/buildakb/potato65s/info.json
rename to keyboards/buildakb/potato65s/keyboard.json
index fcd6cbf56f..915f967426 100644
--- a/keyboards/buildakb/potato65s/info.json
+++ b/keyboards/buildakb/potato65s/keyboard.json
@@ -30,6 +30,15 @@
             "twinkle": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D3", "D4", "D6", "D7", "B4", "B5", "B6", "F1", "B0", "B1", "B2", "B3", "B7", "D0", "D1"],
         "rows": ["F5", "F4", "F6", "F0", "D2"]
diff --git a/keyboards/buildakb/potato65s/rules.mk b/keyboards/buildakb/potato65s/rules.mk
deleted file mode 100644
index 0ce88ac19e..0000000000
--- a/keyboards/buildakb/potato65s/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
-RGBLIGHT_ENABLE = yes        # Enable keyboard RGB underglow
diff --git a/keyboards/cablecardesigns/cypher/rev6/info.json b/keyboards/cablecardesigns/cypher/rev6/keyboard.json
similarity index 98%
rename from keyboards/cablecardesigns/cypher/rev6/info.json
rename to keyboards/cablecardesigns/cypher/rev6/keyboard.json
index 9bc6e26814..57bd435635 100644
--- a/keyboards/cablecardesigns/cypher/rev6/info.json
+++ b/keyboards/cablecardesigns/cypher/rev6/keyboard.json
@@ -8,6 +8,16 @@
       "pid": "0xAA99",
       "device_version": "0.0.2"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
       "cols": ["D6", "D7", "B4", "B5", "B6", "B7", "B3", "B2", "B1", "F0"],
       "rows": ["B0", "F1", "F5", "F6", "F7", "D1", "F4", "D4", "C6", "C7"]
diff --git a/keyboards/cablecardesigns/cypher/rev6/rules.mk b/keyboards/cablecardesigns/cypher/rev6/rules.mk
deleted file mode 100644
index d9c776a9b1..0000000000
--- a/keyboards/cablecardesigns/cypher/rev6/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes            # Enable N-key Rollover
-BACKLIGHT_ENABLE = yes       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/caffeinated/serpent65/info.json b/keyboards/caffeinated/serpent65/keyboard.json
similarity index 99%
rename from keyboards/caffeinated/serpent65/info.json
rename to keyboards/caffeinated/serpent65/keyboard.json
index e4cc62c61e..f8c7a90ce9 100644
--- a/keyboards/caffeinated/serpent65/info.json
+++ b/keyboards/caffeinated/serpent65/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x6501",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["A1", "A2", "A3", "A4", "B14", "B15", "A8", "A9"],
         "rows": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "B13", "B12"]
diff --git a/keyboards/caffeinated/serpent65/rules.mk b/keyboards/caffeinated/serpent65/rules.mk
deleted file mode 100644
index 718a1e8d09..0000000000
--- a/keyboards/caffeinated/serpent65/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 = 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/cannonkeys/adelie/info.json b/keyboards/cannonkeys/adelie/keyboard.json
similarity index 98%
rename from keyboards/cannonkeys/adelie/info.json
rename to keyboards/cannonkeys/adelie/keyboard.json
index 798c599692..f4d46b35d1 100644
--- a/keyboards/cannonkeys/adelie/info.json
+++ b/keyboards/cannonkeys/adelie/keyboard.json
@@ -29,6 +29,15 @@
     "ws2812": {
         "pin": "F0"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "B2"],
         "rows": ["F4", "F1", "B1", "B0"]
diff --git a/keyboards/cannonkeys/adelie/rules.mk b/keyboards/cannonkeys/adelie/rules.mk
deleted file mode 100644
index 6d85e16f92..0000000000
--- a/keyboards/cannonkeys/adelie/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/cannonkeys/atlas/info.json b/keyboards/cannonkeys/atlas/keyboard.json
similarity index 97%
rename from keyboards/cannonkeys/atlas/info.json
rename to keyboards/cannonkeys/atlas/keyboard.json
index 8173ec6a8f..86eaec2d51 100644
--- a/keyboards/cannonkeys/atlas/info.json
+++ b/keyboards/cannonkeys/atlas/keyboard.json
@@ -27,6 +27,15 @@
       "pin": "B15",
       "driver": "spi"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
       "cols": ["A2", "A1", "A0", "F1", "F0", "C15", "C14", "C13", "B9", "A15", "A10", "A9"],
       "rows": ["A8", "B14", "B12", "B4", "B3"]
diff --git a/keyboards/cannonkeys/atlas/rules.mk b/keyboards/cannonkeys/atlas/rules.mk
deleted file mode 100644
index 451e1c675c..0000000000
--- a/keyboards/cannonkeys/atlas/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 = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/cannonkeys/atlas_alps/info.json b/keyboards/cannonkeys/atlas_alps/keyboard.json
similarity index 95%
rename from keyboards/cannonkeys/atlas_alps/info.json
rename to keyboards/cannonkeys/atlas_alps/keyboard.json
index 7166206f05..6f8c1305c3 100644
--- a/keyboards/cannonkeys/atlas_alps/info.json
+++ b/keyboards/cannonkeys/atlas_alps/keyboard.json
@@ -30,6 +30,15 @@
             "twinkle": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B6", "C6", "D2", "E6", "C7", "B3", "F7", "F6", "F5", "F4", "F1", "F0"],
         "rows": ["B5", "B4", "D1", "D7", "D6"]
diff --git a/keyboards/cannonkeys/atlas_alps/rules.mk b/keyboards/cannonkeys/atlas_alps/rules.mk
deleted file mode 100644
index b851d0ab39..0000000000
--- a/keyboards/cannonkeys/atlas_alps/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/cannonkeys/chimera65/info.json b/keyboards/cannonkeys/chimera65/keyboard.json
similarity index 95%
rename from keyboards/cannonkeys/chimera65/info.json
rename to keyboards/cannonkeys/chimera65/keyboard.json
index e9881750d9..7cf30d2ea7 100644
--- a/keyboards/cannonkeys/chimera65/info.json
+++ b/keyboards/cannonkeys/chimera65/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0xC024",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B11", "B10", "B2", "B1", "A5", "A4", "A3", "A2", "A1", "F0", "C15", "C14", "A9", "A8", "A10", "B3"],
         "rows": ["A13", "A14", "A15", "C13", "B8"]
diff --git a/keyboards/cannonkeys/chimera65/rules.mk b/keyboards/cannonkeys/chimera65/rules.mk
deleted file mode 100644
index 9bdf6b8093..0000000000
--- a/keyboards/cannonkeys/chimera65/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 = yes	# Console for debug
-COMMAND_ENABLE = yes    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = no
-
-
diff --git a/keyboards/cannonkeys/hoodrowg/info.json b/keyboards/cannonkeys/hoodrowg/keyboard.json
similarity index 99%
rename from keyboards/cannonkeys/hoodrowg/info.json
rename to keyboards/cannonkeys/hoodrowg/keyboard.json
index 1c1fbf5964..231b67e244 100644
--- a/keyboards/cannonkeys/hoodrowg/info.json
+++ b/keyboards/cannonkeys/hoodrowg/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x0006",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B5", "B4", "D7", "F5", "F6", "F7", "F4", "D2", "D0"],
         "rows": ["E6", "B7", "B0", "B1", "F1", "F0", "C6", "C7", "D4", "D6", "D5", "D3"]
diff --git a/keyboards/cannonkeys/hoodrowg/rules.mk b/keyboards/cannonkeys/hoodrowg/rules.mk
deleted file mode 100644
index b483118606..0000000000
--- a/keyboards/cannonkeys/hoodrowg/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = 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/cannonkeys/iron165/info.json b/keyboards/cannonkeys/iron165/keyboard.json
similarity index 95%
rename from keyboards/cannonkeys/iron165/info.json
rename to keyboards/cannonkeys/iron165/keyboard.json
index 3ec67e95b6..bc0c6af503 100644
--- a/keyboards/cannonkeys/iron165/info.json
+++ b/keyboards/cannonkeys/iron165/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x5165",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["A5", "B10", "A3", "A2", "B0", "A8", "C13", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"],
         "rows": ["B12", "B13", "B14", "B15", "A1"]
diff --git a/keyboards/cannonkeys/iron165/rules.mk b/keyboards/cannonkeys/iron165/rules.mk
deleted file mode 100644
index 9bdf6b8093..0000000000
--- a/keyboards/cannonkeys/iron165/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 = yes	# Console for debug
-COMMAND_ENABLE = yes    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = no
-
-
diff --git a/keyboards/cannonkeys/nearfield/info.json b/keyboards/cannonkeys/nearfield/keyboard.json
similarity index 98%
rename from keyboards/cannonkeys/nearfield/info.json
rename to keyboards/cannonkeys/nearfield/keyboard.json
index ab3a2d765d..e516198f09 100644
--- a/keyboards/cannonkeys/nearfield/info.json
+++ b/keyboards/cannonkeys/nearfield/keyboard.json
@@ -8,6 +8,14 @@
        "pid": "0x0002",
        "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
        "cols": ["D3", "D5", "C6", "C7", "B6", "B5", "B7", "F0", "F1", "F4", "F5", "F6", "F7", "B3", "B2", "D1"],
        "rows": ["B4", "D2", "D4", "D6", "D7"]
diff --git a/keyboards/cannonkeys/nearfield/rules.mk b/keyboards/cannonkeys/nearfield/rules.mk
deleted file mode 100755
index 3b6a1809db..0000000000
--- a/keyboards/cannonkeys/nearfield/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/cannonkeys/ortho48/info.json b/keyboards/cannonkeys/ortho48/keyboard.json
similarity index 96%
rename from keyboards/cannonkeys/ortho48/info.json
rename to keyboards/cannonkeys/ortho48/keyboard.json
index c995210ba4..1f35187e29 100644
--- a/keyboards/cannonkeys/ortho48/info.json
+++ b/keyboards/cannonkeys/ortho48/keyboard.json
@@ -8,6 +8,17 @@
     "pid": "0x4F48",
     "device_version": "0.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": false,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true,
+    "sleep_led": true
+  },
   "matrix_pins": {
     "cols": ["B11", "B10", "B1", "B0", "A7", "A6", "A5", "B14", "A15", "A0", "C15", "C14"],
     "rows": ["B12", "C13", "A2", "A1"]
diff --git a/keyboards/cannonkeys/ortho48/rules.mk b/keyboards/cannonkeys/ortho48/rules.mk
deleted file mode 100644
index 7b6ddd5ad3..0000000000
--- a/keyboards/cannonkeys/ortho48/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 = yes	# Console for debug
-COMMAND_ENABLE = yes    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-SLEEP_LED_ENABLE = yes
-
diff --git a/keyboards/cannonkeys/ortho60/info.json b/keyboards/cannonkeys/ortho60/keyboard.json
similarity index 96%
rename from keyboards/cannonkeys/ortho60/info.json
rename to keyboards/cannonkeys/ortho60/keyboard.json
index 18fcbc828b..f429bd9f40 100644
--- a/keyboards/cannonkeys/ortho60/info.json
+++ b/keyboards/cannonkeys/ortho60/keyboard.json
@@ -8,6 +8,17 @@
     "pid": "0x4F60",
     "device_version": "0.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": false,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true,
+    "sleep_led": true
+  },
   "matrix_pins": {
     "cols": ["B11", "B10", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0"],
     "rows": ["B3", "B4", "B5", "B6", "B7"]
diff --git a/keyboards/cannonkeys/ortho60/rules.mk b/keyboards/cannonkeys/ortho60/rules.mk
deleted file mode 100644
index 7b6ddd5ad3..0000000000
--- a/keyboards/cannonkeys/ortho60/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 = yes	# Console for debug
-COMMAND_ENABLE = yes    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-SLEEP_LED_ENABLE = yes
-
diff --git a/keyboards/cannonkeys/ortho75/info.json b/keyboards/cannonkeys/ortho75/keyboard.json
similarity index 95%
rename from keyboards/cannonkeys/ortho75/info.json
rename to keyboards/cannonkeys/ortho75/keyboard.json
index 1f9fa94086..236334c598 100644
--- a/keyboards/cannonkeys/ortho75/info.json
+++ b/keyboards/cannonkeys/ortho75/keyboard.json
@@ -8,6 +8,18 @@
     "pid": "0x6464",
     "device_version": "0.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": false,
+    "command": true,
+    "console": true,
+    "encoder": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true,
+    "sleep_led": true
+  },
   "matrix_pins": {
     "cols": ["B11", "B10", "B1", "B0", "A7", "A6", "A5", "B14", "A15", "A0", "C15", "C14", "B7", "B6", "B5"],
     "rows": ["B12", "C13", "A2", "A1", "A3"]
diff --git a/keyboards/cannonkeys/ortho75/rules.mk b/keyboards/cannonkeys/ortho75/rules.mk
deleted file mode 100644
index 5a1f61bac0..0000000000
--- a/keyboards/cannonkeys/ortho75/rules.mk
+++ /dev/null
@@ -1,14 +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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-SLEEP_LED_ENABLE = yes
-ENCODER_ENABLE = yes
-
diff --git a/keyboards/cannonkeys/practice65/info.json b/keyboards/cannonkeys/practice65/keyboard.json
similarity index 95%
rename from keyboards/cannonkeys/practice65/info.json
rename to keyboards/cannonkeys/practice65/keyboard.json
index f86951bf5c..950d1bae9f 100644
--- a/keyboards/cannonkeys/practice65/info.json
+++ b/keyboards/cannonkeys/practice65/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0x6565",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true,
+        "sleep_led": true
+    },
     "matrix_pins": {
         "cols": ["B8", "B0", "A0", "B5", "B10", "B9", "A6", "B12", "A7", "A5", "A4", "A3", "A2", "A1", "B13", "B14"],
         "rows": ["B4", "B11", "B1", "B7", "B6"]
diff --git a/keyboards/cannonkeys/practice65/rules.mk b/keyboards/cannonkeys/practice65/rules.mk
deleted file mode 100644
index 7b6ddd5ad3..0000000000
--- a/keyboards/cannonkeys/practice65/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 = yes	# Console for debug
-COMMAND_ENABLE = yes    # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = yes
-SLEEP_LED_ENABLE = yes
-
diff --git a/keyboards/capsunlocked/cu24/info.json b/keyboards/capsunlocked/cu24/keyboard.json
similarity index 93%
rename from keyboards/capsunlocked/cu24/info.json
rename to keyboards/capsunlocked/cu24/keyboard.json
index f5d56e383e..c3c262734d 100644
--- a/keyboards/capsunlocked/cu24/info.json
+++ b/keyboards/capsunlocked/cu24/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "D0", "D1"],
         "rows": ["E6", "F5", "B4", "B6", "C6", "C7"]
diff --git a/keyboards/capsunlocked/cu24/rules.mk b/keyboards/capsunlocked/cu24/rules.mk
deleted file mode 100644
index 0dc735b9cd..0000000000
--- a/keyboards/capsunlocked/cu24/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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
-RGBLIGHT_ENABLE = yes       # RGB drivers
diff --git a/keyboards/capsunlocked/cu65/info.json b/keyboards/capsunlocked/cu65/keyboard.json
similarity index 98%
rename from keyboards/capsunlocked/cu65/info.json
rename to keyboards/capsunlocked/cu65/keyboard.json
index 71b7fe0a9f..eabb769468 100644
--- a/keyboards/capsunlocked/cu65/info.json
+++ b/keyboards/capsunlocked/cu65/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0065",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D6", "D7", "D4", "B4", "B5", "B6", "C6", "D5", "C7", "F0", "E6", "B0", "B1", "B7", "B3", "B2"],
         "rows": ["F1", "F4", "F5", "F6", "D3"]
diff --git a/keyboards/capsunlocked/cu65/rules.mk b/keyboards/capsunlocked/cu65/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/capsunlocked/cu65/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/capsunlocked/cu7/info.json b/keyboards/capsunlocked/cu7/keyboard.json
similarity index 86%
rename from keyboards/capsunlocked/cu7/info.json
rename to keyboards/capsunlocked/cu7/keyboard.json
index 06deeacd69..6f96c00e50 100644
--- a/keyboards/capsunlocked/cu7/info.json
+++ b/keyboards/capsunlocked/cu7/keyboard.json
@@ -28,6 +28,16 @@
             "twinkle": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F5", "F7", "F4"],
         "rows": ["D7", "F0", "F6"]
diff --git a/keyboards/capsunlocked/cu7/rules.mk b/keyboards/capsunlocked/cu7/rules.mk
deleted file mode 100644
index c5c4d8f35f..0000000000
--- a/keyboards/capsunlocked/cu7/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
-ENCODER_ENABLE = yes
diff --git a/keyboards/capsunlocked/cu80/v1/info.json b/keyboards/capsunlocked/cu80/v1/keyboard.json
similarity index 98%
rename from keyboards/capsunlocked/cu80/v1/info.json
rename to keyboards/capsunlocked/cu80/v1/keyboard.json
index 34b4e3c95e..a5379a45cc 100644
--- a/keyboards/capsunlocked/cu80/v1/info.json
+++ b/keyboards/capsunlocked/cu80/v1/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F6", "F5", "F4", "F1", "F0", "C7", "C6", "B6", "B0", "E6", "B7", "B3", "B2", "D2", "D3", "D5", "D4"],
         "rows": ["B1", "B5", "B4", "F7", "D7", "D6"]
diff --git a/keyboards/capsunlocked/cu80/v1/rules.mk b/keyboards/capsunlocked/cu80/v1/rules.mk
deleted file mode 100644
index 6fe874e748..0000000000
--- a/keyboards/capsunlocked/cu80/v1/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/carbo65/info.json b/keyboards/carbo65/keyboard.json
similarity index 96%
rename from keyboards/carbo65/info.json
rename to keyboards/carbo65/keyboard.json
index c1a331d7be..f2a4ce0dac 100644
--- a/keyboards/carbo65/info.json
+++ b/keyboards/carbo65/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x4336",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["A1", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "B2", "B10", "B11", "B12", "B13", "B14", "B15"],
         "rows": ["A2", "B9", "B8", "B5", "B4"]
diff --git a/keyboards/carbo65/rules.mk b/keyboards/carbo65/rules.mk
deleted file mode 100644
index d3ca7b060e..0000000000
--- a/keyboards/carbo65/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/catch22/info.json b/keyboards/catch22/keyboard.json
similarity index 91%
rename from keyboards/catch22/info.json
rename to keyboards/catch22/keyboard.json
index baaee6ca98..3c1d9c5777 100644
--- a/keyboards/catch22/info.json
+++ b/keyboards/catch22/keyboard.json
@@ -24,6 +24,15 @@
     "ws2812": {
         "pin": "F6"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": false,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B5", "B4", "E6", "D7", "C6"],
         "rows": ["B6", "B2", "B3", "B1", "F7"]
diff --git a/keyboards/catch22/rules.mk b/keyboards/catch22/rules.mk
deleted file mode 100644
index f258c56857..0000000000
--- a/keyboards/catch22/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  = yes	# Console for debug
-COMMAND_ENABLE  = yes    # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE  = no  # Custom backlighting code is used, so this should not be enabled
-AUDIO_ENABLE  = no # This can be enabled if a speaker is connected to the expansion port. Not compatible with RGBLIGHT below
-RGBLIGHT_ENABLE  = yes # This can be enabled if a ws2812 strip is connected to the expansion port.
diff --git a/keyboards/cest73/tkm/info.json b/keyboards/cest73/tkm/keyboard.json
similarity index 99%
rename from keyboards/cest73/tkm/info.json
rename to keyboards/cest73/tkm/keyboard.json
index 6447189b93..e9aad4461b 100644
--- a/keyboards/cest73/tkm/info.json
+++ b/keyboards/cest73/tkm/keyboard.json
@@ -9,6 +9,15 @@
         "device_version": "0.0.1",
         "force_nkro": true
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D1", "D2", "D3", "D4", "D5", "D6", "D7", "F0", "F1", "F4"],
         "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "C6", "C7", "D0"]
diff --git a/keyboards/cest73/tkm/rules.mk b/keyboards/cest73/tkm/rules.mk
deleted file mode 100644
index cb64434050..0000000000
--- a/keyboards/cest73/tkm/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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/chalice/info.json b/keyboards/chalice/keyboard.json
similarity index 97%
rename from keyboards/chalice/info.json
rename to keyboards/chalice/keyboard.json
index 8e6a6f2ed6..9332431184 100644
--- a/keyboards/chalice/info.json
+++ b/keyboards/chalice/keyboard.json
@@ -27,6 +27,15 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "C6", "B1", "D2", "E6", "B3", "D7"],
         "rows": ["F4", "D1", "D0", "F5", "D4", "F6", "B4", "B5", "B2", "B6"]
diff --git a/keyboards/chalice/rules.mk b/keyboards/chalice/rules.mk
deleted file mode 100644
index b851d0ab39..0000000000
--- a/keyboards/chalice/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/chaos65/info.json b/keyboards/chaos65/keyboard.json
similarity index 99%
rename from keyboards/chaos65/info.json
rename to keyboards/chaos65/keyboard.json
index bd88ac3f5f..ed3f33e0c3 100644
--- a/keyboards/chaos65/info.json
+++ b/keyboards/chaos65/keyboard.json
@@ -9,6 +9,14 @@
         "device_version": "0.0.1",
         "force_nkro": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B0", "B1", "B2", "B3", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "F7", "F6", "F5", "F4"],
         "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/chaos65/rules.mk b/keyboards/chaos65/rules.mk
deleted file mode 100644
index 48888d45c9..0000000000
--- a/keyboards/chaos65/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/charue/charon/info.json b/keyboards/charue/charon/keyboard.json
similarity index 99%
rename from keyboards/charue/charon/info.json
rename to keyboards/charue/charon/keyboard.json
index 12d28b1418..3dede57ba4 100644
--- a/keyboards/charue/charon/info.json
+++ b/keyboards/charue/charon/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x4348",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D3", "D5", "B4", "D7", "D6", "D4", "F7", "F6", "F5", "F4", "F1", "F0", "B5", "B6", "C6"],
         "rows": ["B0", "B1", "B2", "B3", "C7"]
diff --git a/keyboards/charue/charon/rules.mk b/keyboards/charue/charon/rules.mk
deleted file mode 100644
index 3f6eff7f55..0000000000
--- a/keyboards/charue/charon/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 = yes        # 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/charue/sunsetter/info.json b/keyboards/charue/sunsetter/keyboard.json
similarity index 99%
rename from keyboards/charue/sunsetter/info.json
rename to keyboards/charue/sunsetter/keyboard.json
index 0a6d7696e2..565cebf5e2 100644
--- a/keyboards/charue/sunsetter/info.json
+++ b/keyboards/charue/sunsetter/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x5353",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B13", "B12", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "B9", "B8", "B7", "B6", "B5", "B4", "F0", "B3", "A15"],
         "rows": ["A8", "B14", "B11", "B10", "B2"]
diff --git a/keyboards/charue/sunsetter/rules.mk b/keyboards/charue/sunsetter/rules.mk
deleted file mode 100644
index 7f4f202a1b..0000000000
--- a/keyboards/charue/sunsetter/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 = yes        # 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/charue/sunsetter_r2/info.json b/keyboards/charue/sunsetter_r2/keyboard.json
similarity index 99%
rename from keyboards/charue/sunsetter_r2/info.json
rename to keyboards/charue/sunsetter_r2/keyboard.json
index 9bbc6a7f94..b961c21e26 100644
--- a/keyboards/charue/sunsetter_r2/info.json
+++ b/keyboards/charue/sunsetter_r2/keyboard.json
@@ -26,6 +26,15 @@
     "ws2812": {
         "pin": "E6"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "F7", "B1", "D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"],
         "rows": ["B3", "B2", "F4", "F5", "F6"]
diff --git a/keyboards/charue/sunsetter_r2/rules.mk b/keyboards/charue/sunsetter_r2/rules.mk
deleted file mode 100644
index 951dd07d6e..0000000000
--- a/keyboards/charue/sunsetter_r2/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/chavdai40/rev1/info.json b/keyboards/chavdai40/rev1/keyboard.json
similarity index 96%
rename from keyboards/chavdai40/rev1/info.json
rename to keyboards/chavdai40/rev1/keyboard.json
index 67705c25bb..22c4ccfb7b 100644
--- a/keyboards/chavdai40/rev1/info.json
+++ b/keyboards/chavdai40/rev1/keyboard.json
@@ -4,6 +4,14 @@
         "device_version": "0.0.1",
         "max_power": 100
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B8", "B4", "B3", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1"],
         "rows": ["A0", "A15", "B5", "B6"]
diff --git a/keyboards/chavdai40/rev1/rules.mk b/keyboards/chavdai40/rev1/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/chavdai40/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 = 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/chavdai40/rev2/info.json b/keyboards/chavdai40/rev2/keyboard.json
similarity index 96%
rename from keyboards/chavdai40/rev2/info.json
rename to keyboards/chavdai40/rev2/keyboard.json
index acefcabdc7..b43c68604f 100644
--- a/keyboards/chavdai40/rev2/info.json
+++ b/keyboards/chavdai40/rev2/keyboard.json
@@ -4,6 +4,14 @@
         "device_version": "0.0.2",
         "max_power": 100
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B7", "B4", "B3", "A8", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1"],
         "rows": ["A0", "A15", "B5", "B6"]
diff --git a/keyboards/chavdai40/rev2/rules.mk b/keyboards/chavdai40/rev2/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/chavdai40/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 = 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/checkerboards/axon40/info.json b/keyboards/checkerboards/axon40/keyboard.json
similarity index 94%
rename from keyboards/checkerboards/axon40/info.json
rename to keyboards/checkerboards/axon40/keyboard.json
index f909704280..8a3f0d5857 100644
--- a/keyboards/checkerboards/axon40/info.json
+++ b/keyboards/checkerboards/axon40/keyboard.json
@@ -28,6 +28,15 @@
     "ws2812": {
         "pin": "D7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C7", "B7", "D4", "D6", "F0", "F1", "C6", "B6", "B5", "B4", "E6", "B0"],
         "rows": ["D2", "D3", "D1", "D5"]
diff --git a/keyboards/checkerboards/axon40/rules.mk b/keyboards/checkerboards/axon40/rules.mk
deleted file mode 100644
index b851d0ab39..0000000000
--- a/keyboards/checkerboards/axon40/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/checkerboards/candybar_ortho/info.json b/keyboards/checkerboards/candybar_ortho/keyboard.json
similarity index 98%
rename from keyboards/checkerboards/candybar_ortho/info.json
rename to keyboards/checkerboards/candybar_ortho/keyboard.json
index c91f0d924d..6067d1c277 100644
--- a/keyboards/checkerboards/candybar_ortho/info.json
+++ b/keyboards/checkerboards/candybar_ortho/keyboard.json
@@ -28,6 +28,15 @@
     "ws2812": {
         "pin": "B7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "D0", "D1", "D2"],
         "rows": ["B4", "D4", "D7", "D6", "B5", "B6", "C7", "C6"]
diff --git a/keyboards/checkerboards/candybar_ortho/rules.mk b/keyboards/checkerboards/candybar_ortho/rules.mk
deleted file mode 100644
index 28c29a3b4d..0000000000
--- a/keyboards/checkerboards/candybar_ortho/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/checkerboards/g_idb60/info.json b/keyboards/checkerboards/g_idb60/keyboard.json
similarity index 98%
rename from keyboards/checkerboards/g_idb60/info.json
rename to keyboards/checkerboards/g_idb60/keyboard.json
index 0bb9854f96..7ef5a8e0cd 100644
--- a/keyboards/checkerboards/g_idb60/info.json
+++ b/keyboards/checkerboards/g_idb60/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3508",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B6", "C6", "C7", "D4", "F6", "F0", "B0", "F1", "F4", "F5", "D1", "D0", "D3", "D5"],
         "rows": ["D6", "D7", "B4", "B5", "F7"]
diff --git a/keyboards/checkerboards/g_idb60/rules.mk b/keyboards/checkerboards/g_idb60/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/checkerboards/g_idb60/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/checkerboards/nop60/info.json b/keyboards/checkerboards/nop60/keyboard.json
similarity index 97%
rename from keyboards/checkerboards/nop60/info.json
rename to keyboards/checkerboards/nop60/keyboard.json
index f59c70ac29..f12b7a54d2 100644
--- a/keyboards/checkerboards/nop60/info.json
+++ b/keyboards/checkerboards/nop60/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x1416",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "F5", "F4", "D0", "D7", "D3", "D4", "D5", "D6", "F7", "C7", "B4", "B6", "B5"],
         "rows": ["F0", "F1", "E6", "B7", "C6"]
diff --git a/keyboards/checkerboards/nop60/rules.mk b/keyboards/checkerboards/nop60/rules.mk
deleted file mode 100644
index ec64770140..0000000000
--- a/keyboards/checkerboards/nop60/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 = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/checkerboards/plexus75/info.json b/keyboards/checkerboards/plexus75/keyboard.json
similarity index 98%
rename from keyboards/checkerboards/plexus75/info.json
rename to keyboards/checkerboards/plexus75/keyboard.json
index 943262b885..1757cdeb57 100644
--- a/keyboards/checkerboards/plexus75/info.json
+++ b/keyboards/checkerboards/plexus75/keyboard.json
@@ -29,6 +29,16 @@
     "ws2812": {
         "pin": "D3"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true,
+        "unicode": true
+    },
     "matrix_pins": {
         "cols": ["B2", "B0", "D1", "F7", "F6", "F5", "F4", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"],
         "rows": ["D2", "B3", "B1", "F1", "F0"]
diff --git a/keyboards/checkerboards/plexus75/rules.mk b/keyboards/checkerboards/plexus75/rules.mk
deleted file mode 100644
index 4f1bd7941b..0000000000
--- a/keyboards/checkerboards/plexus75/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 = 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
-UNICODE_ENABLE = yes        # Unicode
diff --git a/keyboards/checkerboards/plexus75_he/info.json b/keyboards/checkerboards/plexus75_he/keyboard.json
similarity index 98%
rename from keyboards/checkerboards/plexus75_he/info.json
rename to keyboards/checkerboards/plexus75_he/keyboard.json
index d9817cbbe1..c089e58e61 100644
--- a/keyboards/checkerboards/plexus75_he/info.json
+++ b/keyboards/checkerboards/plexus75_he/keyboard.json
@@ -29,6 +29,15 @@
     "ws2812": {
         "pin": "D4"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C4", "C5", "D3", "C7", "B7", "B6", "B5", "B4"],
         "rows": ["C2", "D0", "D1", "D2", "D6", "B0", "B3", "B2", "C6", "B1"]
diff --git a/keyboards/checkerboards/plexus75_he/rules.mk b/keyboards/checkerboards/plexus75_he/rules.mk
deleted file mode 100644
index 5046e297d0..0000000000
--- a/keyboards/checkerboards/plexus75_he/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/checkerboards/pursuit40/info.json b/keyboards/checkerboards/pursuit40/keyboard.json
similarity index 94%
rename from keyboards/checkerboards/pursuit40/info.json
rename to keyboards/checkerboards/pursuit40/keyboard.json
index f7a0be79e3..6e65dde2f1 100644
--- a/keyboards/checkerboards/pursuit40/info.json
+++ b/keyboards/checkerboards/pursuit40/keyboard.json
@@ -29,6 +29,15 @@
     "ws2812": {
         "pin": "F0"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F1", "E6", "B7", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7"],
         "rows": ["D2", "D1", "F4", "F5"]
diff --git a/keyboards/checkerboards/pursuit40/rules.mk b/keyboards/checkerboards/pursuit40/rules.mk
deleted file mode 100644
index b851d0ab39..0000000000
--- a/keyboards/checkerboards/pursuit40/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/checkerboards/quark_lp/info.json b/keyboards/checkerboards/quark_lp/keyboard.json
similarity index 97%
rename from keyboards/checkerboards/quark_lp/info.json
rename to keyboards/checkerboards/quark_lp/keyboard.json
index 006e454886..35b599879e 100644
--- a/keyboards/checkerboards/quark_lp/info.json
+++ b/keyboards/checkerboards/quark_lp/keyboard.json
@@ -38,6 +38,15 @@
         "speed_steps": 10,
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B6", "B5", "B4", "B3", "B0", "D6", "D5", "D4", "D3", "D2", "D1", "D0"],
         "rows": ["C5", "C4", "C6", "C7"]
diff --git a/keyboards/checkerboards/quark_lp/rules.mk b/keyboards/checkerboards/quark_lp/rules.mk
deleted file mode 100644
index f868af936d..0000000000
--- a/keyboards/checkerboards/quark_lp/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/checkerboards/quark_plus/info.json b/keyboards/checkerboards/quark_plus/keyboard.json
similarity index 97%
rename from keyboards/checkerboards/quark_plus/info.json
rename to keyboards/checkerboards/quark_plus/keyboard.json
index dc5bc478ca..6e7f5a8cc2 100644
--- a/keyboards/checkerboards/quark_plus/info.json
+++ b/keyboards/checkerboards/quark_plus/keyboard.json
@@ -29,6 +29,17 @@
     "ws2812": {
       "pin": "C5"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C6", "D1", "D5", "D4", "D3", "D2"],
         "rows": ["B4", "B1", "C2", "D0", "D6", "B0", "B6", "B5"]
diff --git a/keyboards/checkerboards/quark_plus/rules.mk b/keyboards/checkerboards/quark_plus/rules.mk
deleted file mode 100644
index c10c82105d..0000000000
--- a/keyboards/checkerboards/quark_plus/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 = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes	      # Enable rotary encoder
diff --git a/keyboards/checkerboards/ud40_ortho_alt/info.json b/keyboards/checkerboards/ud40_ortho_alt/keyboard.json
similarity index 98%
rename from keyboards/checkerboards/ud40_ortho_alt/info.json
rename to keyboards/checkerboards/ud40_ortho_alt/keyboard.json
index c47c2c4c6b..4e025c181f 100644
--- a/keyboards/checkerboards/ud40_ortho_alt/info.json
+++ b/keyboards/checkerboards/ud40_ortho_alt/keyboard.json
@@ -29,6 +29,16 @@
     "ws2812": {
         "pin": "D4"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true,
+        "unicode": true
+    },
     "matrix_pins": {
         "cols": ["B2", "B1", "F7", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F5", "F6"],
         "rows": ["E6", "F0", "F1", "F4"]
diff --git a/keyboards/checkerboards/ud40_ortho_alt/rules.mk b/keyboards/checkerboards/ud40_ortho_alt/rules.mk
deleted file mode 100644
index 653e1ef309..0000000000
--- a/keyboards/checkerboards/ud40_ortho_alt/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
-UNICODE_ENABLE = yes        # Unicode
-
diff --git a/keyboards/cherrybstudio/cb1800/info.json b/keyboards/cherrybstudio/cb1800/keyboard.json
similarity index 99%
rename from keyboards/cherrybstudio/cb1800/info.json
rename to keyboards/cherrybstudio/cb1800/keyboard.json
index e6819d40ee..fedcc1c75e 100644
--- a/keyboards/cherrybstudio/cb1800/info.json
+++ b/keyboards/cherrybstudio/cb1800/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x1818",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D0", "D1", "D2", "D3", "D4", "D5", "D6", "D7", "F0", "F1", "F4"],
         "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7", "C6", "C7"]
diff --git a/keyboards/cherrybstudio/cb1800/rules.mk b/keyboards/cherrybstudio/cb1800/rules.mk
deleted file mode 100644
index 95093e241a..0000000000
--- a/keyboards/cherrybstudio/cb1800/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/cherrybstudio/cb65/info.json b/keyboards/cherrybstudio/cb65/keyboard.json
similarity index 99%
rename from keyboards/cherrybstudio/cb65/info.json
rename to keyboards/cherrybstudio/cb65/keyboard.json
index 841dae6103..8f14ec0941 100644
--- a/keyboards/cherrybstudio/cb65/info.json
+++ b/keyboards/cherrybstudio/cb65/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x6565",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D5", "D4", "D6", "D7", "F7", "B5", "B6", "C6"],
         "rows": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3"]
diff --git a/keyboards/cherrybstudio/cb65/rules.mk b/keyboards/cherrybstudio/cb65/rules.mk
deleted file mode 100644
index b5dd02b992..0000000000
--- a/keyboards/cherrybstudio/cb65/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 = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = no		# Encoder support
diff --git a/keyboards/cherrybstudio/cb87/info.json b/keyboards/cherrybstudio/cb87/keyboard.json
similarity index 98%
rename from keyboards/cherrybstudio/cb87/info.json
rename to keyboards/cherrybstudio/cb87/keyboard.json
index 228cc030bb..417c40e53d 100644
--- a/keyboards/cherrybstudio/cb87/info.json
+++ b/keyboards/cherrybstudio/cb87/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x8787",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "F5", "C6", "C7", "F7"],
         "rows": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3"]
diff --git a/keyboards/cherrybstudio/cb87/rules.mk b/keyboards/cherrybstudio/cb87/rules.mk
deleted file mode 100644
index 3d5cb57ad5..0000000000
--- a/keyboards/cherrybstudio/cb87/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/cherrybstudio/cb87rgb/info.json b/keyboards/cherrybstudio/cb87rgb/keyboard.json
similarity index 99%
rename from keyboards/cherrybstudio/cb87rgb/info.json
rename to keyboards/cherrybstudio/cb87rgb/keyboard.json
index e5d5299336..bba6bea541 100644
--- a/keyboards/cherrybstudio/cb87rgb/info.json
+++ b/keyboards/cherrybstudio/cb87rgb/keyboard.json
@@ -61,6 +61,15 @@
         "max_brightness": 200,
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "F5", "C6", "C7", "F7"],
         "rows": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "F6"]
diff --git a/keyboards/cherrybstudio/cb87rgb/rules.mk b/keyboards/cherrybstudio/cb87rgb/rules.mk
deleted file mode 100644
index 2539b3f85f..0000000000
--- a/keyboards/cherrybstudio/cb87rgb/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
-
-RGB_MATRIX_ENABLE = yes
diff --git a/keyboards/cherrybstudio/cb87v2/info.json b/keyboards/cherrybstudio/cb87v2/keyboard.json
similarity index 99%
rename from keyboards/cherrybstudio/cb87v2/info.json
rename to keyboards/cherrybstudio/cb87v2/keyboard.json
index 1023cac5d1..c40bb1778f 100644
--- a/keyboards/cherrybstudio/cb87v2/info.json
+++ b/keyboards/cherrybstudio/cb87v2/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x8788",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D5", "D4", "D6", "D7", "B4", "B5", "F5", "C6", "C7", "F7"],
         "rows": ["B0", "B1", "B2", "B3", "B7", "D0", "D1", "D2", "D3", "F6"]
diff --git a/keyboards/cherrybstudio/cb87v2/rules.mk b/keyboards/cherrybstudio/cb87v2/rules.mk
deleted file mode 100644
index cdde6d344b..0000000000
--- a/keyboards/cherrybstudio/cb87v2/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes      # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/cheshire/curiosity/info.json b/keyboards/cheshire/curiosity/keyboard.json
similarity index 97%
rename from keyboards/cheshire/curiosity/info.json
rename to keyboards/cheshire/curiosity/keyboard.json
index 678305ae32..09b01e896f 100644
--- a/keyboards/cheshire/curiosity/info.json
+++ b/keyboards/cheshire/curiosity/keyboard.json
@@ -25,6 +25,15 @@
     "ws2812": {
         "pin": "B15"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "B9", "B8", "B7", "B6", "B5", "B4", "B3", "A15"],
         "rows": ["B13", "B14", "A4", "A2", "A1"]
diff --git a/keyboards/cheshire/curiosity/rules.mk b/keyboards/cheshire/curiosity/rules.mk
deleted file mode 100644
index 5937fde287..0000000000
--- a/keyboards/cheshire/curiosity/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 = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
diff --git a/keyboards/chickenman/ciel/info.json b/keyboards/chickenman/ciel/keyboard.json
similarity index 98%
rename from keyboards/chickenman/ciel/info.json
rename to keyboards/chickenman/ciel/keyboard.json
index 1dc9812187..d6813a23aa 100644
--- a/keyboards/chickenman/ciel/info.json
+++ b/keyboards/chickenman/ciel/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C6", "B6", "B5", "B4", "B3", "B2", "B1", "D6", "D5", "D4", "D3", "D2", "D1", "D0", "C2"],
         "rows": ["C5", "C4", "B0", "C7", "B7"]
diff --git a/keyboards/chickenman/ciel/rules.mk b/keyboards/chickenman/ciel/rules.mk
deleted file mode 100644
index 59c896dbff..0000000000
--- a/keyboards/chickenman/ciel/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/chlx/merro60/info.json b/keyboards/chlx/merro60/keyboard.json
similarity index 99%
rename from keyboards/chlx/merro60/info.json
rename to keyboards/chlx/merro60/keyboard.json
index f9de8194ba..d34489607a 100644
--- a/keyboards/chlx/merro60/info.json
+++ b/keyboards/chlx/merro60/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0601",
         "device_version": "1.0.0"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B7", "D1", "D0", "B0", "B1", "E6", "B2", "B3", "D2", "D7", "B4", "B6", "C6", "C7", "D6"],
         "rows": ["D4", "D5", "D3", "B5", "F4"]
diff --git a/keyboards/chlx/merro60/rules.mk b/keyboards/chlx/merro60/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/chlx/merro60/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/chocofly/v1/info.json b/keyboards/chocofly/v1/keyboard.json
similarity index 95%
rename from keyboards/chocofly/v1/info.json
rename to keyboards/chocofly/v1/keyboard.json
index f811a6b14b..195d1e9a9f 100644
--- a/keyboards/chocofly/v1/info.json
+++ b/keyboards/chocofly/v1/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x1001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": false,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "B6"],
         "rows": ["D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/chocofly/v1/rules.mk b/keyboards/chocofly/v1/rules.mk
deleted file mode 100644
index 70f23a97a5..0000000000
--- a/keyboards/chocofly/v1/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 = 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
-
-ENCODER_ENABLE = yes
diff --git a/keyboards/chocv/info.json b/keyboards/chocv/keyboard.json
similarity index 93%
rename from keyboards/chocv/info.json
rename to keyboards/chocv/keyboard.json
index e5361b1399..670e46f817 100644
--- a/keyboards/chocv/info.json
+++ b/keyboards/chocv/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x0002",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B6", "B2", "B3", "B1", "F7", "C6", "D7", "E6", "B4", "B5"],
     "rows": ["F4", "F5", "D1", "D0"]
diff --git a/keyboards/chocv/rules.mk b/keyboards/chocv/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/chocv/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/ck60i/info.json b/keyboards/ck60i/keyboard.json
similarity index 95%
rename from keyboards/ck60i/info.json
rename to keyboards/ck60i/keyboard.json
index d35eac9920..62ddd81728 100644
--- a/keyboards/ck60i/info.json
+++ b/keyboards/ck60i/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x6049",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B12", "A2", "A1", "A0", "F1", "F0", "B11", "B10", "B2", "B1", "B0", "A7", "C15", "C14"],
         "rows": ["B9", "C13", "A3", "B14", "A8"]
diff --git a/keyboards/ck60i/rules.mk b/keyboards/ck60i/rules.mk
deleted file mode 100644
index 3ec023e5e8..0000000000
--- a/keyboards/ck60i/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 = 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
-ENCODER_ENABLE = yes
-
diff --git a/keyboards/ckeys/handwire_101/info.json b/keyboards/ckeys/handwire_101/keyboard.json
similarity index 89%
rename from keyboards/ckeys/handwire_101/info.json
rename to keyboards/ckeys/handwire_101/keyboard.json
index 27e43a6512..f8e2b383c2 100644
--- a/keyboards/ckeys/handwire_101/info.json
+++ b/keyboards/ckeys/handwire_101/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x6060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6"],
         "rows": ["F4", "F5", "F6", "F7"]
diff --git a/keyboards/ckeys/handwire_101/rules.mk b/keyboards/ckeys/handwire_101/rules.mk
deleted file mode 100755
index 4cbb58307a..0000000000
--- a/keyboards/ckeys/handwire_101/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = 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
diff --git a/keyboards/ckeys/nakey/info.json b/keyboards/ckeys/nakey/keyboard.json
similarity index 89%
rename from keyboards/ckeys/nakey/info.json
rename to keyboards/ckeys/nakey/keyboard.json
index 5971c432d0..1454858d9d 100644
--- a/keyboards/ckeys/nakey/info.json
+++ b/keyboards/ckeys/nakey/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": false,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["B0", "B1", "B2", "B3"],
     "rows": ["F1", "F4", "F5", "F6", "F7"]
diff --git a/keyboards/ckeys/nakey/rules.mk b/keyboards/ckeys/nakey/rules.mk
deleted file mode 100644
index b6e2a5f9a4..0000000000
--- a/keyboards/ckeys/nakey/rules.mk
+++ /dev/null
@@ -1,11 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/ckeys/obelus/info.json b/keyboards/ckeys/obelus/keyboard.json
similarity index 86%
rename from keyboards/ckeys/obelus/info.json
rename to keyboards/ckeys/obelus/keyboard.json
index 78ef0227c5..969e6a2d49 100644
--- a/keyboards/ckeys/obelus/info.json
+++ b/keyboards/ckeys/obelus/keyboard.json
@@ -8,6 +8,16 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "audio": true,
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "midi": true,
+    "mousekey": false,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["F0", "F1", "B2", "B3"],
     "rows": ["F4", "F5", "F6", "F7"]
diff --git a/keyboards/ckeys/obelus/rules.mk b/keyboards/ckeys/obelus/rules.mk
deleted file mode 100644
index 08744b16ba..0000000000
--- a/keyboards/ckeys/obelus/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
-MIDI_ENABLE = yes           # MIDI support
-AUDIO_ENABLE = yes           # Audio output
diff --git a/keyboards/ckeys/thedora/info.json b/keyboards/ckeys/thedora/keyboard.json
similarity index 88%
rename from keyboards/ckeys/thedora/info.json
rename to keyboards/ckeys/thedora/keyboard.json
index e86d162ace..0e52b24dfa 100644
--- a/keyboards/ckeys/thedora/info.json
+++ b/keyboards/ckeys/thedora/keyboard.json
@@ -8,6 +8,17 @@
     "pid": "0x6060",
     "device_version": "0.0.1"
   },
+  "features": {
+    "audio": true,
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "encoder": true,
+    "extrakey": true,
+    "midi": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["B5", "B4", "B3", "B2", "B1", "B0"],
     "rows": ["A2", "A1", "A0", "B8"]
diff --git a/keyboards/ckeys/thedora/rules.mk b/keyboards/ckeys/thedora/rules.mk
deleted file mode 100755
index ac8d5677b2..0000000000
--- a/keyboards/ckeys/thedora/rules.mk
+++ /dev/null
@@ -1,15 +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 = yes          # Audio output
-
-MIDI_ENABLE = yes           # MIDI support
-ENCODER_ENABLE = yes
diff --git a/keyboards/ckeys/washington/info.json b/keyboards/ckeys/washington/keyboard.json
similarity index 82%
rename from keyboards/ckeys/washington/info.json
rename to keyboards/ckeys/washington/keyboard.json
index d6029eeabb..b6952fe44a 100644
--- a/keyboards/ckeys/washington/info.json
+++ b/keyboards/ckeys/washington/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0x002A",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "oled": true
+    },
     "matrix_pins": {
         "cols": ["F7", "B1", "B3"],
         "rows": ["F4", "F5", "F6"]
diff --git a/keyboards/ckeys/washington/rules.mk b/keyboards/ckeys/washington/rules.mk
deleted file mode 100644
index c6c08dda59..0000000000
--- a/keyboards/ckeys/washington/rules.mk
+++ /dev/null
@@ -1,14 +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
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes        # Enable support for encoders
-OLED_ENABLE = yes
diff --git a/keyboards/clawsome/bookerboard/info.json b/keyboards/clawsome/bookerboard/keyboard.json
similarity index 86%
rename from keyboards/clawsome/bookerboard/info.json
rename to keyboards/clawsome/bookerboard/keyboard.json
index 8c6a4dc0f9..a72260eb60 100644
--- a/keyboards/clawsome/bookerboard/info.json
+++ b/keyboards/clawsome/bookerboard/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x41CE",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B6", "B2", "B3"],
         "rows": ["B5", "B4", "E6", "D7"]
diff --git a/keyboards/clawsome/bookerboard/rules.mk b/keyboards/clawsome/bookerboard/rules.mk
deleted file mode 100644
index afdf78fc5f..0000000000
--- a/keyboards/clawsome/bookerboard/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes        # Mouse keys
-EXTRAKEY_ENABLE = yes        # Audio control and System control
-CONSOLE_ENABLE = yes         # Console for debug
-COMMAND_ENABLE = yes         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no        # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no         # Enable keyboard RGB underglow
-AUDIO_ENABLE = no            # Audio output
diff --git a/keyboards/clawsome/coupe/info.json b/keyboards/clawsome/coupe/keyboard.json
similarity index 95%
rename from keyboards/clawsome/coupe/info.json
rename to keyboards/clawsome/coupe/keyboard.json
index b68fa51029..576b8e7164 100644
--- a/keyboards/clawsome/coupe/info.json
+++ b/keyboards/clawsome/coupe/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x7E94",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B6", "B3", "B2"],
         "rows": ["D7", "D2", "C6", "B5", "D4", "B4", "D0", "D3", "D1", "E6"]
diff --git a/keyboards/clawsome/coupe/rules.mk b/keyboards/clawsome/coupe/rules.mk
deleted file mode 100644
index afdf78fc5f..0000000000
--- a/keyboards/clawsome/coupe/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes        # Mouse keys
-EXTRAKEY_ENABLE = yes        # Audio control and System control
-CONSOLE_ENABLE = yes         # Console for debug
-COMMAND_ENABLE = yes         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no        # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no         # Enable keyboard RGB underglow
-AUDIO_ENABLE = no            # Audio output
diff --git a/keyboards/clawsome/doodle/info.json b/keyboards/clawsome/doodle/keyboard.json
similarity index 82%
rename from keyboards/clawsome/doodle/info.json
rename to keyboards/clawsome/doodle/keyboard.json
index e7883a6f1a..0b3f4cc4e7 100644
--- a/keyboards/clawsome/doodle/info.json
+++ b/keyboards/clawsome/doodle/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D7", "F4", "E6"],
         "rows": ["D4", "C6"]
diff --git a/keyboards/clawsome/doodle/rules.mk b/keyboards/clawsome/doodle/rules.mk
deleted file mode 100644
index 1ac8624bb1..0000000000
--- a/keyboards/clawsome/doodle/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
\ No newline at end of file
diff --git a/keyboards/clawsome/fightpad/info.json b/keyboards/clawsome/fightpad/keyboard.json
similarity index 86%
rename from keyboards/clawsome/fightpad/info.json
rename to keyboards/clawsome/fightpad/keyboard.json
index fbd4673dd7..7333349028 100644
--- a/keyboards/clawsome/fightpad/info.json
+++ b/keyboards/clawsome/fightpad/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x481C",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D7", "E6", "B4", "B2", "B3", "B1", "F7"],
         "rows": ["B5", "B6"]
diff --git a/keyboards/clawsome/fightpad/rules.mk b/keyboards/clawsome/fightpad/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/clawsome/fightpad/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/clawsome/gamebuddy/v1_0/info.json b/keyboards/clawsome/gamebuddy/v1_0/keyboard.json
similarity index 91%
rename from keyboards/clawsome/gamebuddy/v1_0/info.json
rename to keyboards/clawsome/gamebuddy/v1_0/keyboard.json
index 269c4b8602..978a3ad974 100644
--- a/keyboards/clawsome/gamebuddy/v1_0/info.json
+++ b/keyboards/clawsome/gamebuddy/v1_0/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x17B9",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F5", "F6", "F7", "B1", "C6", "D7", "B6"],
         "rows": ["D1", "D0", "E6", "B3", "B2"]
diff --git a/keyboards/clawsome/gamebuddy/v1_0/rules.mk b/keyboards/clawsome/gamebuddy/v1_0/rules.mk
deleted file mode 100644
index afdf78fc5f..0000000000
--- a/keyboards/clawsome/gamebuddy/v1_0/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes        # Mouse keys
-EXTRAKEY_ENABLE = yes        # Audio control and System control
-CONSOLE_ENABLE = yes         # Console for debug
-COMMAND_ENABLE = yes         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no        # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no         # Enable keyboard RGB underglow
-AUDIO_ENABLE = no            # Audio output
diff --git a/keyboards/clawsome/gamebuddy/v1_m/info.json b/keyboards/clawsome/gamebuddy/v1_m/keyboard.json
similarity index 91%
rename from keyboards/clawsome/gamebuddy/v1_m/info.json
rename to keyboards/clawsome/gamebuddy/v1_m/keyboard.json
index 3709bbbe3c..dd9f39f97e 100644
--- a/keyboards/clawsome/gamebuddy/v1_m/info.json
+++ b/keyboards/clawsome/gamebuddy/v1_m/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B1", "F7", "F6", "F5", "E6", "B4", "B6"],
         "rows": ["C6", "D7", "B5", "B3", "B2"]
diff --git a/keyboards/clawsome/gamebuddy/v1_m/rules.mk b/keyboards/clawsome/gamebuddy/v1_m/rules.mk
deleted file mode 100644
index 1ac8624bb1..0000000000
--- a/keyboards/clawsome/gamebuddy/v1_m/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
\ No newline at end of file
diff --git a/keyboards/clawsome/hatchback/info.json b/keyboards/clawsome/hatchback/keyboard.json
similarity index 97%
rename from keyboards/clawsome/hatchback/info.json
rename to keyboards/clawsome/hatchback/keyboard.json
index 90d1ad6ee2..6da4bd4685 100644
--- a/keyboards/clawsome/hatchback/info.json
+++ b/keyboards/clawsome/hatchback/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "B1", "B3", "B2", "D5", "C7", "F1"],
         "rows": ["B0", "B6", "D4", "B4", "D0", "B5", "D1", "E6", "D2", "D7", "D3", "C6"]
diff --git a/keyboards/clawsome/hatchback/rules.mk b/keyboards/clawsome/hatchback/rules.mk
deleted file mode 100644
index 309e55c9f4..0000000000
--- a/keyboards/clawsome/hatchback/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/clawsome/luggage_rack/info.json b/keyboards/clawsome/luggage_rack/keyboard.json
similarity index 87%
rename from keyboards/clawsome/luggage_rack/info.json
rename to keyboards/clawsome/luggage_rack/keyboard.json
index 5996c9d8f4..2f53bdf49e 100644
--- a/keyboards/clawsome/luggage_rack/info.json
+++ b/keyboards/clawsome/luggage_rack/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "D0", "D1"],
         "rows": ["D3", "F4", "B0", "B2", "F7", "B6", "B1", "F5", "F6"]
diff --git a/keyboards/clawsome/luggage_rack/rules.mk b/keyboards/clawsome/luggage_rack/rules.mk
deleted file mode 100644
index 309e55c9f4..0000000000
--- a/keyboards/clawsome/luggage_rack/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/clawsome/numeros/info.json b/keyboards/clawsome/numeros/keyboard.json
similarity index 89%
rename from keyboards/clawsome/numeros/info.json
rename to keyboards/clawsome/numeros/keyboard.json
index c1b3565b63..728a1a1853 100644
--- a/keyboards/clawsome/numeros/info.json
+++ b/keyboards/clawsome/numeros/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B3", "E6", "D7", "D4"],
         "rows": ["D0", "C6", "B2", "B6", "B5"]
diff --git a/keyboards/clawsome/numeros/rules.mk b/keyboards/clawsome/numeros/rules.mk
deleted file mode 100644
index afdf78fc5f..0000000000
--- a/keyboards/clawsome/numeros/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes        # Mouse keys
-EXTRAKEY_ENABLE = yes        # Audio control and System control
-CONSOLE_ENABLE = yes         # Console for debug
-COMMAND_ENABLE = yes         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no        # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no         # Enable keyboard RGB underglow
-AUDIO_ENABLE = no            # Audio output
diff --git a/keyboards/clawsome/roadster/info.json b/keyboards/clawsome/roadster/keyboard.json
similarity index 94%
rename from keyboards/clawsome/roadster/info.json
rename to keyboards/clawsome/roadster/keyboard.json
index 2e5bc24484..895b97721b 100644
--- a/keyboards/clawsome/roadster/info.json
+++ b/keyboards/clawsome/roadster/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "C6", "D7", "E6", "B4", "B5", "B6", "B2", "B3", "B1", "F7", "F6"],
         "rows": ["D2", "D3", "D0", "D1"]
diff --git a/keyboards/clawsome/roadster/rules.mk b/keyboards/clawsome/roadster/rules.mk
deleted file mode 100644
index 309e55c9f4..0000000000
--- a/keyboards/clawsome/roadster/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/clawsome/sedan/info.json b/keyboards/clawsome/sedan/keyboard.json
similarity index 96%
rename from keyboards/clawsome/sedan/info.json
rename to keyboards/clawsome/sedan/keyboard.json
index dd116e6487..7ff4980a7c 100644
--- a/keyboards/clawsome/sedan/info.json
+++ b/keyboards/clawsome/sedan/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x8C78",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B0", "F4", "F7", "B1", "B3", "B2", "B6", "F0", "F1", "C7", "D5", "B7", "B5", "B4", "E6"],
         "rows": ["C6", "D4", "D0", "D1", "D3"]
diff --git a/keyboards/clawsome/sedan/rules.mk b/keyboards/clawsome/sedan/rules.mk
deleted file mode 100644
index afdf78fc5f..0000000000
--- a/keyboards/clawsome/sedan/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes        # Mouse keys
-EXTRAKEY_ENABLE = yes        # Audio control and System control
-CONSOLE_ENABLE = yes         # Console for debug
-COMMAND_ENABLE = yes         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no        # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no         # Enable keyboard RGB underglow
-AUDIO_ENABLE = no            # Audio output
diff --git a/keyboards/clawsome/sidekick/info.json b/keyboards/clawsome/sidekick/keyboard.json
similarity index 91%
rename from keyboards/clawsome/sidekick/info.json
rename to keyboards/clawsome/sidekick/keyboard.json
index ee4df7538c..4f535d09aa 100644
--- a/keyboards/clawsome/sidekick/info.json
+++ b/keyboards/clawsome/sidekick/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xDB9F",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F6", "F5", "B1", "B3", "E6", "D7", "D4"],
         "rows": ["D0", "C6", "B2", "B6", "B5"]
diff --git a/keyboards/clawsome/sidekick/rules.mk b/keyboards/clawsome/sidekick/rules.mk
deleted file mode 100644
index afdf78fc5f..0000000000
--- a/keyboards/clawsome/sidekick/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes        # Mouse keys
-EXTRAKEY_ENABLE = yes        # Audio control and System control
-CONSOLE_ENABLE = yes         # Console for debug
-COMMAND_ENABLE = yes         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no        # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no         # Enable keyboard RGB underglow
-AUDIO_ENABLE = no            # Audio output
diff --git a/keyboards/clawsome/suv/info.json b/keyboards/clawsome/suv/keyboard.json
similarity index 97%
rename from keyboards/clawsome/suv/info.json
rename to keyboards/clawsome/suv/keyboard.json
index 2f0b2d6bfe..ec84d6117c 100644
--- a/keyboards/clawsome/suv/info.json
+++ b/keyboards/clawsome/suv/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D3", "D2", "D1", "B4", "B5", "B7", "D5", "C7", "F1", "F5", "F4"],
         "rows": ["F0", "B6", "D0", "F6", "D4", "F7", "B3", "B1", "B0", "C6", "B2", "D7"]
diff --git a/keyboards/clawsome/suv/rules.mk b/keyboards/clawsome/suv/rules.mk
deleted file mode 100644
index 1ac8624bb1..0000000000
--- a/keyboards/clawsome/suv/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
\ No newline at end of file
diff --git a/keyboards/cmm_studio/fuji65/info.json b/keyboards/cmm_studio/fuji65/keyboard.json
similarity index 99%
rename from keyboards/cmm_studio/fuji65/info.json
rename to keyboards/cmm_studio/fuji65/keyboard.json
index 860608042f..c4f1e5156e 100644
--- a/keyboards/cmm_studio/fuji65/info.json
+++ b/keyboards/cmm_studio/fuji65/keyboard.json
@@ -28,6 +28,15 @@
     "ws2812": {
         "pin": "E6"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "B0", "B1", "B2", "B3", "D5", "D3", "D2", "D1", "D0"],
         "rows": ["B5", "B4", "D7", "D6", "B6"]
diff --git a/keyboards/cmm_studio/fuji65/rules.mk b/keyboards/cmm_studio/fuji65/rules.mk
deleted file mode 100644
index 7db37f0282..0000000000
--- a/keyboards/cmm_studio/fuji65/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = 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
-
-# generated by KBFirmware JSON to QMK Parser
-# https://noroadsleft.github.io/kbf_qmk_converter/
diff --git a/keyboards/cmm_studio/saka68/hotswap/info.json b/keyboards/cmm_studio/saka68/hotswap/keyboard.json
similarity index 97%
rename from keyboards/cmm_studio/saka68/hotswap/info.json
rename to keyboards/cmm_studio/saka68/hotswap/keyboard.json
index e2327e8145..6dc3ec639a 100644
--- a/keyboards/cmm_studio/saka68/hotswap/info.json
+++ b/keyboards/cmm_studio/saka68/hotswap/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x5348",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "D6", "D7", "B4", "B5", "B6", "C6", "F5", "F4", "F1", "F0", "B1", "B2", "B3", "D3", "D5"],
         "rows": ["D2", "D1", "B0", "F6", "F7"]
diff --git a/keyboards/cmm_studio/saka68/hotswap/rules.mk b/keyboards/cmm_studio/saka68/hotswap/rules.mk
deleted file mode 100644
index 309e55c9f4..0000000000
--- a/keyboards/cmm_studio/saka68/hotswap/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/cmm_studio/saka68/solder/info.json b/keyboards/cmm_studio/saka68/solder/keyboard.json
similarity index 98%
rename from keyboards/cmm_studio/saka68/solder/info.json
rename to keyboards/cmm_studio/saka68/solder/keyboard.json
index 145883fc1d..d5aea40763 100644
--- a/keyboards/cmm_studio/saka68/solder/info.json
+++ b/keyboards/cmm_studio/saka68/solder/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x534B",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "D6", "D7", "B4", "B5", "B6", "C6", "F5", "F4", "F1", "F0", "B1", "B2", "B3", "D2", "D3", "D5"],
         "rows": ["D1", "D0", "B0", "F6", "F7"]
diff --git a/keyboards/cmm_studio/saka68/solder/rules.mk b/keyboards/cmm_studio/saka68/solder/rules.mk
deleted file mode 100644
index 6fe874e748..0000000000
--- a/keyboards/cmm_studio/saka68/solder/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/coarse/cordillera/info.json b/keyboards/coarse/cordillera/keyboard.json
similarity index 98%
rename from keyboards/coarse/cordillera/info.json
rename to keyboards/coarse/cordillera/keyboard.json
index 7252f65f29..de78b3027c 100644
--- a/keyboards/coarse/cordillera/info.json
+++ b/keyboards/coarse/cordillera/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x1401",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B15", "B14", "B13", "B12", "B11", "B10", "B2", "B1", "B8", "B7", "B6", "B5", "B4", "B3", "A15", "A14"],
         "rows": ["A13", "B9", "F1", "A10", "A9"]
diff --git a/keyboards/coarse/cordillera/rules.mk b/keyboards/coarse/cordillera/rules.mk
deleted file mode 100644
index d6cd9d5f0d..0000000000
--- a/keyboards/coarse/cordillera/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 = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
diff --git a/keyboards/coban/pad3a/info.json b/keyboards/coban/pad3a/keyboard.json
similarity index 80%
rename from keyboards/coban/pad3a/info.json
rename to keyboards/coban/pad3a/keyboard.json
index fc5c8ee71e..a9a78b8220 100644
--- a/keyboards/coban/pad3a/info.json
+++ b/keyboards/coban/pad3a/keyboard.json
@@ -14,6 +14,15 @@
             {"pin_a": "GP5", "pin_b": "GP4"}
         ]
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "direct": [
             ["GP8", "GP7", "GP6"]
diff --git a/keyboards/coban/pad3a/rules.mk b/keyboards/coban/pad3a/rules.mk
deleted file mode 100644
index 62aabd3643..0000000000
--- a/keyboards/coban/pad3a/rules.mk
+++ /dev/null
@@ -1,3 +0,0 @@
-MOUSEKEY_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-ENCODER_ENABLE = yes
diff --git a/keyboards/compound/info.json b/keyboards/compound/keyboard.json
similarity index 95%
rename from keyboards/compound/info.json
rename to keyboards/compound/keyboard.json
index 9f31c7efc1..a0a1e1e949 100644
--- a/keyboards/compound/info.json
+++ b/keyboards/compound/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xB0BA",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F0", "D5", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1"],
         "rows": ["B0", "B7", "D0", "D1", "D2"]
diff --git a/keyboards/compound/rules.mk b/keyboards/compound/rules.mk
deleted file mode 100644
index 6fe874e748..0000000000
--- a/keyboards/compound/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/contender/info.json b/keyboards/contender/keyboard.json
similarity index 92%
rename from keyboards/contender/info.json
rename to keyboards/contender/keyboard.json
index b09556f3d6..5bef1f0633 100644
--- a/keyboards/contender/info.json
+++ b/keyboards/contender/keyboard.json
@@ -29,6 +29,15 @@
             "alternating": true
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C7", "D6", "B3", "B0", "B1"],
         "rows": ["D4", "D3", "B5", "B7", "B4", "B2"]
diff --git a/keyboards/contender/rules.mk b/keyboards/contender/rules.mk
deleted file mode 100644
index 951dd07d6e..0000000000
--- a/keyboards/contender/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/converter/a1200/miss1200/info.json b/keyboards/converter/a1200/miss1200/keyboard.json
similarity index 75%
rename from keyboards/converter/a1200/miss1200/info.json
rename to keyboards/converter/a1200/miss1200/keyboard.json
index 74d569b8d9..1f7bfcda3f 100644
--- a/keyboards/converter/a1200/miss1200/info.json
+++ b/keyboards/converter/a1200/miss1200/keyboard.json
@@ -6,6 +6,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["D0", "D1", "C7", "D6", "B7", "B6", "B5", "B4", "E6", "D7", "C6", "D4", "B2", "D5", "D3", "D2"],
         "rows": ["F7", "F6", "F5", "F4", "F1", "F0", "B1", "B3"]
diff --git a/keyboards/converter/a1200/miss1200/rules.mk b/keyboards/converter/a1200/miss1200/rules.mk
deleted file mode 100644
index ac2c4626d9..0000000000
--- a/keyboards/converter/a1200/miss1200/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 = 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/converter/a1200/teensy2pp/info.json b/keyboards/converter/a1200/teensy2pp/keyboard.json
similarity index 74%
rename from keyboards/converter/a1200/teensy2pp/info.json
rename to keyboards/converter/a1200/teensy2pp/keyboard.json
index e4d0c09c0f..0766123913 100644
--- a/keyboards/converter/a1200/teensy2pp/info.json
+++ b/keyboards/converter/a1200/teensy2pp/keyboard.json
@@ -6,6 +6,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D2", "D3", "D4", "D5", "D6", "D7", "E0", "E1", "C0", "C1", "C2", "C3", "C4", "C5", "C6", "C7"],
         "rows": ["F0", "F1", "F2", "F3", "F4", "F5", "F6", "F7"]
diff --git a/keyboards/converter/a1200/teensy2pp/rules.mk b/keyboards/converter/a1200/teensy2pp/rules.mk
deleted file mode 100644
index b8f2be564d..0000000000
--- a/keyboards/converter/a1200/teensy2pp/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/converter/numeric_keypad_iie/info.json b/keyboards/converter/numeric_keypad_iie/keyboard.json
similarity index 91%
rename from keyboards/converter/numeric_keypad_iie/info.json
rename to keyboards/converter/numeric_keypad_iie/keyboard.json
index abec316be7..6dcffe7e21 100644
--- a/keyboards/converter/numeric_keypad_iie/info.json
+++ b/keyboards/converter/numeric_keypad_iie/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": ["D1", "D0", "D4", "C6", "D7", "E6"],
         "rows": ["B0", "B2", "D2", "D3"]
diff --git a/keyboards/converter/numeric_keypad_iie/rules.mk b/keyboards/converter/numeric_keypad_iie/rules.mk
deleted file mode 100644
index fce764c22d..0000000000
--- a/keyboards/converter/numeric_keypad_iie/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/cool836a/info.json b/keyboards/cool836a/keyboard.json
similarity index 93%
rename from keyboards/cool836a/info.json
rename to keyboards/cool836a/keyboard.json
index 8f7f688a6b..18dd9cfcdc 100644
--- a/keyboards/cool836a/info.json
+++ b/keyboards/cool836a/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", "D0", "B2", "C6", "D7", "E6"],
         "rows": ["D1", "B5", "B4", "F4", "B1", "B6"]
diff --git a/keyboards/cool836a/rules.mk b/keyboards/cool836a/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/cool836a/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/copenhagen_click/click_pad_v1/info.json b/keyboards/copenhagen_click/click_pad_v1/keyboard.json
similarity index 76%
rename from keyboards/copenhagen_click/click_pad_v1/info.json
rename to keyboards/copenhagen_click/click_pad_v1/keyboard.json
index 9eee0f4fec..1c402db576 100755
--- a/keyboards/copenhagen_click/click_pad_v1/info.json
+++ b/keyboards/copenhagen_click/click_pad_v1/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x27DB",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F5"],
         "rows": ["F7"]
diff --git a/keyboards/copenhagen_click/click_pad_v1/rules.mk b/keyboards/copenhagen_click/click_pad_v1/rules.mk
deleted file mode 100755
index 8a6570c496..0000000000
--- a/keyboards/copenhagen_click/click_pad_v1/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
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/coseyfannitutti/discipad/info.json b/keyboards/coseyfannitutti/discipad/keyboard.json
similarity index 89%
rename from keyboards/coseyfannitutti/discipad/info.json
rename to keyboards/coseyfannitutti/discipad/keyboard.json
index 6950e4d17c..a169863dba 100644
--- a/keyboards/coseyfannitutti/discipad/info.json
+++ b/keyboards/coseyfannitutti/discipad/keyboard.json
@@ -9,6 +9,14 @@
         "device_version": "0.0.1",
         "max_power": 100
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C0", "C1", "C2", "C3"],
         "rows": ["B1", "B0", "D7", "D6", "D4"]
diff --git a/keyboards/coseyfannitutti/discipad/rules.mk b/keyboards/coseyfannitutti/discipad/rules.mk
deleted file mode 100644
index 6e0404820c..0000000000
--- a/keyboards/coseyfannitutti/discipad/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/coseyfannitutti/mullet/info.json b/keyboards/coseyfannitutti/mullet/keyboard.json
similarity index 96%
rename from keyboards/coseyfannitutti/mullet/info.json
rename to keyboards/coseyfannitutti/mullet/keyboard.json
index 3b63ece220..1cc76eccfa 100644
--- a/keyboards/coseyfannitutti/mullet/info.json
+++ b/keyboards/coseyfannitutti/mullet/keyboard.json
@@ -29,6 +29,15 @@
     "ws2812": {
         "pin": "D5"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B2", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D2", "D3"],
         "rows": ["D0", "D1", "B0", "F0", "F1"]
diff --git a/keyboards/coseyfannitutti/mullet/rules.mk b/keyboards/coseyfannitutti/mullet/rules.mk
deleted file mode 100644
index b0ffb80ff3..0000000000
--- a/keyboards/coseyfannitutti/mullet/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 = 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 = yes        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/coseyfannitutti/mulletpad/info.json b/keyboards/coseyfannitutti/mulletpad/keyboard.json
similarity index 89%
rename from keyboards/coseyfannitutti/mulletpad/info.json
rename to keyboards/coseyfannitutti/mulletpad/keyboard.json
index 7de583e8a9..13e7212297 100644
--- a/keyboards/coseyfannitutti/mulletpad/info.json
+++ b/keyboards/coseyfannitutti/mulletpad/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x6666",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F0", "C7", "C6", "B6"],
         "rows": ["F4", "F1", "F5", "F6", "F7"]
diff --git a/keyboards/coseyfannitutti/mulletpad/rules.mk b/keyboards/coseyfannitutti/mulletpad/rules.mk
deleted file mode 100644
index 7829a2753b..0000000000
--- a/keyboards/coseyfannitutti/mulletpad/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 = 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/coseyfannitutti/romeo/info.json b/keyboards/coseyfannitutti/romeo/keyboard.json
similarity index 98%
rename from keyboards/coseyfannitutti/romeo/info.json
rename to keyboards/coseyfannitutti/romeo/keyboard.json
index 54559abad6..5392cf00f1 100644
--- a/keyboards/coseyfannitutti/romeo/info.json
+++ b/keyboards/coseyfannitutti/romeo/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x4069",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C5", "C4", "C3", "D0", "C2", "D1", "C1", "C0", "D4", "B0", "D7", "D6"],
         "rows": ["B1", "B4", "B3", "B2"]
diff --git a/keyboards/coseyfannitutti/romeo/rules.mk b/keyboards/coseyfannitutti/romeo/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/coseyfannitutti/romeo/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/cosmo65/info.json b/keyboards/cosmo65/keyboard.json
similarity index 95%
rename from keyboards/cosmo65/info.json
rename to keyboards/cosmo65/keyboard.json
index 1cc4ff4e63..1814b3f0d0 100644
--- a/keyboards/cosmo65/info.json
+++ b/keyboards/cosmo65/keyboard.json
@@ -25,6 +25,15 @@
     "ws2812": {
         "pin": "F7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["E6", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "D1", "D2", "D3", "F1", "F6"],
         "rows": ["D5", "D0", "F0", "F5", "F4"]
diff --git a/keyboards/cosmo65/rules.mk b/keyboards/cosmo65/rules.mk
deleted file mode 100644
index 940a788add..0000000000
--- a/keyboards/cosmo65/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
\ No newline at end of file
diff --git a/keyboards/cozykeys/bloomer/v2/info.json b/keyboards/cozykeys/bloomer/v2/keyboard.json
similarity index 97%
rename from keyboards/cozykeys/bloomer/v2/info.json
rename to keyboards/cozykeys/bloomer/v2/keyboard.json
index 1d519d7aad..9f09db86fa 100644
--- a/keyboards/cozykeys/bloomer/v2/info.json
+++ b/keyboards/cozykeys/bloomer/v2/keyboard.json
@@ -2,6 +2,15 @@
   "usb": {
     "device_version": "0.0.2"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "B1", "B4", "C6", "E6", "B5", "B6", "B7", "D6", "C7"],
     "rows": ["D0", "D1", "D3", "D2", "D4", "B2"]
diff --git a/keyboards/cozykeys/bloomer/v2/rules.mk b/keyboards/cozykeys/bloomer/v2/rules.mk
deleted file mode 100644
index 951dd07d6e..0000000000
--- a/keyboards/cozykeys/bloomer/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 = 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/cozykeys/bloomer/v3/info.json b/keyboards/cozykeys/bloomer/v3/keyboard.json
similarity index 97%
rename from keyboards/cozykeys/bloomer/v3/info.json
rename to keyboards/cozykeys/bloomer/v3/keyboard.json
index 3b630f852a..a0f04956af 100644
--- a/keyboards/cozykeys/bloomer/v3/info.json
+++ b/keyboards/cozykeys/bloomer/v3/keyboard.json
@@ -2,6 +2,15 @@
   "usb": {
     "device_version": "0.0.3"
   },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "B1", "B4", "C6", "E6", "B5", "B6", "B7", "D6", "C7"],
     "rows": ["D0", "D1", "D3", "D2", "D4", "B2"]
diff --git a/keyboards/cozykeys/bloomer/v3/rules.mk b/keyboards/cozykeys/bloomer/v3/rules.mk
deleted file mode 100644
index aa4c817d2a..0000000000
--- a/keyboards/cozykeys/bloomer/v3/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/cozykeys/speedo/v2/info.json b/keyboards/cozykeys/speedo/v2/keyboard.json
similarity index 96%
rename from keyboards/cozykeys/speedo/v2/info.json
rename to keyboards/cozykeys/speedo/v2/keyboard.json
index 9e70d28b41..48412e7e7d 100644
--- a/keyboards/cozykeys/speedo/v2/info.json
+++ b/keyboards/cozykeys/speedo/v2/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x1192",
     "device_version": "0.0.2"
   },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "B6", "B5", "D0", "B7", "B3", "B2", "B1", "B0"],
     "rows": ["D1", "D2", "D3", "C6", "C7"]
diff --git a/keyboards/cozykeys/speedo/v2/rules.mk b/keyboards/cozykeys/speedo/v2/rules.mk
deleted file mode 100644
index 59c896dbff..0000000000
--- a/keyboards/cozykeys/speedo/v2/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 = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/craftwalk/info.json b/keyboards/craftwalk/keyboard.json
similarity index 89%
rename from keyboards/craftwalk/info.json
rename to keyboards/craftwalk/keyboard.json
index 51030e9e64..e1cee6d56b 100644
--- a/keyboards/craftwalk/info.json
+++ b/keyboards/craftwalk/keyboard.json
@@ -26,6 +26,15 @@
     "ws2812": {
       "pin": "D3"
     },
+    "features": {
+        "bootmagic": false,
+        "command": true,
+        "console": true,
+        "extrakey": false,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
       "cols": ["B1", "F7", "F5", "F4", "B2", "E6", "B4"],
       "rows": ["F6", "B3", "B5"]
diff --git a/keyboards/craftwalk/rules.mk b/keyboards/craftwalk/rules.mk
deleted file mode 100644
index 2ce5bcb2bb..0000000000
--- a/keyboards/craftwalk/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 = no        # 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 = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/crawlpad/info.json b/keyboards/crawlpad/keyboard.json
similarity index 91%
rename from keyboards/crawlpad/info.json
rename to keyboards/crawlpad/keyboard.json
index 3eb3b32955..1e9bb74c76 100644
--- a/keyboards/crawlpad/info.json
+++ b/keyboards/crawlpad/keyboard.json
@@ -26,6 +26,14 @@
   "ws2812": {
     "pin": "D3"
   },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["D4", "D5", "D6", "D7"],
     "rows": ["F0", "F1", "F4", "F5"]
diff --git a/keyboards/crawlpad/rules.mk b/keyboards/crawlpad/rules.mk
deleted file mode 100755
index 516dd41479..0000000000
--- a/keyboards/crawlpad/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 = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # [Crawlpad] Custom backlighting code is used, so this should not be enabled
-AUDIO_ENABLE = no           # [Crawlpad] This can be enabled if a speaker is connected to the expansion port. Not compatible with RGBLIGHT below
-RGBLIGHT_ENABLE = no        # [Crawlpad] This can be enabled if a ws2812 strip is connected to the expansion port.
diff --git a/keyboards/crazy_keyboard_68/info.json b/keyboards/crazy_keyboard_68/keyboard.json
similarity index 96%
rename from keyboards/crazy_keyboard_68/info.json
rename to keyboards/crazy_keyboard_68/keyboard.json
index 704bcb5897..fa36b106be 100644
--- a/keyboards/crazy_keyboard_68/info.json
+++ b/keyboards/crazy_keyboard_68/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x13DE",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "B5", "B4", "D7", "D6", "B3", "F4"],
         "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/crazy_keyboard_68/rules.mk b/keyboards/crazy_keyboard_68/rules.mk
deleted file mode 100644
index b851d0ab39..0000000000
--- a/keyboards/crazy_keyboard_68/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/crbn/info.json b/keyboards/crbn/keyboard.json
similarity index 97%
rename from keyboards/crbn/info.json
rename to keyboards/crbn/keyboard.json
index e227792440..63c8247047 100644
--- a/keyboards/crbn/info.json
+++ b/keyboards/crbn/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x0002",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "encoder": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5", "B6", "B2"],
     "rows": ["B3", "B1", "F7", "F6"]
diff --git a/keyboards/crbn/rules.mk b/keyboards/crbn/rules.mk
deleted file mode 100644
index 131aa72aeb..0000000000
--- a/keyboards/crbn/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
-ENCODER_ENABLE = yes
diff --git a/keyboards/creatkeebs/glacier/info.json b/keyboards/creatkeebs/glacier/keyboard.json
similarity index 97%
rename from keyboards/creatkeebs/glacier/info.json
rename to keyboards/creatkeebs/glacier/keyboard.json
index 8b4aeacfca..c6b5dccd2c 100644
--- a/keyboards/creatkeebs/glacier/info.json
+++ b/keyboards/creatkeebs/glacier/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x6060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D4", "D6", "D7", "B4", "B5", "F6", "B0", "B6", "C6", "C7", "B1", "B2", "B3", "B7", "D3", "D2", "D1"],
         "rows": ["F0", "F1", "F4", "E6", "F5", "D0"]
diff --git a/keyboards/creatkeebs/glacier/rules.mk b/keyboards/creatkeebs/glacier/rules.mk
deleted file mode 100644
index 241d1099ca..0000000000
--- a/keyboards/creatkeebs/glacier/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 = no          # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no     # Enable keyboard backlight functionality
-AUDIO_ENABLE = no         # Enable keyboard RGB underglow
-RGBLIGHT_ENABLE = no      # Audio output
diff --git a/keyboards/creatkeebs/thera/info.json b/keyboards/creatkeebs/thera/keyboard.json
similarity index 99%
rename from keyboards/creatkeebs/thera/info.json
rename to keyboards/creatkeebs/thera/keyboard.json
index ee098dfcb0..ab10fda324 100644
--- a/keyboards/creatkeebs/thera/info.json
+++ b/keyboards/creatkeebs/thera/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x6061",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["D0", "D1", "D2", "D3", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5"],
         "rows": ["B2", "B1", "B0", "E6", "B3", "B7"]
diff --git a/keyboards/creatkeebs/thera/rules.mk b/keyboards/creatkeebs/thera/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/creatkeebs/thera/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/crin/info.json b/keyboards/crin/keyboard.json
similarity index 99%
rename from keyboards/crin/info.json
rename to keyboards/crin/keyboard.json
index 7e2c402a11..e668021936 100644
--- a/keyboards/crin/info.json
+++ b/keyboards/crin/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xCC11",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "B9", "B8", "B7", "B6", "B5", "B4", "B3"],
         "rows": ["A9", "A8", "B15", "B14", "B13"]
diff --git a/keyboards/crin/rules.mk b/keyboards/crin/rules.mk
deleted file mode 100644
index 7f4f202a1b..0000000000
--- a/keyboards/crin/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 = yes        # 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/cutie_club/borsdorf/info.json b/keyboards/cutie_club/borsdorf/keyboard.json
similarity index 97%
rename from keyboards/cutie_club/borsdorf/info.json
rename to keyboards/cutie_club/borsdorf/keyboard.json
index 0d038b74c1..ba3b6f8376 100644
--- a/keyboards/cutie_club/borsdorf/info.json
+++ b/keyboards/cutie_club/borsdorf/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x6D8A",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B11", "B10", "B2", "B1", "B0", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0", "F1", "F0"],
         "rows": ["A15", "A14", "B12", "B5", "B4"]
diff --git a/keyboards/cutie_club/borsdorf/rules.mk b/keyboards/cutie_club/borsdorf/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/cutie_club/borsdorf/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/cutie_club/giant_macro_pad/info.json b/keyboards/cutie_club/giant_macro_pad/keyboard.json
similarity index 99%
rename from keyboards/cutie_club/giant_macro_pad/info.json
rename to keyboards/cutie_club/giant_macro_pad/keyboard.json
index 8132fa62a5..fc5ce85a2a 100644
--- a/keyboards/cutie_club/giant_macro_pad/info.json
+++ b/keyboards/cutie_club/giant_macro_pad/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x74B6",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C9", "C8", "C7", "C6", "B15", "B14", "B13", "B12", "A8", "A15", "B9", "A2", "A1", "A0", "C3", "C2", "C1", "C0", "F1", "F0"],
         "rows": ["C10", "C11", "C12", "D2", "B3", "B4", "B5", "B6", "B7", "B8", "A3", "B2", "B1", "B0", "C5", "C4", "A7", "A6", "A5", "A4"]
diff --git a/keyboards/cutie_club/giant_macro_pad/rules.mk b/keyboards/cutie_club/giant_macro_pad/rules.mk
deleted file mode 100755
index ab2c49da70..0000000000
--- a/keyboards/cutie_club/giant_macro_pad/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/cutie_club/keebcats/denis/info.json b/keyboards/cutie_club/keebcats/denis/keyboard.json
similarity index 99%
rename from keyboards/cutie_club/keebcats/denis/info.json
rename to keyboards/cutie_club/keebcats/denis/keyboard.json
index 3d3abea434..9f583d9797 100644
--- a/keyboards/cutie_club/keebcats/denis/info.json
+++ b/keyboards/cutie_club/keebcats/denis/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xB260",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["E6", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1"],
         "rows": ["B2", "D0", "F5", "F4", "F1"]
diff --git a/keyboards/cutie_club/keebcats/denis/rules.mk b/keyboards/cutie_club/keebcats/denis/rules.mk
deleted file mode 100644
index b306c637e9..0000000000
--- a/keyboards/cutie_club/keebcats/denis/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable bootmagic
-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/cutie_club/keebcats/dougal/info.json b/keyboards/cutie_club/keebcats/dougal/keyboard.json
similarity index 98%
rename from keyboards/cutie_club/keebcats/dougal/info.json
rename to keyboards/cutie_club/keebcats/dougal/keyboard.json
index da7f99283b..19a422b9ba 100644
--- a/keyboards/cutie_club/keebcats/dougal/info.json
+++ b/keyboards/cutie_club/keebcats/dougal/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xB265",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["E6", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "B7"],
         "rows": ["B2", "D0", "F5", "F4", "F1"]
diff --git a/keyboards/cutie_club/keebcats/dougal/rules.mk b/keyboards/cutie_club/keebcats/dougal/rules.mk
deleted file mode 100644
index 8048c29cc0..0000000000
--- a/keyboards/cutie_club/keebcats/dougal/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic
-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/cutie_club/novus/info.json b/keyboards/cutie_club/novus/keyboard.json
similarity index 98%
rename from keyboards/cutie_club/novus/info.json
rename to keyboards/cutie_club/novus/keyboard.json
index ddbfad6af8..8738fcc32c 100644
--- a/keyboards/cutie_club/novus/info.json
+++ b/keyboards/cutie_club/novus/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x3F42",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["B6", "C6", "C7", "B2", "B3", "D0", "D1", "D2", "D3", "D7", "B4", "B5", "D5", "D4", "D6"],
         "rows": ["F0", "F1", "F4", "F5", "F6"]
diff --git a/keyboards/cutie_club/novus/rules.mk b/keyboards/cutie_club/novus/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/cutie_club/novus/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/cutie_club/wraith/info.json b/keyboards/cutie_club/wraith/keyboard.json
similarity index 98%
rename from keyboards/cutie_club/wraith/info.json
rename to keyboards/cutie_club/wraith/keyboard.json
index 4a9809fe4a..6f217e420f 100644
--- a/keyboards/cutie_club/wraith/info.json
+++ b/keyboards/cutie_club/wraith/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0000",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0"],
         "rows": ["B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "B7"]
diff --git a/keyboards/cutie_club/wraith/rules.mk b/keyboards/cutie_club/wraith/rules.mk
deleted file mode 100644
index 8d97e04e77..0000000000
--- a/keyboards/cutie_club/wraith/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/cx60/info.json b/keyboards/cx60/keyboard.json
similarity index 96%
rename from keyboards/cx60/info.json
rename to keyboards/cx60/keyboard.json
index e03587e3e4..9748d934a6 100644
--- a/keyboards/cx60/info.json
+++ b/keyboards/cx60/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x3630",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C7", "C6", "F7", "F0", "B4", "D7", "D6", "B0", "B1", "B2", "B3", "D2", "D3", "D5"],
         "rows": ["F1", "F4", "F5", "F6", "E6"]
diff --git a/keyboards/cx60/rules.mk b/keyboards/cx60/rules.mk
deleted file mode 100644
index 3d5cb57ad5..0000000000
--- a/keyboards/cx60/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/cybergear/macro25/info.json b/keyboards/cybergear/macro25/keyboard.json
similarity index 86%
rename from keyboards/cybergear/macro25/info.json
rename to keyboards/cybergear/macro25/keyboard.json
index 1737c5f8fd..a1fca49406 100644
--- a/keyboards/cybergear/macro25/info.json
+++ b/keyboards/cybergear/macro25/keyboard.json
@@ -28,6 +28,14 @@
             ]
         }
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "rows": ["E6", "B4"],
         "cols": ["B1", "F7", "F6", "F5", "F4"]
diff --git a/keyboards/cybergear/macro25/rules.mk b/keyboards/cybergear/macro25/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/cybergear/macro25/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/dailycraft/owl8/info.json b/keyboards/dailycraft/owl8/keyboard.json
similarity index 86%
rename from keyboards/dailycraft/owl8/info.json
rename to keyboards/dailycraft/owl8/keyboard.json
index 9dc42c8fd7..9d654b7d3f 100644
--- a/keyboards/dailycraft/owl8/info.json
+++ b/keyboards/dailycraft/owl8/keyboard.json
@@ -16,6 +16,15 @@
     },
     "processor": "atmega32u4",
     "bootloader": "atmel-dfu",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "direct": [
             ["F4", "F7", "B3", "B6", "F5", "F6", "B1", "B2", "D4", "C6", "D7", "E6"]
diff --git a/keyboards/dailycraft/owl8/rules.mk b/keyboards/dailycraft/owl8/rules.mk
deleted file mode 100644
index 453f0a34d3..0000000000
--- a/keyboards/dailycraft/owl8/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/dailycraft/stickey4/info.json b/keyboards/dailycraft/stickey4/keyboard.json
similarity index 79%
rename from keyboards/dailycraft/stickey4/info.json
rename to keyboards/dailycraft/stickey4/keyboard.json
index 156a6d63a1..101c796b4e 100644
--- a/keyboards/dailycraft/stickey4/info.json
+++ b/keyboards/dailycraft/stickey4/keyboard.json
@@ -16,6 +16,15 @@
     },
     "processor": "atmega32u4",
     "bootloader": "atmel-dfu",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "direct": [
             ["D4", "C6", "D7", "E6"]
diff --git a/keyboards/dailycraft/stickey4/rules.mk b/keyboards/dailycraft/stickey4/rules.mk
deleted file mode 100644
index 453f0a34d3..0000000000
--- a/keyboards/dailycraft/stickey4/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/daji/seis_cinco/info.json b/keyboards/daji/seis_cinco/keyboard.json
similarity index 97%
rename from keyboards/daji/seis_cinco/info.json
rename to keyboards/daji/seis_cinco/keyboard.json
index 3e56106188..a358ae86a1 100644
--- a/keyboards/daji/seis_cinco/info.json
+++ b/keyboards/daji/seis_cinco/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xBF22",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["B1", "B0", "A7", "B14", "A8", "B15", "A0", "C15", "C14", "C13", "B5", "B4", "B3", "A15", "A10", "A14"],
         "rows": ["B2", "B10", "B11", "A9", "A6"]
diff --git a/keyboards/daji/seis_cinco/rules.mk b/keyboards/daji/seis_cinco/rules.mk
deleted file mode 100644
index c3b8e77d77..0000000000
--- a/keyboards/daji/seis_cinco/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/db/db63/info.json b/keyboards/db/db63/keyboard.json
similarity index 95%
rename from keyboards/db/db63/info.json
rename to keyboards/db/db63/keyboard.json
index 30a94c2b9c..ec41b8c313 100644
--- a/keyboards/db/db63/info.json
+++ b/keyboards/db/db63/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x422D",
         "device_version": "2.0.0"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2"],
         "rows": ["B0", "B1", "B2", "B3", "B4", "B5"]
diff --git a/keyboards/db/db63/rules.mk b/keyboards/db/db63/rules.mk
deleted file mode 100644
index 166b3d3ec8..0000000000
--- a/keyboards/db/db63/rules.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = yes
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/delikeeb/flatbread60/info.json b/keyboards/delikeeb/flatbread60/keyboard.json
similarity index 95%
rename from keyboards/delikeeb/flatbread60/info.json
rename to keyboards/delikeeb/flatbread60/keyboard.json
index ac581c2d0e..8a4614e5b4 100644
--- a/keyboards/delikeeb/flatbread60/info.json
+++ b/keyboards/delikeeb/flatbread60/keyboard.json
@@ -29,6 +29,15 @@
     "ws2812": {
         "pin": "F7"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"],
         "rows": ["F6", "B1", "B3", "B2", "B6"]
diff --git a/keyboards/delikeeb/flatbread60/rules.mk b/keyboards/delikeeb/flatbread60/rules.mk
deleted file mode 100644
index 2eba275490..0000000000
--- a/keyboards/delikeeb/flatbread60/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/delikeeb/vaguettelite/info.json b/keyboards/delikeeb/vaguettelite/keyboard.json
similarity index 97%
rename from keyboards/delikeeb/vaguettelite/info.json
rename to keyboards/delikeeb/vaguettelite/keyboard.json
index 45e17c432a..98311fe115 100644
--- a/keyboards/delikeeb/vaguettelite/info.json
+++ b/keyboards/delikeeb/vaguettelite/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x0011",
         "device_version": "0.0.3"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "F7", "B1", "B2", "B6", "B5", "B4", "E6", "D7", "C6", "D0", "D4"],
         "rows": ["F4", "B3", "D1", "D2", "D3", "F5"]
diff --git a/keyboards/delikeeb/vaguettelite/rules.mk b/keyboards/delikeeb/vaguettelite/rules.mk
deleted file mode 100644
index c5c4d8f35f..0000000000
--- a/keyboards/delikeeb/vaguettelite/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
-ENCODER_ENABLE = yes
diff --git a/keyboards/delikeeb/vaneela/info.json b/keyboards/delikeeb/vaneela/keyboard.json
similarity index 95%
rename from keyboards/delikeeb/vaneela/info.json
rename to keyboards/delikeeb/vaneela/keyboard.json
index 0ddbf2f162..226014b8a0 100644
--- a/keyboards/delikeeb/vaneela/info.json
+++ b/keyboards/delikeeb/vaneela/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "B5", "B4", "E6", "D7", "C6", "D4", "D0", "D1", "D2", "D3"],
         "rows": ["F6", "F7", "B3", "B2", "B6"]
diff --git a/keyboards/delikeeb/vaneela/rules.mk b/keyboards/delikeeb/vaneela/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/delikeeb/vaneela/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/delikeeb/vaneelaex/info.json b/keyboards/delikeeb/vaneelaex/keyboard.json
similarity index 95%
rename from keyboards/delikeeb/vaneelaex/info.json
rename to keyboards/delikeeb/vaneelaex/keyboard.json
index 1da7fbec92..8bf40b169b 100644
--- a/keyboards/delikeeb/vaneelaex/info.json
+++ b/keyboards/delikeeb/vaneelaex/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x0002",
         "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", "B5", "B4", "E6", "D7", "C6", "D4"],
         "rows": ["D3", "D2", "D1", "D0", "B2", "B6"]
diff --git a/keyboards/delikeeb/vaneelaex/rules.mk b/keyboards/delikeeb/vaneelaex/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/delikeeb/vaneelaex/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/deltapad/info.json b/keyboards/deltapad/keyboard.json
similarity index 92%
rename from keyboards/deltapad/info.json
rename to keyboards/deltapad/keyboard.json
index 1b79bf47a3..256f2ba105 100644
--- a/keyboards/deltapad/info.json
+++ b/keyboards/deltapad/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x0123",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["D7", "E6", "B4", "B5"],
     "rows": ["D2", "D3", "D1", "D0"]
diff --git a/keyboards/deltapad/rules.mk b/keyboards/deltapad/rules.mk
deleted file mode 100644
index ab2c49da70..0000000000
--- a/keyboards/deltapad/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/demiurge/info.json b/keyboards/demiurge/keyboard.json
similarity index 98%
rename from keyboards/demiurge/info.json
rename to keyboards/demiurge/keyboard.json
index 8fc707be2c..ad5264323b 100644
--- a/keyboards/demiurge/info.json
+++ b/keyboards/demiurge/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x6475",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["E6", "F5", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1", "D0", "B7", "B3", "B2"],
         "rows": ["F0", "F4", "F6", "F7", "C7"]
diff --git a/keyboards/demiurge/rules.mk b/keyboards/demiurge/rules.mk
deleted file mode 100755
index 135b7958b6..0000000000
--- a/keyboards/demiurge/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 = yes           # Enable N-key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
\ No newline at end of file
diff --git a/keyboards/deng/djam/info.json b/keyboards/deng/djam/keyboard.json
similarity index 89%
rename from keyboards/deng/djam/info.json
rename to keyboards/deng/djam/keyboard.json
index 47d9559d30..94e2aca2ec 100644
--- a/keyboards/deng/djam/info.json
+++ b/keyboards/deng/djam/keyboard.json
@@ -18,6 +18,16 @@
         },
         "driver": "ws2812"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"],
         "rows": ["F0", "F1", "F4"]
diff --git a/keyboards/deng/djam/rules.mk b/keyboards/deng/djam/rules.mk
deleted file mode 100644
index 150b7c690d..0000000000
--- a/keyboards/deng/djam/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 = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-RGB_MATRIX_ENABLE = yes
diff --git a/keyboards/dinofizz/fnrow/v1/info.json b/keyboards/dinofizz/fnrow/v1/keyboard.json
similarity index 87%
rename from keyboards/dinofizz/fnrow/v1/info.json
rename to keyboards/dinofizz/fnrow/v1/keyboard.json
index 9beff28ec8..16f80b780d 100644
--- a/keyboards/dinofizz/fnrow/v1/info.json
+++ b/keyboards/dinofizz/fnrow/v1/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x0100",
     "device_version": "0.0.1"
   },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": false,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["B0", "B1", "B3", "B4", "B5", "B6", "B7"],
     "rows": ["A0", "A1"]
diff --git a/keyboards/dinofizz/fnrow/v1/rules.mk b/keyboards/dinofizz/fnrow/v1/rules.mk
deleted file mode 100644
index a1e56ea486..0000000000
--- a/keyboards/dinofizz/fnrow/v1/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 = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
diff --git a/keyboards/dk60/info.json b/keyboards/dk60/keyboard.json
similarity index 94%
rename from keyboards/dk60/info.json
rename to keyboards/dk60/keyboard.json
index 5af417c2b7..3e451a5c8d 100644
--- a/keyboards/dk60/info.json
+++ b/keyboards/dk60/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x56C2",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "sleep_led": true,
+        "unicode": true
+    },
     "matrix_pins": {
         "cols": ["B0", "B3", "B2", "B1", "D3", "D5", "B5", "B7", "C6", "C7", "D0", "D1", "D2"],
         "rows": ["B6", "B4", "D7", "D6", "D4"]
diff --git a/keyboards/dk60/rules.mk b/keyboards/dk60/rules.mk
deleted file mode 100644
index 99c7eb0fa2..0000000000
--- a/keyboards/dk60/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-SLEEP_LED_ENABLE = yes
-UNICODE_ENABLE = yes
diff --git a/keyboards/dm9records/lain/info.json b/keyboards/dm9records/lain/keyboard.json
similarity index 95%
rename from keyboards/dm9records/lain/info.json
rename to keyboards/dm9records/lain/keyboard.json
index 250eb2ddaf..3736d04aee 100644
--- a/keyboards/dm9records/lain/info.json
+++ b/keyboards/dm9records/lain/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0xE8F4",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["C7", "F7", "F6", "F5", "F4", "F1", "F0", "B3", "B2", "B1", "D2", "D3", "D5"],
         "rows": ["C6", "D7", "D6", "D4"]
diff --git a/keyboards/dm9records/lain/rules.mk b/keyboards/dm9records/lain/rules.mk
deleted file mode 100644
index 3b6a1809db..0000000000
--- a/keyboards/dm9records/lain/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/dmqdesign/spin/info.json b/keyboards/dmqdesign/spin/keyboard.json
similarity index 86%
rename from keyboards/dmqdesign/spin/info.json
rename to keyboards/dmqdesign/spin/keyboard.json
index aeeb19299e..a2bc050e91 100644
--- a/keyboards/dmqdesign/spin/info.json
+++ b/keyboards/dmqdesign/spin/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0x0001",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "midi": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F5", "F6", "F7", "C7", "C6"],
         "rows": ["F0", "F1", "F4"]
diff --git a/keyboards/dmqdesign/spin/rules.mk b/keyboards/dmqdesign/spin/rules.mk
deleted file mode 100644
index e77cf66617..0000000000
--- a/keyboards/dmqdesign/spin/rules.mk
+++ /dev/null
@@ -1,14 +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
-MIDI_ENABLE = yes           # MIDI support
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = yes        # Enable rotary encoder support
diff --git a/keyboards/do60/info.json b/keyboards/do60/keyboard.json
similarity index 98%
rename from keyboards/do60/info.json
rename to keyboards/do60/keyboard.json
index e3cab833a0..76de66f6d7 100644
--- a/keyboards/do60/info.json
+++ b/keyboards/do60/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x6060",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "E6", "C7", "C6", "B6", "D4", "B1", "B7", "F4", "B4", "D7", "D6", "B3", "B0"],
         "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/do60/rules.mk b/keyboards/do60/rules.mk
deleted file mode 100644
index d22d1cd2f4..0000000000
--- a/keyboards/do60/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-AUDIO_ENABLE = no           # Audio output
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-COMMAND_ENABLE = no         # Commands for debug and configuration
-CONSOLE_ENABLE = no         # Console for debug
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-MOUSEKEY_ENABLE = yes       # Mouse keys
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-RGBLIGHT_ENABLE = yes       # Enable WS2812 RGB underlight. 
diff --git a/keyboards/doio/kb30/info.json b/keyboards/doio/kb30/keyboard.json
similarity index 93%
rename from keyboards/doio/kb30/info.json
rename to keyboards/doio/kb30/keyboard.json
index 60e02a58ba..637a1fe68b 100644
--- a/keyboards/doio/kb30/info.json
+++ b/keyboards/doio/kb30/keyboard.json
@@ -48,6 +48,17 @@
         "max_brightness": 200,
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "oled": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["B14", "B13", "B12", "B0", "A7", "A9", "A8"],
         "rows": ["B3", "B4", "B9", "B8", "A5", "A6"]
diff --git a/keyboards/doio/kb30/rules.mk b/keyboards/doio/kb30/rules.mk
deleted file mode 100644
index 1e48f891f2..0000000000
--- a/keyboards/doio/kb30/rules.mk
+++ /dev/null
@@ -1,15 +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
-OLED_ENABLE = yes
-ENCODER_ENABLE = yes
diff --git a/keyboards/donutcables/budget96/info.json b/keyboards/donutcables/budget96/keyboard.json
similarity index 99%
rename from keyboards/donutcables/budget96/info.json
rename to keyboards/donutcables/budget96/keyboard.json
index a602811535..eaba1b7c46 100644
--- a/keyboards/donutcables/budget96/info.json
+++ b/keyboards/donutcables/budget96/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0xB960",
         "device_version": "2.0.0"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": false,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["A0", "A1", "A2", "A3", "A4", "A5", "A6", "A7", "C7", "C6", "C5", "C4", "C3", "C2", "D7"],
         "rows": ["B0", "B1", "B2", "B3", "B4", "B5", "B6", "B7"]
diff --git a/keyboards/donutcables/budget96/rules.mk b/keyboards/donutcables/budget96/rules.mk
deleted file mode 100644
index 166b3d3ec8..0000000000
--- a/keyboards/donutcables/budget96/rules.mk
+++ /dev/null
@@ -1,10 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes
-EXTRAKEY_ENABLE = yes
-CONSOLE_ENABLE = no
-COMMAND_ENABLE = yes
-BACKLIGHT_ENABLE = yes
-RGBLIGHT_ENABLE = yes
diff --git a/keyboards/donutcables/scrabblepad/info.json b/keyboards/donutcables/scrabblepad/keyboard.json
similarity index 99%
rename from keyboards/donutcables/scrabblepad/info.json
rename to keyboards/donutcables/scrabblepad/keyboard.json
index fb9b6f3a1d..ed31e35018 100644
--- a/keyboards/donutcables/scrabblepad/info.json
+++ b/keyboards/donutcables/scrabblepad/keyboard.json
@@ -8,6 +8,14 @@
     "pid": "0x21D7",
     "device_version": "1.0.0"
   },
+  "features": {
+    "bootmagic": false,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": false,
+    "nkro": true
+  },
   "matrix_pins": {
     "cols": ["D6", "D7", "E0", "E1", "B7", "D2", "D3", "D4", "C0", "B4", "B5", "B6", "F0", "E6", "E7"],
     "rows": ["D5", "F1", "C7", "F2", "C6", "F3", "C5", "F4", "C4", "F5", "C3", "F6", "C2", "F7", "C1"]
diff --git a/keyboards/donutcables/scrabblepad/rules.mk b/keyboards/donutcables/scrabblepad/rules.mk
deleted file mode 100644
index 84ab7f32b2..0000000000
--- a/keyboards/donutcables/scrabblepad/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 = 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/doodboard/duckboard/info.json b/keyboards/doodboard/duckboard/keyboard.json
similarity index 87%
rename from keyboards/doodboard/duckboard/info.json
rename to keyboards/doodboard/duckboard/keyboard.json
index 3d45770112..bb0b5c0f00 100644
--- a/keyboards/doodboard/duckboard/info.json
+++ b/keyboards/doodboard/duckboard/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0xFF44",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": true,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "B1", "B3", "B2", "B6"],
         "rows": ["C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/doodboard/duckboard/rules.mk b/keyboards/doodboard/duckboard/rules.mk
deleted file mode 100644
index 0551c8b370..0000000000
--- a/keyboards/doodboard/duckboard/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
-ENCODER_ENABLE = yes
-OLED_ENABLE = yes
diff --git a/keyboards/doodboard/duckboard_r2/info.json b/keyboards/doodboard/duckboard_r2/keyboard.json
similarity index 88%
rename from keyboards/doodboard/duckboard_r2/info.json
rename to keyboards/doodboard/duckboard_r2/keyboard.json
index 4c47e9a70e..94c79d382c 100644
--- a/keyboards/doodboard/duckboard_r2/info.json
+++ b/keyboards/doodboard/duckboard_r2/keyboard.json
@@ -8,6 +8,17 @@
         "pid": "0x6462",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": false,
+        "command": false,
+        "console": true,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "B1", "B3", "B2", "B6"],
         "rows": ["C6", "D7", "E6", "B4", "B5"]
diff --git a/keyboards/doodboard/duckboard_r2/rules.mk b/keyboards/doodboard/duckboard_r2/rules.mk
deleted file mode 100644
index 0551c8b370..0000000000
--- a/keyboards/doodboard/duckboard_r2/rules.mk
+++ /dev/null
@@ -1,15 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = no       # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-
-ENCODER_ENABLE = yes
-OLED_ENABLE = yes
diff --git a/keyboards/doro67/multi/info.json b/keyboards/doro67/multi/keyboard.json
similarity index 98%
rename from keyboards/doro67/multi/info.json
rename to keyboards/doro67/multi/keyboard.json
index 10cd3bb652..81f2940b36 100644
--- a/keyboards/doro67/multi/info.json
+++ b/keyboards/doro67/multi/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0x4D4C",
     "device_version": "0.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": true,
+    "command": true,
+    "console": true,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["B0", "B1", "B2", "B3", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F5", "F6", "F7"],
     "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/doro67/multi/rules.mk b/keyboards/doro67/multi/rules.mk
deleted file mode 100644
index f89945313a..0000000000
--- a/keyboards/doro67/multi/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes        # Mouse keys
-EXTRAKEY_ENABLE = yes        # Audio control and System control
-CONSOLE_ENABLE = yes         # Console for debug
-COMMAND_ENABLE = yes         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no         # Enable keyboard RGB underglow
-AUDIO_ENABLE = no            # Audio output
diff --git a/keyboards/doro67/regular/info.json b/keyboards/doro67/regular/keyboard.json
similarity index 95%
rename from keyboards/doro67/regular/info.json
rename to keyboards/doro67/regular/keyboard.json
index 863d935b0a..511dbc2ba4 100644
--- a/keyboards/doro67/regular/info.json
+++ b/keyboards/doro67/regular/keyboard.json
@@ -7,6 +7,14 @@
         "pid": "0x5245",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
       "cols": ["B0", "B1", "B2", "B3", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F5", "F6", "F7"],
       "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/doro67/regular/rules.mk b/keyboards/doro67/regular/rules.mk
deleted file mode 100644
index e70cd601e7..0000000000
--- a/keyboards/doro67/regular/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = yes        # Console for debug
-COMMAND_ENABLE = yes        # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/doro67/rgb/info.json b/keyboards/doro67/rgb/keyboard.json
similarity index 96%
rename from keyboards/doro67/rgb/info.json
rename to keyboards/doro67/rgb/keyboard.json
index 3c2461a90b..87a31e6e21 100644
--- a/keyboards/doro67/rgb/info.json
+++ b/keyboards/doro67/rgb/keyboard.json
@@ -56,6 +56,15 @@
       },
       "driver": "ws2812"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
       "cols": ["B0", "B1", "B2", "B3", "D4", "D6", "D7", "B4", "B5", "B6", "C6", "C7", "F5", "F6", "F7"],
       "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/doro67/rgb/rules.mk b/keyboards/doro67/rgb/rules.mk
deleted file mode 100644
index b400e0a170..0000000000
--- a/keyboards/doro67/rgb/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/draytronics/daisy/info.json b/keyboards/draytronics/daisy/keyboard.json
similarity index 89%
rename from keyboards/draytronics/daisy/info.json
rename to keyboards/draytronics/daisy/keyboard.json
index 4597ca9d17..f871517e87 100644
--- a/keyboards/draytronics/daisy/info.json
+++ b/keyboards/draytronics/daisy/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x4441",
         "device_version": "1.0.0"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["C2", "C3", "C4", "C5"],
         "rows": ["B0", "C0", "C1"]
diff --git a/keyboards/draytronics/daisy/rules.mk b/keyboards/draytronics/daisy/rules.mk
deleted file mode 100644
index 09169eaf7f..0000000000
--- a/keyboards/draytronics/daisy/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
-ENCODER_ENABLE = yes        # Rotary encoder support
diff --git a/keyboards/draytronics/elise/info.json b/keyboards/draytronics/elise/keyboard.json
similarity index 99%
rename from keyboards/draytronics/elise/info.json
rename to keyboards/draytronics/elise/keyboard.json
index 80f4fa69e5..62ccd9babb 100644
--- a/keyboards/draytronics/elise/info.json
+++ b/keyboards/draytronics/elise/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x454C",
         "device_version": "1.0.0"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D2", "D3", "D5"],
         "rows": ["B2", "B3", "B1", "F0", "F1"]
diff --git a/keyboards/draytronics/elise/rules.mk b/keyboards/draytronics/elise/rules.mk
deleted file mode 100644
index 28c29a3b4d..0000000000
--- a/keyboards/draytronics/elise/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/draytronics/elise_v2/info.json b/keyboards/draytronics/elise_v2/keyboard.json
similarity index 99%
rename from keyboards/draytronics/elise_v2/info.json
rename to keyboards/draytronics/elise_v2/keyboard.json
index 966ca3faa4..91f34c23f8 100644
--- a/keyboards/draytronics/elise_v2/info.json
+++ b/keyboards/draytronics/elise_v2/keyboard.json
@@ -29,6 +29,15 @@
     "ws2812": {
         "pin": "D1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": true,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D2", "D3", "D5"],
         "rows": ["B2", "B3", "B1", "F0", "F1"]
diff --git a/keyboards/draytronics/elise_v2/rules.mk b/keyboards/draytronics/elise_v2/rules.mk
deleted file mode 100644
index 28c29a3b4d..0000000000
--- a/keyboards/draytronics/elise_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 = 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/dtisaac/cg108/info.json b/keyboards/dtisaac/cg108/keyboard.json
similarity index 97%
rename from keyboards/dtisaac/cg108/info.json
rename to keyboards/dtisaac/cg108/keyboard.json
index bad71681c0..703586e3d0 100644
--- a/keyboards/dtisaac/cg108/info.json
+++ b/keyboards/dtisaac/cg108/keyboard.json
@@ -8,6 +8,14 @@
         "pid": "0x4973",
         "device_version": "0.0.2"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true
+    },
     "matrix_pins": {
         "cols": ["C7", "C6", "B4", "D7", "B3", "B2", "B0", "E6", "B1", "D1", "D6"],
         "rows": ["F4", "F1", "F0", "F5", "F6", "F7", "D4", "D5", "D3", "D2", "D0"]
diff --git a/keyboards/dtisaac/cg108/rules.mk b/keyboards/dtisaac/cg108/rules.mk
deleted file mode 100644
index 718a1e8d09..0000000000
--- a/keyboards/dtisaac/cg108/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 = 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/dtisaac/dtisaac01/info.json b/keyboards/dtisaac/dtisaac01/keyboard.json
similarity index 99%
rename from keyboards/dtisaac/dtisaac01/info.json
rename to keyboards/dtisaac/dtisaac01/keyboard.json
index 3d16da6d22..0b4b1b3057 100644
--- a/keyboards/dtisaac/dtisaac01/info.json
+++ b/keyboards/dtisaac/dtisaac01/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x4973",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": false
+    },
     "matrix_pins": {
         "cols": ["C7", "C6", "D0", "B5", "F0", "D7", "B0", "B7", "D1"],
         "rows": ["F7", "F6", "F5", "F4", "F1", "B4", "D2", "B2", "B1", "B3", "D4", "D6"]
diff --git a/keyboards/dtisaac/dtisaac01/rules.mk b/keyboards/dtisaac/dtisaac01/rules.mk
deleted file mode 100644
index e2a6fcff00..0000000000
--- a/keyboards/dtisaac/dtisaac01/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = no            # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/dyz/dyz40/info.json b/keyboards/dyz/dyz40/keyboard.json
similarity index 98%
rename from keyboards/dyz/dyz40/info.json
rename to keyboards/dyz/dyz40/keyboard.json
index fdd14a7c42..4916ec7ecd 100644
--- a/keyboards/dyz/dyz40/info.json
+++ b/keyboards/dyz/dyz40/keyboard.json
@@ -4,6 +4,16 @@
     "url": "https://github.com/dayatz/mechanical-keyboards/tree/master/dyz40",
     "maintainer": "dayatz",
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["E6", "F0", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7"],
         "rows": ["B0", "B1", "B3", "B2"]
diff --git a/keyboards/dyz/dyz40/rules.mk b/keyboards/dyz/dyz40/rules.mk
deleted file mode 100644
index e3c4a42def..0000000000
--- a/keyboards/dyz/dyz40/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
diff --git a/keyboards/dyz/dyz60/info.json b/keyboards/dyz/dyz60/keyboard.json
similarity index 98%
rename from keyboards/dyz/dyz60/info.json
rename to keyboards/dyz/dyz60/keyboard.json
index 28300d7914..824e23d709 100644
--- a/keyboards/dyz/dyz60/info.json
+++ b/keyboards/dyz/dyz60/keyboard.json
@@ -4,6 +4,16 @@
     "url": "https://github.com/dayatz/mechanical-keyboards/tree/master/dyz60",
     "maintainer": "dayatz",
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F6", "F7", "B3", "B2", "B1", "D2", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"],
         "rows": ["B0", "E6", "F0", "F5", "F4"]
diff --git a/keyboards/dyz/dyz60/rules.mk b/keyboards/dyz/dyz60/rules.mk
deleted file mode 100644
index e3c4a42def..0000000000
--- a/keyboards/dyz/dyz60/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
diff --git a/keyboards/dyz/dyz60_hs/info.json b/keyboards/dyz/dyz60_hs/keyboard.json
similarity index 99%
rename from keyboards/dyz/dyz60_hs/info.json
rename to keyboards/dyz/dyz60_hs/keyboard.json
index 598f236980..637f02d910 100644
--- a/keyboards/dyz/dyz60_hs/info.json
+++ b/keyboards/dyz/dyz60_hs/keyboard.json
@@ -4,6 +4,15 @@
     "url": "https://github.com/dayatz/mechanical-keyboards/tree/master/dyz60_hs",
     "maintainer": "dayatz",
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F4", "F5", "B3", "B2", "B1", "B5", "B4", "D7", "D6", "D4", "D5", "D3", "D2", "D1"],
         "rows": ["E6", "B0", "F0", "F6", "F7"]
diff --git a/keyboards/dyz/dyz60_hs/rules.mk b/keyboards/dyz/dyz60_hs/rules.mk
deleted file mode 100644
index d8668fc831..0000000000
--- a/keyboards/dyz/dyz60_hs/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 = no
diff --git a/keyboards/dyz/dyz_tkl/info.json b/keyboards/dyz/dyz_tkl/keyboard.json
similarity index 99%
rename from keyboards/dyz/dyz_tkl/info.json
rename to keyboards/dyz/dyz_tkl/keyboard.json
index 298611a742..4d8bba1710 100644
--- a/keyboards/dyz/dyz_tkl/info.json
+++ b/keyboards/dyz/dyz_tkl/keyboard.json
@@ -4,6 +4,15 @@
     "url": "https://github.com/dayatz/mechanical-keyboards/tree/master/dyz_tkl",
     "maintainer": "dayatz",
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "rows": ["E6", "B0", "B3", "B1", "B7", "B2", "F1", "F0", "F5", "F4", "F7", "F6"],
         "cols": ["C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4", "D0"]
diff --git a/keyboards/dyz/dyz_tkl/rules.mk b/keyboards/dyz/dyz_tkl/rules.mk
deleted file mode 100644
index 3c777809b4..0000000000
--- a/keyboards/dyz/dyz_tkl/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 = 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/dyz/selka40/info.json b/keyboards/dyz/selka40/keyboard.json
similarity index 96%
rename from keyboards/dyz/selka40/info.json
rename to keyboards/dyz/selka40/keyboard.json
index 95ac00a883..4a8df19633 100644
--- a/keyboards/dyz/selka40/info.json
+++ b/keyboards/dyz/selka40/keyboard.json
@@ -4,6 +4,16 @@
     "url": "https://github.com/dayatz/mechanical-keyboards/tree/master/selka40",
     "maintainer": "dayatz",
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "encoder": true,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "F4", "F5", "F6", "F7", "E6", "B7", "D5", "D3", "D2", "D1", "D0"],
         "rows": ["C7", "C6", "B6", "B5"]
diff --git a/keyboards/dyz/selka40/rules.mk b/keyboards/dyz/selka40/rules.mk
deleted file mode 100644
index e3c4a42def..0000000000
--- a/keyboards/dyz/selka40/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
diff --git a/keyboards/dyz/synthesis60/info.json b/keyboards/dyz/synthesis60/keyboard.json
similarity index 98%
rename from keyboards/dyz/synthesis60/info.json
rename to keyboards/dyz/synthesis60/keyboard.json
index 09120c47af..cdb4760381 100644
--- a/keyboards/dyz/synthesis60/info.json
+++ b/keyboards/dyz/synthesis60/keyboard.json
@@ -4,6 +4,16 @@
     "url": "https://github.com/dayatz/mechanical-keyboards/tree/master/synthesis60",
     "maintainer": "dayatz",
     "diode_direction": "COL2ROW",
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": false,
+        "nkro": true,
+        "oled": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F7", "F6", "F5", "F4", "F1", "F0", "D7", "D3", "D2", "E6", "B3", "B2", "B1", "B0"],
         "rows": ["B4", "B5", "B6", "D6", "D4"]
diff --git a/keyboards/dyz/synthesis60/rules.mk b/keyboards/dyz/synthesis60/rules.mk
deleted file mode 100644
index f5d7b73330..0000000000
--- a/keyboards/dyz/synthesis60/rules.mk
+++ /dev/null
@@ -1,14 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = no        # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
-ENCODER_ENABLE = no
-OLED_ENABLE = yes
diff --git a/keyboards/dz60/info.json b/keyboards/dz60/keyboard.json
similarity index 99%
rename from keyboards/dz60/info.json
rename to keyboards/dz60/keyboard.json
index a46b1564ec..eb831143b7 100644
--- a/keyboards/dz60/info.json
+++ b/keyboards/dz60/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x2260",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["F0", "F1", "E6", "C7", "C6", "B7", "D4", "B1", "B0", "B5", "B4", "D7", "D6", "B3", "F4"],
         "rows": ["D0", "D1", "D2", "D3", "D5"]
diff --git a/keyboards/dz60/rules.mk b/keyboards/dz60/rules.mk
deleted file mode 100644
index 3d5cb57ad5..0000000000
--- a/keyboards/dz60/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/dztech/bocc/info.json b/keyboards/dztech/bocc/keyboard.json
similarity index 99%
rename from keyboards/dztech/bocc/info.json
rename to keyboards/dztech/bocc/keyboard.json
index 1b284df4e3..5d56524b3f 100644
--- a/keyboards/dztech/bocc/info.json
+++ b/keyboards/dztech/bocc/keyboard.json
@@ -8,6 +8,16 @@
         "pid": "0x1010",
         "device_version": "0.0.1"
     },
+    "features": {
+        "backlight": true,
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4"],
         "rows": ["B0", "B1", "B2", "B3", "F0"]
diff --git a/keyboards/dztech/bocc/rules.mk b/keyboards/dztech/bocc/rules.mk
deleted file mode 100644
index 3d5cb57ad5..0000000000
--- a/keyboards/dztech/bocc/rules.mk
+++ /dev/null
@@ -1,12 +0,0 @@
-# Build Options
-#   change yes to no to disable
-#
-BOOTMAGIC_ENABLE = yes      # Enable Bootmagic Lite
-MOUSEKEY_ENABLE = yes       # Mouse keys
-EXTRAKEY_ENABLE = yes       # Audio control and System control
-CONSOLE_ENABLE = no         # Console for debug
-COMMAND_ENABLE = no         # Commands for debug and configuration
-NKRO_ENABLE = yes           # Enable N-Key Rollover
-BACKLIGHT_ENABLE = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/dztech/duo_s/info.json b/keyboards/dztech/duo_s/keyboard.json
similarity index 96%
rename from keyboards/dztech/duo_s/info.json
rename to keyboards/dztech/duo_s/keyboard.json
index ef5af799be..46f9b4fc34 100644
--- a/keyboards/dztech/duo_s/info.json
+++ b/keyboards/dztech/duo_s/keyboard.json
@@ -33,6 +33,15 @@
   "ws2812": {
     "pin": "B15"
   },
+  "features": {
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": true,
+    "nkro": true,
+    "rgblight": true
+  },
   "matrix_pins": {
     "cols": ["B12", "B13", "B14", "A8", "B9", "C13", "C14", "C15", "A1", "A2", "A3", "A4", "A5", "A6", "A7"],
     "rows": ["A15", "B3", "B4", "B5", "B11"]
diff --git a/keyboards/dztech/duo_s/rules.mk b/keyboards/dztech/duo_s/rules.mk
deleted file mode 100644
index b851d0ab39..0000000000
--- a/keyboards/dztech/duo_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 = 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/dztech/dz65rgb/v1/info.json b/keyboards/dztech/dz65rgb/v1/keyboard.json
similarity index 96%
rename from keyboards/dztech/dz65rgb/v1/info.json
rename to keyboards/dztech/dz65rgb/v1/keyboard.json
index 98c69134eb..6dcc88b59e 100644
--- a/keyboards/dztech/dz65rgb/v1/info.json
+++ b/keyboards/dztech/dz65rgb/v1/keyboard.json
@@ -44,6 +44,15 @@
         "max_brightness": 200,
         "sleep": true
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgb_matrix": true
+    },
     "matrix_pins": {
         "cols": ["A6", "A7", "B0", "B13", "B15", "A8", "A15", "B3", "B4", "B5", "B8", "B9", "C13", "C14", "C15"],
         "rows": ["B1", "B10", "B11", "B14", "B12"]
diff --git a/keyboards/dztech/dz65rgb/v1/rules.mk b/keyboards/dztech/dz65rgb/v1/rules.mk
deleted file mode 100644
index ea646d3d93..0000000000
--- a/keyboards/dztech/dz65rgb/v1/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/dztech/dz65rgb/v2/info.json b/keyboards/dztech/dz65rgb/v2/keyboard.json
similarity index 96%
rename from keyboards/dztech/dz65rgb/v2/info.json
rename to keyboards/dztech/dz65rgb/v2/keyboard.json
index 16919905d8..16d38a3af5 100644
--- a/keyboards/dztech/dz65rgb/v2/info.json
+++ b/keyboards/dztech/dz65rgb/v2/keyboard.json
@@ -44,6 +44,15 @@
         "max_brightness": 200,
         "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/dztech/dz65rgb/v2/rules.mk b/keyboards/dztech/dz65rgb/v2/rules.mk
deleted file mode 100644
index ea646d3d93..0000000000
--- a/keyboards/dztech/dz65rgb/v2/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/dztech/dz96/info.json b/keyboards/dztech/dz96/keyboard.json
similarity index 99%
rename from keyboards/dztech/dz96/info.json
rename to keyboards/dztech/dz96/keyboard.json
index c1d3b84623..ef2de26a70 100644
--- a/keyboards/dztech/dz96/info.json
+++ b/keyboards/dztech/dz96/keyboard.json
@@ -8,6 +8,15 @@
     "pid": "0xDB96",
     "device_version": "0.0.1"
   },
+  "features": {
+    "backlight": true,
+    "bootmagic": true,
+    "command": false,
+    "console": false,
+    "extrakey": true,
+    "mousekey": false,
+    "nkro": false
+  },
   "matrix_pins": {
     "cols": ["C6", "F1", "F4", "F5", "F6", "F7", "D7", "B4", "B5", "D0", "D1", "D2", "D3"],
     "rows": ["B7", "B3", "E6", "F0", "D5", "D4", "D6", "C7"]
diff --git a/keyboards/dztech/dz96/rules.mk b/keyboards/dztech/dz96/rules.mk
deleted file mode 100644
index 14e80e7106..0000000000
--- a/keyboards/dztech/dz96/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 = yes      # Enable keyboard backlight functionality
-RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
-AUDIO_ENABLE = no           # Audio output
diff --git a/keyboards/dztech/endless80/info.json b/keyboards/dztech/endless80/keyboard.json
similarity index 98%
rename from keyboards/dztech/endless80/info.json
rename to keyboards/dztech/endless80/keyboard.json
index 4572b091fa..9387b67ead 100644
--- a/keyboards/dztech/endless80/info.json
+++ b/keyboards/dztech/endless80/keyboard.json
@@ -8,6 +8,15 @@
         "pid": "0x1015",
         "device_version": "0.0.1"
     },
+    "features": {
+        "bootmagic": true,
+        "command": false,
+        "console": false,
+        "extrakey": true,
+        "mousekey": true,
+        "nkro": true,
+        "rgblight": true
+    },
     "matrix_pins": {
         "cols": ["D0", "D1", "D2", "D3", "D5", "D4", "D6", "D7", "B4", "C6", "C7", "F5", "F4", "F1", "F0"],
         "rows": ["B0", "B1", "B2", "B3", "B7", "B5"]
diff --git a/keyboards/dztech/endless80/rules.mk b/keyboards/dztech/endless80/rules.mk
deleted file mode 100644
index 4ae26a099a..0000000000
--- a/keyboards/dztech/endless80/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