This is a walkthrough of creating a mechanical keyboard PCB with Cherry MX style switches, using a standard diode matrix and a Pro Micro controller.
Get KiCad at https://www.kicad.org/
In this video, I am using Kicad 6.0, and the marbastlib_mx and marbastlib_various Kicad libraries for symbols and footprints:
https://github.com/ebastler/marbastlib
Make your own layout mockups at:
http://www.keyboard-layout-editor.com/
Here is some info on how keyboard switch matrices work:
https://github.com/qmk/qmk_firmware/blob/master/docs/how_a_matrix_works.md