This project is to use laptop keyboard with arduino board that will act as a normal PC keyboard. Mega32U4 has support to send keyboard key presses over USB and act as a normal keyboard.
Project uses two I/O expander chips that comunicate with Arduino over SPI interface. Software can be obtained from the gitHub repository. All software in Arduino is doing is to put 5V to a specific keyboard connection and then read all other connections if +5V is present. Depending on which key is pressed this 5V signal is sent to different keyboard output pins. This is where Arduino looks at it's internal map to determine which keys are pressed and send that data over USB. Same happens when keys are depressed.
If you like the project feel free to share and modify it to your needs. Any questions or if you need help please log an issue in gitHub. Any contributions are welcome. Not a developer? No problem, you can leave a small token of gratitude by donating :)