diff --git a/.reuse/templates/open_networking_foundation.jinja2 b/.reuse/templates/open_networking_foundation.jinja2
new file mode 100644
index 0000000..ad566b8
--- /dev/null
+++ b/.reuse/templates/open_networking_foundation.jinja2
@@ -0,0 +1,32 @@
+{% if date.start and date.end %}
+
+  {% if date.start eq date.end %}
+    {% set date.range = {{ date.end } %}
+  {% else
+    {% set date.range = {{ date.start }}-{{ date.end } %}
+  {% endif %}
+
+% else %}
+    {% set date.range = {{ date.end }
+{% endif %}
+
+{% set copyright = {{ date.range }} Open Networking Foundation Contributors %}
+
+# -----------------------------------------------------------------------
+# Copyright {{ copyright }}
+#
+# Licensed 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.
+# -----------------------------------------------------------------------
+# SPDX-FileCopyrightText: {{ copyright }}
+# SPDX-License-Identifier: Apache-2.0
+# ----------------------------------------------------------------------
diff --git a/.reuse/templates/urls b/.reuse/templates/urls
new file mode 100644
index 0000000..915cd9c
--- /dev/null
+++ b/.reuse/templates/urls
@@ -0,0 +1 @@
+https://jinja.palletsprojects.com/en/2.10.x/templates/
\ No newline at end of file
