diff --git a/.github/notify.py b/.github/notify.py
index 0e55298f..1260aa25 100644
--- a/.github/notify.py
+++ b/.github/notify.py
@@ -1,5 +1,8 @@
#!/usr/bin/env python3
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
import datetime
import logging
import os
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 0fce4062..f965ad56 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -57,3 +57,27 @@ repos:
hooks:
- id: check-github-workflows
args: ["--verbose"]
+ - repo: https://github.com/Lucas-C/pre-commit-hooks
+ rev: v1.5.5
+ hooks:
+ - id: insert-license
+ name: insert-license-python
+ types:
+ - python
+ args:
+ - --license-filepath
+ - LICENSE_HEADER.txt
+ - --comment-style
+ - "#"
+ - id: insert-license
+ name: insert-license-frontend
+ types_or:
+ - javascript
+ - jsx
+ - ts
+ - tsx
+ args:
+ - --license-filepath
+ - LICENSE_HEADER.txt
+ - --comment-style
+ - "//"
diff --git a/LICENSE_HEADER.txt b/LICENSE_HEADER.txt
new file mode 100644
index 00000000..8a99247a
--- /dev/null
+++ b/LICENSE_HEADER.txt
@@ -0,0 +1,2 @@
+Copyright Contributors to the Packit project.
+SPDX-License-Identifier: MIT
diff --git a/frontend/.storybook/main.ts b/frontend/.storybook/main.ts
index 7c5ee1f2..9f4eddae 100644
--- a/frontend/.storybook/main.ts
+++ b/frontend/.storybook/main.ts
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import type { StorybookConfig } from "@storybook/react-vite";
const config: StorybookConfig = {
diff --git a/frontend/.storybook/preview.ts b/frontend/.storybook/preview.ts
index 3c0d79f6..63ce2cd1 100644
--- a/frontend/.storybook/preview.ts
+++ b/frontend/.storybook/preview.ts
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { initialize, mswLoader } from "msw-storybook-addon";
// To get PatternFly style to work out of the box we need to import the CSS here
import "@patternfly/react-core/dist/styles/base.css";
diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx
index 1c9aad31..e96431a2 100644
--- a/frontend/src/App.tsx
+++ b/frontend/src/App.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import "@patternfly/react-core/dist/styles/base.css";
import "@patternfly/patternfly/patternfly-addons.css";
diff --git a/frontend/src/app/AppLayout/AppLayout.tsx b/frontend/src/app/AppLayout/AppLayout.tsx
index d988af42..67eb847a 100644
--- a/frontend/src/app/AppLayout/AppLayout.tsx
+++ b/frontend/src/app/AppLayout/AppLayout.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
NavLink,
Outlet,
diff --git a/frontend/src/app/Dashboard/Dashboard.tsx b/frontend/src/app/Dashboard/Dashboard.tsx
index 24167116..2e2612fc 100644
--- a/frontend/src/app/Dashboard/Dashboard.tsx
+++ b/frontend/src/app/Dashboard/Dashboard.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
Card,
CardHeader,
diff --git a/frontend/src/app/Errors/ErrorApp.stories.tsx b/frontend/src/app/Errors/ErrorApp.stories.tsx
index 4b785ee0..b3e7b452 100644
--- a/frontend/src/app/Errors/ErrorApp.stories.tsx
+++ b/frontend/src/app/Errors/ErrorApp.stories.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { withRouter } from "storybook-addon-react-router-v6";
import type { Meta, StoryObj } from "@storybook/react";
import { ErrorApp } from "./ErrorApp";
diff --git a/frontend/src/app/Errors/ErrorApp.tsx b/frontend/src/app/Errors/ErrorApp.tsx
index 8b3b17a7..deb99090 100644
--- a/frontend/src/app/Errors/ErrorApp.tsx
+++ b/frontend/src/app/Errors/ErrorApp.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
Button,
ClipboardCopyButton,
diff --git a/frontend/src/app/Errors/ErrorConnection.stories.tsx b/frontend/src/app/Errors/ErrorConnection.stories.tsx
index 313cca5c..1ee034d3 100644
--- a/frontend/src/app/Errors/ErrorConnection.stories.tsx
+++ b/frontend/src/app/Errors/ErrorConnection.stories.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import type { Meta, StoryObj } from "@storybook/react";
import { ErrorConnection } from "./ErrorConnection";
diff --git a/frontend/src/app/Errors/ErrorConnection.tsx b/frontend/src/app/Errors/ErrorConnection.tsx
index efda6b84..321b9b7b 100644
--- a/frontend/src/app/Errors/ErrorConnection.tsx
+++ b/frontend/src/app/Errors/ErrorConnection.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
EmptyState,
EmptyStateIcon,
diff --git a/frontend/src/app/Forge/ForgeIcon.stories.tsx b/frontend/src/app/Forge/ForgeIcon.stories.tsx
index 3afa684e..e48c363a 100644
--- a/frontend/src/app/Forge/ForgeIcon.stories.tsx
+++ b/frontend/src/app/Forge/ForgeIcon.stories.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { rest } from "msw";
import { withQueryClient } from "../utils/storybook/withQueryClient";
import { withRouter } from "storybook-addon-react-router-v6";
diff --git a/frontend/src/app/Forge/ForgeIcon.tsx b/frontend/src/app/Forge/ForgeIcon.tsx
index 8739b495..1075e16f 100644
--- a/frontend/src/app/Forge/ForgeIcon.tsx
+++ b/frontend/src/app/Forge/ForgeIcon.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import { Tooltip } from "@patternfly/react-core";
diff --git a/frontend/src/app/Jobs/.fixtures/CoprBuildsData.fixture.tsx b/frontend/src/app/Jobs/.fixtures/CoprBuildsData.fixture.tsx
index 888b286b..2a4afc18 100644
--- a/frontend/src/app/Jobs/.fixtures/CoprBuildsData.fixture.tsx
+++ b/frontend/src/app/Jobs/.fixtures/CoprBuildsData.fixture.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
export const CoprBuildData = [
{
packit_id: 25732,
diff --git a/frontend/src/app/Jobs/BodhiUpdatesTable.tsx b/frontend/src/app/Jobs/BodhiUpdatesTable.tsx
index 67fb8857..80f3102d 100644
--- a/frontend/src/app/Jobs/BodhiUpdatesTable.tsx
+++ b/frontend/src/app/Jobs/BodhiUpdatesTable.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useMemo } from "react";
import { TableVariant, cellWidth, IRow } from "@patternfly/react-table";
diff --git a/frontend/src/app/Jobs/CoprBuildsTable.stories.tsx b/frontend/src/app/Jobs/CoprBuildsTable.stories.tsx
index 45ecebd7..d1c09e13 100644
--- a/frontend/src/app/Jobs/CoprBuildsTable.stories.tsx
+++ b/frontend/src/app/Jobs/CoprBuildsTable.stories.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { CoprBuildsTable } from "./CoprBuildsTable";
import { rest } from "msw";
import { withQueryClient } from "../utils/storybook/withQueryClient";
diff --git a/frontend/src/app/Jobs/CoprBuildsTable.tsx b/frontend/src/app/Jobs/CoprBuildsTable.tsx
index 2e75e8bf..50957b35 100644
--- a/frontend/src/app/Jobs/CoprBuildsTable.tsx
+++ b/frontend/src/app/Jobs/CoprBuildsTable.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useMemo } from "react";
import { TableVariant, cellWidth, IRow } from "@patternfly/react-table";
diff --git a/frontend/src/app/Jobs/Jobs.stories.tsx b/frontend/src/app/Jobs/Jobs.stories.tsx
index 3b3c3f7f..81a622a0 100644
--- a/frontend/src/app/Jobs/Jobs.stories.tsx
+++ b/frontend/src/app/Jobs/Jobs.stories.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { rest } from "msw";
import { withQueryClient } from "../utils/storybook/withQueryClient";
import { withRouter } from "storybook-addon-react-router-v6";
diff --git a/frontend/src/app/Jobs/Jobs.tsx b/frontend/src/app/Jobs/Jobs.tsx
index a20d8ab4..ee79b8ed 100644
--- a/frontend/src/app/Jobs/Jobs.tsx
+++ b/frontend/src/app/Jobs/Jobs.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
Nav,
NavItem,
diff --git a/frontend/src/app/Jobs/KojiBuildsTable.tsx b/frontend/src/app/Jobs/KojiBuildsTable.tsx
index d1c10346..436190e4 100644
--- a/frontend/src/app/Jobs/KojiBuildsTable.tsx
+++ b/frontend/src/app/Jobs/KojiBuildsTable.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useMemo } from "react";
import { TableVariant, cellWidth, IRow } from "@patternfly/react-table";
diff --git a/frontend/src/app/Jobs/SRPMBuildsTable.tsx b/frontend/src/app/Jobs/SRPMBuildsTable.tsx
index dee00616..28d7a0b6 100644
--- a/frontend/src/app/Jobs/SRPMBuildsTable.tsx
+++ b/frontend/src/app/Jobs/SRPMBuildsTable.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { useMemo } from "react";
import { TableVariant, cellWidth, IRow } from "@patternfly/react-table";
diff --git a/frontend/src/app/Jobs/SyncReleaseStatuses.tsx b/frontend/src/app/Jobs/SyncReleaseStatuses.tsx
index 04ddc463..54b6ab93 100644
--- a/frontend/src/app/Jobs/SyncReleaseStatuses.tsx
+++ b/frontend/src/app/Jobs/SyncReleaseStatuses.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useMemo } from "react";
import { TableVariant, cellWidth, IRow } from "@patternfly/react-table";
diff --git a/frontend/src/app/Jobs/TestingFarmResultsTable.tsx b/frontend/src/app/Jobs/TestingFarmResultsTable.tsx
index b9570769..2df75402 100644
--- a/frontend/src/app/Jobs/TestingFarmResultsTable.tsx
+++ b/frontend/src/app/Jobs/TestingFarmResultsTable.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useMemo } from "react";
import { TableVariant, cellWidth, IRow } from "@patternfly/react-table";
diff --git a/frontend/src/app/NotFound/NotFound.stories.tsx b/frontend/src/app/NotFound/NotFound.stories.tsx
index 13a02456..9dcc50d6 100644
--- a/frontend/src/app/NotFound/NotFound.stories.tsx
+++ b/frontend/src/app/NotFound/NotFound.stories.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import type { Meta, StoryObj } from "@storybook/react";
import { NotFound } from "./NotFound";
diff --git a/frontend/src/app/NotFound/NotFound.tsx b/frontend/src/app/NotFound/NotFound.tsx
index bcffd69a..3c59d335 100644
--- a/frontend/src/app/NotFound/NotFound.tsx
+++ b/frontend/src/app/NotFound/NotFound.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import * as React from "react";
import { Alert, PageSection } from "@patternfly/react-core";
diff --git a/frontend/src/app/Pipelines/Pipelines.tsx b/frontend/src/app/Pipelines/Pipelines.tsx
index ef0266eb..d0c42ca3 100644
--- a/frontend/src/app/Pipelines/Pipelines.tsx
+++ b/frontend/src/app/Pipelines/Pipelines.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
PageSection,
diff --git a/frontend/src/app/Pipelines/PipelinesTable.tsx b/frontend/src/app/Pipelines/PipelinesTable.tsx
index f535adfb..c957d41d 100644
--- a/frontend/src/app/Pipelines/PipelinesTable.tsx
+++ b/frontend/src/app/Pipelines/PipelinesTable.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useMemo } from "react";
import { TableVariant, cellWidth, IRow } from "@patternfly/react-table";
diff --git a/frontend/src/app/Preloader/Preloader.tsx b/frontend/src/app/Preloader/Preloader.tsx
index b02b328e..a1f84be0 100644
--- a/frontend/src/app/Preloader/Preloader.tsx
+++ b/frontend/src/app/Preloader/Preloader.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import { Spinner } from "@patternfly/react-core";
diff --git a/frontend/src/app/Projects/BranchList.tsx b/frontend/src/app/Projects/BranchList.tsx
index 696b1a90..fde23bb3 100644
--- a/frontend/src/app/Projects/BranchList.tsx
+++ b/frontend/src/app/Projects/BranchList.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useState, useId } from "react";
import { ErrorConnection } from "../Errors/ErrorConnection";
diff --git a/frontend/src/app/Projects/Forge.stories.tsx b/frontend/src/app/Projects/Forge.stories.tsx
index 0f011349..14ac006f 100644
--- a/frontend/src/app/Projects/Forge.stories.tsx
+++ b/frontend/src/app/Projects/Forge.stories.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { rest } from "msw";
import { withQueryClient } from "../utils/storybook/withQueryClient";
import { withRouter } from "storybook-addon-react-router-v6";
diff --git a/frontend/src/app/Projects/Forge.tsx b/frontend/src/app/Projects/Forge.tsx
index f7e06a75..7619e381 100644
--- a/frontend/src/app/Projects/Forge.tsx
+++ b/frontend/src/app/Projects/Forge.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
PageSection,
PageSectionVariants,
diff --git a/frontend/src/app/Projects/IssuesList.tsx b/frontend/src/app/Projects/IssuesList.tsx
index 388e496a..4b1aabb1 100644
--- a/frontend/src/app/Projects/IssuesList.tsx
+++ b/frontend/src/app/Projects/IssuesList.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import { ErrorConnection } from "../Errors/ErrorConnection";
diff --git a/frontend/src/app/Projects/Namespace.tsx b/frontend/src/app/Projects/Namespace.tsx
index 316f17a0..a5d0cb4d 100644
--- a/frontend/src/app/Projects/Namespace.tsx
+++ b/frontend/src/app/Projects/Namespace.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
PageSection,
diff --git a/frontend/src/app/Projects/ProjectInfo.tsx b/frontend/src/app/Projects/ProjectInfo.tsx
index c9a132a7..1ff98af8 100644
--- a/frontend/src/app/Projects/ProjectInfo.tsx
+++ b/frontend/src/app/Projects/ProjectInfo.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
PageSection,
diff --git a/frontend/src/app/Projects/ProjectSearch.tsx b/frontend/src/app/Projects/ProjectSearch.tsx
index 1baadad6..7aaf30f8 100644
--- a/frontend/src/app/Projects/ProjectSearch.tsx
+++ b/frontend/src/app/Projects/ProjectSearch.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useState } from "react";
import {
Alert,
diff --git a/frontend/src/app/Projects/Projects.tsx b/frontend/src/app/Projects/Projects.tsx
index f99bb264..57cb8dab 100644
--- a/frontend/src/app/Projects/Projects.tsx
+++ b/frontend/src/app/Projects/Projects.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
PageSection,
diff --git a/frontend/src/app/Projects/ProjectsList.tsx b/frontend/src/app/Projects/ProjectsList.tsx
index f8ef09af..9fd75ac6 100644
--- a/frontend/src/app/Projects/ProjectsList.tsx
+++ b/frontend/src/app/Projects/ProjectsList.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useMemo } from "react";
import { Button } from "@patternfly/react-core";
diff --git a/frontend/src/app/Projects/PullRequestList.tsx b/frontend/src/app/Projects/PullRequestList.tsx
index 875a2d82..f98fb8b5 100644
--- a/frontend/src/app/Projects/PullRequestList.tsx
+++ b/frontend/src/app/Projects/PullRequestList.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useMemo, useState } from "react";
import { ErrorConnection } from "../Errors/ErrorConnection";
diff --git a/frontend/src/app/Projects/ReleasesList.tsx b/frontend/src/app/Projects/ReleasesList.tsx
index adcbc599..fb476e35 100644
--- a/frontend/src/app/Projects/ReleasesList.tsx
+++ b/frontend/src/app/Projects/ReleasesList.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import { ErrorConnection } from "../Errors/ErrorConnection";
diff --git a/frontend/src/app/Results/ResultsPageBodhiUpdate.tsx b/frontend/src/app/Results/ResultsPageBodhiUpdate.tsx
index 93d5eb0f..bb870e30 100644
--- a/frontend/src/app/Results/ResultsPageBodhiUpdate.tsx
+++ b/frontend/src/app/Results/ResultsPageBodhiUpdate.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
PageSection,
diff --git a/frontend/src/app/Results/ResultsPageCopr.tsx b/frontend/src/app/Results/ResultsPageCopr.tsx
index 075de5e0..30123fe3 100644
--- a/frontend/src/app/Results/ResultsPageCopr.tsx
+++ b/frontend/src/app/Results/ResultsPageCopr.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
PageSection,
Card,
diff --git a/frontend/src/app/Results/ResultsPageCoprDetails.tsx b/frontend/src/app/Results/ResultsPageCoprDetails.tsx
index 8b35b23e..e2c9232f 100644
--- a/frontend/src/app/Results/ResultsPageCoprDetails.tsx
+++ b/frontend/src/app/Results/ResultsPageCoprDetails.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
Label,
DescriptionList,
diff --git a/frontend/src/app/Results/ResultsPageKoji.tsx b/frontend/src/app/Results/ResultsPageKoji.tsx
index 7787b605..6d55e4b8 100644
--- a/frontend/src/app/Results/ResultsPageKoji.tsx
+++ b/frontend/src/app/Results/ResultsPageKoji.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
PageSection,
diff --git a/frontend/src/app/Results/ResultsPageSRPM.tsx b/frontend/src/app/Results/ResultsPageSRPM.tsx
index 6888f6c5..4079c652 100644
--- a/frontend/src/app/Results/ResultsPageSRPM.tsx
+++ b/frontend/src/app/Results/ResultsPageSRPM.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
PageSection,
diff --git a/frontend/src/app/Results/ResultsPageSyncReleaseRuns.tsx b/frontend/src/app/Results/ResultsPageSyncReleaseRuns.tsx
index aa0831ab..799a7944 100644
--- a/frontend/src/app/Results/ResultsPageSyncReleaseRuns.tsx
+++ b/frontend/src/app/Results/ResultsPageSyncReleaseRuns.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useState } from "react";
import {
PageSection,
diff --git a/frontend/src/app/Results/ResultsPageTestingFarm.tsx b/frontend/src/app/Results/ResultsPageTestingFarm.tsx
index e15f5f4e..88a0237a 100644
--- a/frontend/src/app/Results/ResultsPageTestingFarm.tsx
+++ b/frontend/src/app/Results/ResultsPageTestingFarm.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useEffect, useState } from "react";
import {
PageSection,
diff --git a/frontend/src/app/StatusLabel/BaseStatusLabel.tsx b/frontend/src/app/StatusLabel/BaseStatusLabel.tsx
index f4e816e7..b651b63e 100644
--- a/frontend/src/app/StatusLabel/BaseStatusLabel.tsx
+++ b/frontend/src/app/StatusLabel/BaseStatusLabel.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import { Label, Tooltip } from "@patternfly/react-core";
import { Link } from "react-router-dom";
diff --git a/frontend/src/app/StatusLabel/StatusLabel.tsx b/frontend/src/app/StatusLabel/StatusLabel.tsx
index 4be27d35..8ea380d4 100644
--- a/frontend/src/app/StatusLabel/StatusLabel.tsx
+++ b/frontend/src/app/StatusLabel/StatusLabel.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useEffect, useState } from "react";
import {
CheckCircleIcon,
diff --git a/frontend/src/app/StatusLabel/SyncReleaseTargetStatusLabel.tsx b/frontend/src/app/StatusLabel/SyncReleaseTargetStatusLabel.tsx
index 47e6d7ee..d14361bb 100644
--- a/frontend/src/app/StatusLabel/SyncReleaseTargetStatusLabel.tsx
+++ b/frontend/src/app/StatusLabel/SyncReleaseTargetStatusLabel.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useEffect, useState } from "react";
import { Spinner } from "@patternfly/react-core";
import {
diff --git a/frontend/src/app/Support/Support.tsx b/frontend/src/app/Support/Support.tsx
index fb94f428..96798b74 100644
--- a/frontend/src/app/Support/Support.tsx
+++ b/frontend/src/app/Support/Support.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import * as React from "react";
import { CubesIcon } from "@patternfly/react-icons";
import {
diff --git a/frontend/src/app/Trigger/TriggerInfo.tsx b/frontend/src/app/Trigger/TriggerInfo.tsx
index 5b7e70e2..022d2040 100644
--- a/frontend/src/app/Trigger/TriggerInfo.tsx
+++ b/frontend/src/app/Trigger/TriggerInfo.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React, { useState } from "react";
import { Label } from "@patternfly/react-core";
diff --git a/frontend/src/app/Trigger/TriggerLink.tsx b/frontend/src/app/Trigger/TriggerLink.tsx
index e180a5c7..518ebb6b 100644
--- a/frontend/src/app/Trigger/TriggerLink.tsx
+++ b/frontend/src/app/Trigger/TriggerLink.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
getPRLink,
diff --git a/frontend/src/app/Usage/Usage.tsx b/frontend/src/app/Usage/Usage.tsx
index 297abf8d..c33efbfe 100644
--- a/frontend/src/app/Usage/Usage.tsx
+++ b/frontend/src/app/Usage/Usage.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import {
PageSection,
diff --git a/frontend/src/app/Usage/UsageInterval.tsx b/frontend/src/app/Usage/UsageInterval.tsx
index 4ea89b95..84a090eb 100644
--- a/frontend/src/app/Usage/UsageInterval.tsx
+++ b/frontend/src/app/Usage/UsageInterval.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
PageSection,
Card,
diff --git a/frontend/src/app/Usage/UsageList.tsx b/frontend/src/app/Usage/UsageList.tsx
index 062ba7a8..90d84658 100644
--- a/frontend/src/app/Usage/UsageList.tsx
+++ b/frontend/src/app/Usage/UsageList.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import {
PageSection,
Card,
diff --git a/frontend/src/app/Usage/UsageListData.ts b/frontend/src/app/Usage/UsageListData.ts
index f567e4ad..1e0aad06 100644
--- a/frontend/src/app/Usage/UsageListData.ts
+++ b/frontend/src/app/Usage/UsageListData.ts
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
type TopProjectJobRuns = {
job_runs: number;
top_projects_by_job_runs: {
diff --git a/frontend/src/app/routes.tsx b/frontend/src/app/routes.tsx
index cc61d136..ec2cda53 100644
--- a/frontend/src/app/routes.tsx
+++ b/frontend/src/app/routes.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { RouteObject } from "react-router-dom";
import { AppLayout } from "./AppLayout/AppLayout";
diff --git a/frontend/src/app/utils/LabelLink.tsx b/frontend/src/app/utils/LabelLink.tsx
index f4a02433..ef14cac7 100644
--- a/frontend/src/app/utils/LabelLink.tsx
+++ b/frontend/src/app/utils/LabelLink.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { Label } from "@patternfly/react-core";
import React from "react";
import { Link } from "react-router-dom";
diff --git a/frontend/src/app/utils/SHACopy.tsx b/frontend/src/app/utils/SHACopy.tsx
index 9126e9cb..ab2da238 100644
--- a/frontend/src/app/utils/SHACopy.tsx
+++ b/frontend/src/app/utils/SHACopy.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { ClipboardCopy } from "@patternfly/react-core";
import React from "react";
import { getCommitLink } from "./forgeUrls";
diff --git a/frontend/src/app/utils/Timestamp.tsx b/frontend/src/app/utils/Timestamp.tsx
index c2b1f554..667d5701 100644
--- a/frontend/src/app/utils/Timestamp.tsx
+++ b/frontend/src/app/utils/Timestamp.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { Tooltip } from "@patternfly/react-core";
import React from "react";
diff --git a/frontend/src/app/utils/forgeUrls.tsx b/frontend/src/app/utils/forgeUrls.tsx
index 49698dcd..332bb07d 100644
--- a/frontend/src/app/utils/forgeUrls.tsx
+++ b/frontend/src/app/utils/forgeUrls.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
// getHostName - returns the hostname if possible, otherwise an empty string
function getHostName(url: string | URL) {
let hostname = "";
diff --git a/frontend/src/app/utils/storybook/withQueryClient.jsx b/frontend/src/app/utils/storybook/withQueryClient.jsx
index 3af67f98..92fb4abe 100644
--- a/frontend/src/app/utils/storybook/withQueryClient.jsx
+++ b/frontend/src/app/utils/storybook/withQueryClient.jsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
diff --git a/frontend/src/app/utils/useTitle.tsx b/frontend/src/app/utils/useTitle.tsx
index 1ccb0ffc..723f9e0a 100644
--- a/frontend/src/app/utils/useTitle.tsx
+++ b/frontend/src/app/utils/useTitle.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
export function useTitle(title: string) {
document.title = "Packit Service" + (title ? ` - ${title}` : "");
}
diff --git a/frontend/src/global.d.ts b/frontend/src/global.d.ts
index 6a97bec0..eeef3fbf 100644
--- a/frontend/src/global.d.ts
+++ b/frontend/src/global.d.ts
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
///
interface ImportMetaEnv {
readonly VITE_API_URL: string?;
diff --git a/frontend/src/index.tsx b/frontend/src/index.tsx
index 1f953fa4..75b77141 100644
--- a/frontend/src/index.tsx
+++ b/frontend/src/index.tsx
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import React from "react";
import { createRoot } from "react-dom/client";
import { App } from "./App";
diff --git a/frontend/vite-env.d.ts b/frontend/vite-env.d.ts
index 11f02fe2..36f7da50 100644
--- a/frontend/vite-env.d.ts
+++ b/frontend/vite-env.d.ts
@@ -1 +1,4 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
///
diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts
index 44ba5f40..0e1c053a 100644
--- a/frontend/vite.config.ts
+++ b/frontend/vite.config.ts
@@ -1,3 +1,6 @@
+// Copyright Contributors to the Packit project.
+// SPDX-License-Identifier: MIT
+
import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
diff --git a/packit_dashboard/__init__.py b/packit_dashboard/__init__.py
index e69de29b..e01ff12d 100644
--- a/packit_dashboard/__init__.py
+++ b/packit_dashboard/__init__.py
@@ -0,0 +1,2 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
diff --git a/packit_dashboard/api/__init__.py b/packit_dashboard/api/__init__.py
index e69de29b..e01ff12d 100644
--- a/packit_dashboard/api/__init__.py
+++ b/packit_dashboard/api/__init__.py
@@ -0,0 +1,2 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
diff --git a/packit_dashboard/app.py b/packit_dashboard/app.py
index 0664b9cd..e8bdeffc 100644
--- a/packit_dashboard/app.py
+++ b/packit_dashboard/app.py
@@ -1,3 +1,6 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
from os import getenv
from flask import Flask
diff --git a/packit_dashboard/config.py b/packit_dashboard/config.py
index 6339f84b..378a799d 100644
--- a/packit_dashboard/config.py
+++ b/packit_dashboard/config.py
@@ -1,3 +1,6 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
from os import getenv
deployment = getenv("DEPLOYMENT", "stg")
diff --git a/packit_dashboard/home/__init__.py b/packit_dashboard/home/__init__.py
index e69de29b..e01ff12d 100644
--- a/packit_dashboard/home/__init__.py
+++ b/packit_dashboard/home/__init__.py
@@ -0,0 +1,2 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
diff --git a/packit_dashboard/home/routes.py b/packit_dashboard/home/routes.py
index 7e822b15..1f330e3b 100644
--- a/packit_dashboard/home/routes.py
+++ b/packit_dashboard/home/routes.py
@@ -1,3 +1,6 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
from flask import Blueprint, render_template
home = Blueprint("home", __name__, template_folder="../../frontend/dist")
diff --git a/packit_dashboard/packit_dashboard.wsgi b/packit_dashboard/packit_dashboard.wsgi
index b6c09c71..e6fe356e 100644
--- a/packit_dashboard/packit_dashboard.wsgi
+++ b/packit_dashboard/packit_dashboard.wsgi
@@ -1,3 +1,6 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
import sys
sys.path.append("/src/")
diff --git a/packit_dashboard/utils.py b/packit_dashboard/utils.py
index 33d0e9b1..329d34e6 100644
--- a/packit_dashboard/utils.py
+++ b/packit_dashboard/utils.py
@@ -1,3 +1,6 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
from flask import jsonify, Response as FlaskResponse
from requests import request, Response as RequestsResponse
diff --git a/tests/__init__.py b/tests/__init__.py
index e69de29b..e01ff12d 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -0,0 +1,2 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
diff --git a/tests/spellbook.py b/tests/spellbook.py
index ee217135..b363ab3c 100644
--- a/tests/spellbook.py
+++ b/tests/spellbook.py
@@ -1,3 +1,6 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
from pathlib import Path
TESTS_DIR = Path(__file__).parent
diff --git a/tests/tests_requre/__init__.py b/tests/tests_requre/__init__.py
index 659dcdc6..0eb57813 100644
--- a/tests/tests_requre/__init__.py
+++ b/tests/tests_requre/__init__.py
@@ -1,3 +1,6 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
"""
from requre.helpers.requests_response import RequestResponseHandling
from requre.import_system import upgrade_import_system
diff --git a/tests/tests_requre/test_requre.py b/tests/tests_requre/test_requre.py
index 76cea84e..ab78ba37 100644
--- a/tests/tests_requre/test_requre.py
+++ b/tests/tests_requre/test_requre.py
@@ -1,3 +1,6 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT
+
"""
from requre.storage import PersistentObjectStorage
diff --git a/tests/unit/__init__.py b/tests/unit/__init__.py
index e69de29b..e01ff12d 100644
--- a/tests/unit/__init__.py
+++ b/tests/unit/__init__.py
@@ -0,0 +1,2 @@
+# Copyright Contributors to the Packit project.
+# SPDX-License-Identifier: MIT