summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/cli_commands.md12
-rw-r--r--lib/python/qmk/cli/new/__init__.py1
-rw-r--r--lib/python/qmk/cli/new/keyboard.py11
3 files changed, 24 insertions, 0 deletions
diff --git a/docs/cli_commands.md b/docs/cli_commands.md
index 6498b28b88..05e9306070 100644
--- a/docs/cli_commands.md
+++ b/docs/cli_commands.md
@@ -228,6 +228,18 @@ This command is directory aware. It will automatically fill in KEYBOARD if you a
qmk list-keymaps -kb planck/ez
```
+## `qmk new-keyboard`
+
+This command creates a new keyboard based on available templates.
+
+This command will prompt for input to guide you though the generation process.
+
+**Usage**:
+
+```
+qmk new-keyboard
+```
+
## `qmk new-keymap`
This command creates a new keymap based on a keyboard's existing default keymap.
diff --git a/lib/python/qmk/cli/new/__init__.py b/lib/python/qmk/cli/new/__init__.py
index c6a26939b8..fe5d6fe483 100644
--- a/lib/python/qmk/cli/new/__init__.py
+++ b/lib/python/qmk/cli/new/__init__.py
@@ -1 +1,2 @@
+from . import keyboard
from . import keymap
diff --git a/lib/python/qmk/cli/new/keyboard.py b/lib/python/qmk/cli/new/keyboard.py
new file mode 100644
index 0000000000..cab0198fb7
--- /dev/null
+++ b/lib/python/qmk/cli/new/keyboard.py
@@ -0,0 +1,11 @@
+"""This script automates the creation of keyboards.
+"""
+from milc import cli
+
+
+@cli.subcommand('Creates a new keyboard')
+def new_keyboard(cli):
+ """Creates a new keyboard
+ """
+ # TODO: replace this bodge to the existing script
+ cli.run(['util/new_keyboard.sh'], capture_output=False)