about summary refs log tree commit diff
path: root/home/shell/zsh/new-go-project.zsh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--home/shell/zsh/new-go-project.zsh19
1 files changed, 19 insertions, 0 deletions
diff --git a/home/shell/zsh/new-go-project.zsh b/home/shell/zsh/new-go-project.zsh
new file mode 100644
index 0000000..0b96a34
--- /dev/null
+++ b/home/shell/zsh/new-go-project.zsh
@@ -0,0 +1,19 @@
+new-go-project() {
+  local project_name=$1
+
+  echo "> creating ${project_name}"
+  cd ~/workspace/
+  mkdir $project_name
+  cd $project_name
+
+  echo "> initializing the git repository"
+  git init .
+
+  echo "> setting the default template for go projects"
+  nix flake init -t ~/workspace/world/templates#go
+  direnv allow
+
+  echo "> creating initial commit, touch your yubikey"
+  git add .
+  git commit -m 'initial commit'
+}