diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
new file mode 100644
index 0000000..eeb29b7
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -0,0 +1,128 @@
+name: 🐞 Bug Report
+description: Create a report to help us improve.
+labels: [bug]
+body:
+ - type: checkboxes
+ id: terms
+ attributes:
+ label: Welcome
+ options:
+ - label: Yes, I'm using the latest releases.
+ required: true
+ - label: Yes, I've searched similar issues on GitHub and didn't find any.
+ required: true
+ - label: Yes, I've included all information below (version, config, etc).
+ required: true
+
+ - type: dropdown
+ id: goos
+ attributes:
+ label: OS?
+ options:
+ - aix
+ - android
+ - darwin
+ - dragonfly
+ - freebsd
+ - illumos
+ - ios
+ - js
+ - linux
+ - netbsd
+ - openbsd
+ - plan9
+ - solaris
+ - wasip1
+ - windows
+ validations:
+ required: true
+
+ - type: dropdown
+ id: goarch
+ attributes:
+ label: Arch?
+ options:
+ - 'ppc64'
+ - '386'
+ - 'amd64'
+ - 'arm'
+ - 'arm64'
+ - 'riscv64'
+ - 'wasm'
+ - 'loong64'
+ - 'mips'
+ - 'mips64'
+ - 'mips64le'
+ - 'mipsle'
+ - 'ppc64le'
+ - s390x
+ validations:
+ required: true
+
+ - type: textarea
+ id: expected
+ attributes:
+ label: What did you expect to see?
+ placeholder: Description.
+ validations:
+ required: true
+
+ - type: textarea
+ id: current
+ attributes:
+ label: What did you see instead?
+ placeholder: Description.
+ validations:
+ required: true
+
+ - type: textarea
+ id: steps
+ attributes:
+ label: Reproduction steps
+ description: "How do you trigger this bug? Please walk us through it step by step."
+ render: console
+ placeholder: |-
+ ```go
+ // Paste you code here.
+ ```
+ validations:
+ required: true
+
+ - type: input
+ id: version
+ attributes:
+ label: Version of flock
+ validations:
+ required: true
+
+ - type: textarea
+ id: logs
+ attributes:
+ label: Logs
+ render: console
+ value: |-
+
+
+ ```console
+ # paste output here
+ ```
+
+
+ validations:
+ required: true
+
+ - type: textarea
+ id: go-env
+ attributes:
+ label: Go environment (if applicable)
+ value: |-
+
+
+ ```console
+ $ go version && go env
+ # paste output here
+ ```
+
+
+ validations:
+ required: false
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 0000000..3ba13e0
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1 @@
+blank_issues_enabled: false
diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml
new file mode 100644
index 0000000..4a35570
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.yml
@@ -0,0 +1,18 @@
+name: 💡 Feature request
+description: Suggest an idea for this project.
+body:
+ - type: checkboxes
+ id: terms
+ attributes:
+ label: Welcome
+ options:
+ - label: Yes, I've searched similar issues on GitHub and didn't find any.
+ required: true
+
+ - type: textarea
+ id: description
+ attributes:
+ label: Detailed Description
+ placeholder: Description.
+ validations:
+ required: true