First of all let me say thank you for adding your keyboard to Peg, we really appreciate it and it makes Peg better for everyone.
Next we expect that the kb.py main.py and layout.json have been tested in Peg and everything works. You do not need to do anything special to get your keyboard to show up in Peg once it has a layout.json and main.py the Peg client should pick it up.
To configure your kb.py, main.py and layout.json please see all of the other docs outside of the Peg Client section.
Let me get into what we look for in a keyboard.
Your folder name should be descriptive of the configuration it contains eg: Foostan-crkbd-n!n-wired-L (Foostans crkbd with nice!nano as wired left side)
So the format is:
Creator-board_name-controller(if not integrated)-wired/wireless(if needed)-side L or R (if needed)
The Creator and board_name should match what you have in your layout.json. You
can not use spaces,or dashes "-" other then to separate the parts of the name If
you wanted to do Boardsource-Microdox-v2
it would need to be
Boardsource-Microdox_v2
. Please see the keyboards folder for examples.
Note on hand wires: You can add them but it must be under HandWire-boardname_by_yourname-controller-anything else
We want to see 2 complete folders.
We are expecting to see a main.py generated by Peg. If your keymap still looks like a keyboard we will ask you to run it through Peg.
We want to see everything that can, should be enabled. If the keyboard has per-key RGB, we want to see it enabled. The same as with oleds or encoders, as to not have too many configs for the exact same board. If the end user does not want a feature they can turn it off or not install it on the pcb. If you do not have hardware to test it let us know we will find a way to test it and we still really appreciate you adding it.
We will look over the kb.py to make sure it looks good and is supporting the enabled features
We will want to see a libraries zip file in ./libs
with the exact same name as
your keyboard. This is required for the keyboard to work in peg. Your lib zip (
or zip's if split) should be every library required for the keyboard to work
assume nothing is frozen in. Then zip that lib folder on your CircuitPython
drive so when its extracted you are left with a folder named lib with the
libraries in it. It should not be a zip containing all of the libraries it
should be a zipped folder of containing all of the libraries.
If you have other files like a readme that you want to add go for it just know they will not be shown in the Peg client.
Note on the Supported Keyboards list
This is a auto generated markdown file and you will not find it in this repo. That being said you dont have to worry about adding your keyboard to that list as soon as your pr is accepted it will be added to that page.