[ISSUE #91] Enable issue and PR templates (#92)

* Copy templates from EventMesh

* Change branch name from `master` to `main`

* Temporarily set `approving_count` to 0 to allow committers to merge themselves PR
diff --git a/.asf.yaml b/.asf.yaml
index 898b57a..e656e56 100644
--- a/.asf.yaml
+++ b/.asf.yaml
@@ -43,7 +43,7 @@
         strict: true
       required_pull_request_reviews:
         dismiss_stale_reviews: true
-        required_approving_review_count: 1
+        required_approving_review_count: 0 # Temporary 0 to allow committers to merge themselves PR
 notifications:
     commits: commits@eventmesh.apache.org
     # Send all issue emails (new, closed, comments) to issues@
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
new file mode 100644
index 0000000..637bb60
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -0,0 +1,120 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+name: Bug report
+title: "[Bug] Bug title "
+description: If something isn't working as expected.
+labels: [ "bug" ]
+body:
+  - type: markdown
+    attributes:
+      value: |
+        For better global communication, Please write in English.
+
+  - type: checkboxes
+    attributes:
+      label: Search before asking
+      description: >
+        Please make sure to search in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue)
+        first to see whether the same issue was reported already.
+      options:
+        - label: >
+            I had searched in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue) and found
+            no similar issues.
+          required: true
+
+  - type: dropdown
+    attributes:
+      label: Environment
+      description: Describe the environment.
+      options:
+        - Mac
+        - Windows
+        - Linux
+        - Other
+    validations:
+      required: true
+
+  - type: dropdown
+    attributes:
+      label: EventMesh version
+      description: Describe the EventMesh version.
+      options:
+        - main
+        - 1.10.0
+        - 1.9.0
+        - 1.8.0
+        - 1.7.0
+        - 1.6.0
+        - 1.5.0
+        - 1.4.0
+        - 1.3.0
+        - 1.2.0
+        - Other
+    validations:
+      required: true
+
+  - type: textarea
+    attributes:
+      label: What happened
+      description: Describe what happened.
+      placeholder: >
+        A clear and concise description of what the bug is.
+    validations:
+      required: true
+
+  - type: textarea
+    attributes:
+      label: How to reproduce
+      description: >
+        Describe the steps to reproduce the bug here.
+      placeholder: >
+        Please make sure you provide a reproducible step-by-step case of how to reproduce the problem
+        as minimally and precisely as possible.
+    validations:
+      required: true
+
+  - type: textarea
+    attributes:
+      label: Debug logs
+      description: Anything else we need to know?
+      placeholder: >
+        Add your debug logs here.
+      render: Java
+    validations:
+      required: false
+
+  - type: checkboxes
+    attributes:
+      label: Are you willing to submit PR?
+      description: >
+        This is absolutely not required, but we are happy to guide you in the contribution process
+        especially if you already have a good understanding of how to implement the fix.
+      options:
+        - label: Yes I am willing to submit a PR!
+
+  - type: checkboxes
+    attributes:
+      label: Code of Conduct
+      description: >
+        The Code of Conduct helps create a safe space for everyone. We require that everyone agrees to it..
+      options:
+        - label: I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) *
+
+  - type: markdown
+    attributes:
+      value: "Thanks for completing our form!"
diff --git a/.github/ISSUE_TEMPLATE/documentation_related.yml b/.github/ISSUE_TEMPLATE/documentation_related.yml
new file mode 100644
index 0000000..1fa6ef8
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/documentation_related.yml
@@ -0,0 +1,68 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+name: Documentation Related
+title: "[Doc] Documentation Related "
+description: I find some issues related to the documentation.
+labels: [ "documentation" ]
+body:
+  - type: markdown
+    attributes:
+      value: |
+        For better global communication, Please write in English.
+
+  - type: checkboxes
+    attributes:
+      label: Search before asking
+      description: >
+        Please make sure to search in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue)
+        first to see whether the same issue was reported already.
+      options:
+        - label: >
+            I had searched in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue) and found
+            no similar issues.
+          required: true
+
+  - type: textarea
+    attributes:
+      label: Documentation Related
+      description: Describe the suggestion about document.
+      placeholder: >
+        e.g There is a typo
+    validations:
+      required: true
+
+  - type: checkboxes
+    attributes:
+      label: Are you willing to submit PR?
+      description: >
+        This is absolutely not required, but we are happy to guide you in the contribution process
+        especially if you already have a good understanding of how to implement the fix.
+      options:
+        - label: Yes I am willing to submit a PR!
+
+  - type: checkboxes
+    attributes:
+      label: Code of Conduct
+      description: >
+        The Code of Conduct helps create a safe space for everyone. We require that everyone agrees to it..
+      options:
+        - label: I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) *
+
+  - type: markdown
+    attributes:
+      value: "Thanks for completing our form!"
diff --git a/.github/ISSUE_TEMPLATE/enhancement_request.yml b/.github/ISSUE_TEMPLATE/enhancement_request.yml
new file mode 100644
index 0000000..cd9e0c5
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/enhancement_request.yml
@@ -0,0 +1,77 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+name: Enhancement Request
+title: "[Enhancement] Enhancement title"
+description: I want to suggest an enhancement for this project
+labels: [ "enhancement" ]
+body:
+  - type: markdown
+    attributes:
+      value: |
+        For better global communication, Please write in English.
+
+  - type: checkboxes
+    attributes:
+      label: Search before asking
+      description: >
+        Please make sure to search in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue)
+        first to see whether the same issue was reported already.
+      options:
+        - label: >
+            I had searched in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue) and found
+            no similar issues.
+          required: true
+
+  - type: textarea
+    attributes:
+      label: Enhancement Request
+      description: Describe the suggestion.
+      placeholder: >
+        First of all: Have you checked the docs https://github.com/apache/eventmesh/tree/develop/docs,
+        or GitHub issues whether someone else has already reported your issue?
+    validations:
+      required: true
+
+  - type: textarea
+    attributes:
+      label: Describe the solution you'd like
+      description: Describe the suggestion.
+      placeholder: >
+        A clear and concise description of what you want to happen. Add any considered drawbacks.
+    validations:
+      required: true
+
+  - type: checkboxes
+    attributes:
+      label: Are you willing to submit PR?
+      description: >
+        This is absolutely not required, but we are happy to guide you in the contribution process
+        especially if you already have a good understanding of how to implement the fix.
+      options:
+        - label: Yes I am willing to submit a PR!
+
+  - type: checkboxes
+    attributes:
+      label: Code of Conduct
+      description: >
+        The Code of Conduct helps create a safe space for everyone. We require that everyone agrees to it..
+      options:
+        - label: I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) *
+  - type: markdown
+    attributes:
+      value: "Thanks for completing our form!"
diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml
new file mode 100644
index 0000000..fe9d032
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.yml
@@ -0,0 +1,70 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+name: Feature Request
+title: "[Feature] Feature title "
+description: I want to suggest a feature for this project.
+labels: [ "feature" ]
+body:
+  - type: markdown
+    attributes:
+      value: |
+        For better global communication, Please write in English.
+
+  - type: checkboxes
+    attributes:
+      label: Search before asking
+      description: >
+        Please make sure to search in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue)
+        first to see whether the same issue was reported already.
+      options:
+        - label: >
+            I had searched in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue) and found
+            no similar issues.
+          required: true
+
+  - type: textarea
+    attributes:
+      label: Feature Request
+      description: Describe the feature.
+      placeholder: >
+        First of all: Have you checked the docs https://github.com/apache/eventmesh/tree/develop/docs,
+        or GitHub issues whether someone else has already reported your issue?
+        Maybe the feature already exists?
+    validations:
+      required: true
+
+  - type: checkboxes
+    attributes:
+      label: Are you willing to submit PR?
+      description: >
+        This is absolutely not required, but we are happy to guide you in the contribution process
+        especially if you already have a good understanding of how to implement the fix.
+      options:
+        - label: Yes I am willing to submit a PR!
+
+  - type: checkboxes
+    attributes:
+      label: Code of Conduct
+      description: >
+        The Code of Conduct helps create a safe space for everyone. We require that everyone agrees to it..
+      options:
+        - label: I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) *
+
+  - type: markdown
+    attributes:
+      value: "Thanks for completing our form!"
diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml
new file mode 100644
index 0000000..bd39533
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/question.yml
@@ -0,0 +1,51 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+name: Question
+title: "[Question] Question title "
+description: I have a question that isn't answered in docs or issue.
+labels: [ "question" ]
+body:
+  - type: markdown
+    attributes:
+      value: |
+        For better global communication, Please write in English.
+
+  - type: checkboxes
+    attributes:
+      label: Search before asking
+      description: >
+        Please make sure to search in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue)
+        first to see whether the same issue was reported already.
+      options:
+        - label: >
+            I had searched in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue) and found
+            no similar issues.
+          required: true
+
+  - type: textarea
+    attributes:
+      label: Question
+      description: Describe your question.
+      placeholder: >
+        Describe your question here :D
+    validations:
+      required: true
+
+  - type: markdown
+    attributes:
+      value: "Thanks for completing our form!"
diff --git a/.github/ISSUE_TEMPLATE/unit_test.yml b/.github/ISSUE_TEMPLATE/unit_test.yml
new file mode 100644
index 0000000..82ce502
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/unit_test.yml
@@ -0,0 +1,86 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+name: Unit Test
+title: "[Unit Test] Unit test title"
+description: I want to do some unit tests for this project
+labels: [ "testing" ]
+body:
+  - type: markdown
+    attributes:
+      value: |
+        For better global communication, Please write in English.
+
+  - type: checkboxes
+    attributes:
+      label: Search before asking
+      description: >
+        Please make sure to search in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue)
+        first to see whether the same issue was reported already.
+      options:
+        - label: >
+            I had searched in the [issues](https://github.com/apache/eventmesh/issues?q=is%3Aissue) and found
+            no similar issues.
+          required: true
+
+  - type: checkboxes
+    attributes:
+      label: Read the unit testing guidelines
+      description: >
+        Read the [unit testing guidelines](https://eventmesh.apache.org/community/contribute/write-unit-test) before writing unit test code.
+      options:
+        - label: >
+            I have read.
+          required: true
+
+  - type: textarea
+    attributes:
+      label: Unit test request
+      description: Describe the unit test.
+      placeholder: >
+        First of all: Have you checked the docs https://github.com/apache/eventmesh/tree/develop/docs,
+        or GitHub issues whether someone else has already reported your issue?
+        Maybe the unit tests you want to do have already been done?
+    validations:
+      required: true
+
+  - type: textarea
+    attributes:
+      label: Describe the unit tests you want to do
+      description: Describe the unit test.
+      value: |
+        Module name:
+        Located at:
+        Task status: ×(unfinished) / √(finished)
+        | Task Status | Class | Type |
+        | :------: | :------ | :------ |
+        | × | xxxxxx | xxxxxx |
+    validations:
+      required: true
+
+  - type: checkboxes
+    attributes:
+      label: Are you willing to submit PR?
+      description: >
+        This is absolutely not required, but we are happy to guide you in the contribution process
+        especially if you already have a good understanding of how to implement the fix.
+      options:
+        - label: Yes I am willing to submit a PR!
+
+  - type: markdown
+    attributes:
+      value: "Thanks for completing our form!"
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000..428cda5
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,42 @@
+<!--
+### Contribution Checklist
+
+  - Name the pull request in the form "[ISSUE #XXXX] Title of the pull request", 
+    where *XXXX* should be replaced by the actual issue number.
+    Skip *[ISSUE #XXXX]* if there is no associated github issue for this pull request.
+
+  - Fill out the template below to describe the changes contributed by the pull request. 
+    That will give reviewers the context they need to do the review.
+  
+  - Each pull request should address only one issue. 
+    Please do not mix up code from multiple issues.
+  
+  - Each commit in the pull request should have a meaningful commit message.
+
+  - Once all items of the checklist are addressed, remove the above text and this checklist, 
+    leaving only the filled out template below.
+
+(The sections below can be removed for hotfixes of typos)
+-->
+
+<!--
+(If this PR fixes a GitHub issue, please add `Fixes #<XXX>` or `Closes #<XXX>`.)
+-->
+
+Fixes #issue_id
+
+### Motivation
+
+*Explain the content here.*
+*Explain why you want to make the changes and what problem you're trying to solve.*
+
+### Modifications
+
+*Describe the modifications you've done.*
+
+### Documentation
+
+- Does this pull request introduce a new feature? (yes / no)
+- If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
+- If a feature is not applicable for documentation, explain why?
+- If a feature is not documented yet in this PR, please create a followup issue for adding the documentation