SPDXVersion: SPDX-2.1 DataLicense: CC0-1.0 SPDXID: SPDXRef-DOCUMENT DocumentName: project DocumentNamespace: http://spdx.org/spdxdocs/spdx-v2.1-7c702e57-fb9b-4855-9567-ce39d01a0b86 Creator: Person: Anonymous () Creator: Organization: Anonymous () Creator: Tool: reuse-6.1.0 Created: 2026-05-13T12:59:02Z CreatorComment: This document was created automatically using available reuse information consistent with REUSE. Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-041b80cb7407b1cc59f607e449e037ad Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-63f11628153eb59e761ea293422001cb Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8fd32224d080851f7b012a645e7ccf93 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a2aa65ddac52a0f4ad63030b7ea92328 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a8fd0ee5aa86958476593d251b978e35 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-be8f05ee6a431aa1f8f363d83f31b18a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-81e98f1ee4c6cb81a7bd774b5dbb7b74 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ae39448ad4229f8f72e4d91136911b90 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0455c2777cb87594270a199f5e341c0c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ce2f9ffe71200828656890f09d13befd Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c83df801fb369d2069dc4a947aeca814 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1caf0f063cabaaf283696ac1c76a590c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-56bb853c82b396d22570e0a689ef3e41 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-eab6ae3d0e7f7bbc9ecd4eb1ffa9c0d7 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0b83a92e8c90dfdf1b49f0b35ac6e729 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-dc8c94cf41141c34a49b417a9f3e1d64 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8effc75368a2206eec88283da89ce38a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a897454f056f992c091e44fdc30e2c13 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-f0d08f5027b887758cc5d283fa99b225 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8fc2b4363913a7d8200eaf5c1bb927ad Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b66fb6054c752ac4488be1e24cad7972 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-cd90371a9118b8210686491134d0a0df Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b127233efc892f45688cbc6abd900b09 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-986871ede40c8907a3532fab5c48f9a4 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a4093ef69cb5369c9afb09bbb812ea33 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-7388e1de496e8155498f0658aca2fa1e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b7f7b86ae8842404047c8143e1841adf Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e16c5be80a007ffd6d32e7bd70c929b3 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a2c3410e93a1e3a15cd0bb550b46358d Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-bbd10b3b707d7859dafd828af60d607d Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0495b18a59479e9854c50a6a344ad94c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-d947f7e9ba24971ab8bf7f23b1ee4d08 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1efcf6661f6a80e76051dcf7fdf3ab91 FileName: ./.editorconfig SPDXID: SPDXRef-041b80cb7407b1cc59f607e449e037ad FileChecksum: SHA1: e0bfc606dc8b9a9bbb670593feab485827c0fee1 LicenseConcluded: NOASSERTION LicenseInfoInFile: WTFPL FileCopyrightText: Copyright 2021 林博仁(Buo-ren, Lin) FileName: ./.gitattributes SPDXID: SPDXRef-63f11628153eb59e761ea293422001cb FileChecksum: SHA1: 57cce264752ff2838e20e7ae3ab253af950673e0 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./.github/workflows/README.md SPDXID: SPDXRef-8fd32224d080851f7b012a645e7ccf93 FileChecksum: SHA1: 9d151e013d56ae3168718e6851b7aa96259d49f0 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2026 林博仁(Buo-ren Lin) FileName: ./.github/workflows/check-potential-problems.yml SPDXID: SPDXRef-a2aa65ddac52a0f4ad63030b7ea92328 FileChecksum: SHA1: 08a5e2a52176b1c6520cb16c3c8dcb6ae3cb530d LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./.github/workflows/playwright.yml SPDXID: SPDXRef-a8fd0ee5aa86958476593d251b978e35 FileChecksum: SHA1: de1e954d3a30f4c9499ba76ea9a706dcd4637c4c LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: Copyright 2026 Buo-ren Lin FileName: ./.github/workflows/release.yml SPDXID: SPDXRef-be8f05ee6a431aa1f8f363d83f31b18a FileChecksum: SHA1: 56df8a84589740641c0840a92232f9078bf5f473 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./.gitignore SPDXID: SPDXRef-81e98f1ee4c6cb81a7bd774b5dbb7b74 FileChecksum: SHA1: 805dcdba8a907ef1d6876bf60fe4458a723f119e LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2022 林博仁(Buo-ren, Lin) FileName: ./.gitlab-ci.yml SPDXID: SPDXRef-ae39448ad4229f8f72e4d91136911b90 FileChecksum: SHA1: f81152c4d1b2f53c77688939549215c9ee5cbbfe LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./.gitmodules SPDXID: SPDXRef-0455c2777cb87594270a199f5e341c0c FileChecksum: SHA1: e8685d141b9ee8440b27343d9c704526a253122f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./.markdownlint.yml SPDXID: SPDXRef-ce2f9ffe71200828656890f09d13befd FileChecksum: SHA1: ae78a301a8f39cb5e34eca04e81b74bc8d0c0a6a LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./.pre-commit-config.yaml SPDXID: SPDXRef-c83df801fb369d2069dc4a947aeca814 FileChecksum: SHA1: db6397097023fe6a16aa5e59754f5c51fa3491fc LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2026 林博仁(Buo-ren Lin) FileName: ./.shellcheckrc SPDXID: SPDXRef-1caf0f063cabaaf283696ac1c76a590c FileChecksum: SHA1: 1a0742d66206611670ccf702f9886b54e4f39dfd LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0+ FileCopyrightText: Copyright 2025 林博仁(Buo-ren Lin) FileName: ./.yamllint SPDXID: SPDXRef-56bb853c82b396d22570e0a689ef3e41 FileChecksum: SHA1: 87355465f7ef3eb23a1d99b52f267fa4d371dc8c LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2021 林博仁(Buo-ren, Lin) FileName: ./README.md SPDXID: SPDXRef-eab6ae3d0e7f7bbc9ecd4eb1ffa9c0d7 FileChecksum: SHA1: 018c821e59eb3d1c4732761bdcc4ee78dad90852 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2026 林博仁(Buo-ren Lin) FileName: ./Vagrantfile SPDXID: SPDXRef-0b83a92e8c90dfdf1b49f0b35ac6e729 FileChecksum: SHA1: 42a02c61ccd875b31277f8f78dc9ee9faf99679d LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0+ FileCopyrightText: Copyright 2025 林博仁(Buo-ren Lin) FileName: ./compose.yml SPDXID: SPDXRef-dc8c94cf41141c34a49b417a9f3e1d64 FileChecksum: SHA1: 63b71f814c69c68dd2c6c1a026b99874407098a8 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2026 林博仁(Buo-ren Lin) FileName: ./continuous-integration/create-gitlab-release.sh SPDXID: SPDXRef-8effc75368a2206eec88283da89ce38a FileChecksum: SHA1: 992317a1a170596314d4b7dc00b4386eaa5dc113 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./continuous-integration/do-static-analysis.install-system-deps.sh SPDXID: SPDXRef-a897454f056f992c091e44fdc30e2c13 FileChecksum: SHA1: a3616f24dfd523456000580962b2ee10cb8ac9c3 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2026 林博仁(Buo-ren Lin) FileName: ./continuous-integration/do-static-analysis.sh SPDXID: SPDXRef-f0d08f5027b887758cc5d283fa99b225 FileChecksum: SHA1: 12b37ef685f574129d25586c569207e567684fdf LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2025 林博仁(Buo-ren Lin) FileName: ./continuous-integration/generate-build-artifacts.install-system-deps.sh SPDXID: SPDXRef-8fc2b4363913a7d8200eaf5c1bb927ad FileChecksum: SHA1: d3fc826400922ca00e2b36eb4c46c032619f53b2 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2026 林博仁(Buo-ren Lin) FileName: ./continuous-integration/generate-build-artifacts.sh SPDXID: SPDXRef-b66fb6054c752ac4488be1e24cad7972 FileChecksum: SHA1: ca5ca9f8cce074adbc88c67e333dcc37837d3a35 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2025 林博仁(Buo-ren Lin) FileName: ./continuous-integration/generate-release-description.sh SPDXID: SPDXRef-cd90371a9118b8210686491134d0a0df FileChecksum: SHA1: 040b023f72902c7a94fab4e5544c862a900ce920 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./continuous-integration/patch-github-actions-sudo-security-policy.sh SPDXID: SPDXRef-b127233efc892f45688cbc6abd900b09 FileChecksum: SHA1: 4ceed8f400a54eea2ac98bdbe8e17d3a04ccaa1c LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./continuous-integration/sudoers.d/90_allow_github_actions_default_envvars.sudoers SPDXID: SPDXRef-986871ede40c8907a3532fab5c48f9a4 FileChecksum: SHA1: ab8894fa020fceefab2cd598a796e9ffd6c32302 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./continuous-integration/sudoers.d/README.md SPDXID: SPDXRef-a4093ef69cb5369c9afb09bbb812ea33 FileChecksum: SHA1: bd347f52a5b7d9aa9c592e8f4bbd0d0503717358 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2026 林博仁(Buo-ren Lin) FileName: ./continuous-integration/upload-gitlab-generic-packages.sh SPDXID: SPDXRef-7388e1de496e8155498f0658aca2fa1e FileChecksum: SHA1: 4c2ca71fa0a1c9afb646fc432828cf360a11cd5e LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: Copyright 2024 林博仁(Buo-ren Lin) FileName: ./dev-assets/README.md SPDXID: SPDXRef-b7f7b86ae8842404047c8143e1841adf FileChecksum: SHA1: ef30dd0668d95e48db6f7aefeb16b60582df6ee6 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2026 林博仁(Buo-ren Lin) FileName: ./dev-assets/deploy-test-environment.sh SPDXID: SPDXRef-e16c5be80a007ffd6d32e7bd70c929b3 FileChecksum: SHA1: 89eb3d5aef0f6eeb3caead2c4ea9cd702757b4e3 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0+ FileCopyrightText: Copyright 2026 林博仁(Buo-ren Lin) FileName: ./functions.sh SPDXID: SPDXRef-a2c3410e93a1e3a15cd0bb550b46358d FileChecksum: SHA1: e7b4638a8e657bf8e54e1b1e45a2c8a4892f9243 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0+ FileCopyrightText: Copyright 2025 林博仁(Buo-ren Lin) FileName: ./package-lock.json SPDXID: SPDXRef-bbd10b3b707d7859dafd828af60d607d FileChecksum: SHA1: c81ef88bcb59cda8b71a0976f8fe9119e03fda9e LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2026 林博仁(Buo-ren Lin) FileName: ./package.json SPDXID: SPDXRef-0495b18a59479e9854c50a6a344ad94c FileChecksum: SHA1: 9f9f7afd07693ed8d7af9b3290e639eaf4ad3452 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2026 林博仁(Buo-ren Lin) FileName: ./playwright.config.ts SPDXID: SPDXRef-d947f7e9ba24971ab8bf7f23b1ee4d08 FileChecksum: SHA1: a3a8675afafb7c40b5a954271606f1e14e896fda LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: Copyright 2026 Buo-ren Lin FileName: ./tests/example.spec.ts SPDXID: SPDXRef-1efcf6661f6a80e76051dcf7fdf3ab91 FileChecksum: SHA1: a84ea6b58e07e3440ebb86146cfbbc1fd798da3b LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: Copyright 2026 Buo-ren Lin