{"id":13400365,"url":"https://github.com/owncast/owncast","last_synced_at":"2026-10-18T22:08:58.653Z","repository":{"id":37021113,"uuid":"266445736","full_name":"owncast/owncast","owner":"owncast","description":"Take control over your live stream video by running it yourself.  Streaming + chat out of the box.","archived":false,"fork":false,"pushed_at":"2026-10-05T15:55:08.000Z","size":1086321,"stargazers_count":11574,"open_issues_count":171,"forks_count":1184,"subscribers_count":105,"default_branch":"develop","last_synced_at":"2026-10-07T00:43:32.813Z","etag":null,"topics":["activitypub","broadcasting","chat","decentralized","federation","fediverse","golang","hacktoberfest","hls","live","livestream","owncast","rtmp","self-hosted","streaming-video","video"],"latest_commit_sha":null,"homepage":"https://owncast.online","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/owncast.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"docs/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","claude":"CLAUDE.md","gemini":null,"cursor":null,"copilot":".github/copilot-instructions.md","dco":null,"cla":null,"disclosure":null},"funding":{"open_collective":"owncast"}},"created_at":"2020-05-24T00:58:13.000Z","updated_at":"2026-10-07T00:17:23.000Z","dependencies_parsed_at":"2026-09-29T18:58:05.617Z","dependency_job_id":null,"html_url":"https://github.com/owncast/owncast","commit_stats":{"total_commits":8253,"total_committers":152,"mean_commits":"54.296052631578945","dds":0.6986550345328971,"last_synced_commit":"921f4f9e4c41fe17f8df4fa3125d9bd7e0718782"},"previous_names":["gabek/owncast","gabek/video-stream"],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/owncast/owncast","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/owncast%2Fowncast","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/owncast%2Fowncast/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/owncast%2Fowncast/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/owncast%2Fowncast/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/owncast","download_url":"https://codeload.github.com/owncast/owncast/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/owncast%2Fowncast/sbom","scorecard":{"id":416245,"data":{"date":"2025-08-11","repo":{"name":"github.com/owncast/owncast","commit":"c5234a22796573207b900ab2d6392cf39d74c388"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.5,"checks":[{"name":"Maintained","score":10,"reason":"30 commit(s) and 24 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 0/24 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: docs/SECURITY.md:1","Info: Found linked content: docs/SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: docs/SECURITY.md:1","Info: Found text in security policy: docs/SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/copilot-setup-steps.yml:23","Warn: no topLevel permission defined: .github/workflows/actions-lint.yml:1","Warn: no topLevel permission defined: .github/workflows/add-default-web-localizations.yml:1","Warn: no topLevel permission defined: .github/workflows/auto-comment-on-label.yaml:1","Warn: no topLevel permission defined: .github/workflows/automated-end-to-end-api.yaml:1","Warn: no topLevel permission defined: .github/workflows/browser-testing.yml:1","Warn: no topLevel permission defined: .github/workflows/build-storybook.yml:1","Warn: no topLevel permission defined: .github/workflows/chromatic.yml:1","Warn: no topLevel permission defined: .github/workflows/codeql-analysis.yml:1","Warn: no topLevel permission defined: .github/workflows/container-lint.yml:1","Warn: no topLevel permission defined: .github/workflows/container.yaml:1","Warn: no topLevel permission defined: .github/workflows/copilot-setup-steps.yml:1","Warn: no topLevel permission defined: .github/workflows/css-lint.yaml:1","Warn: no topLevel permission defined: .github/workflows/generate-api-documentation.yaml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/go-lint.yml:11","Warn: no topLevel permission defined: .github/workflows/go-tests.yaml:1","Warn: no topLevel permission defined: .github/workflows/hls-tests.yml:1","Warn: no topLevel permission defined: .github/workflows/javascript-format-test-build.yml:1","Warn: no topLevel permission defined: .github/workflows/shellcheck.yml:1","Warn: no topLevel permission defined: .github/workflows/stale.yml:1","Warn: no topLevel permission defined: .github/workflows/translations.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v0.2.3 not signed: https://api.github.com/repos/owncast/owncast/releases/217201367","Warn: release artifact v0.2.2 not signed: https://api.github.com/repos/owncast/owncast/releases/207649910","Warn: release artifact v0.2.1 not signed: https://api.github.com/repos/owncast/owncast/releases/195053995","Warn: release artifact v0.2.0 not signed: https://api.github.com/repos/owncast/owncast/releases/193231882","Warn: release artifact v0.1.3 not signed: https://api.github.com/repos/owncast/owncast/releases/145405242","Warn: release artifact v0.2.3 does not have provenance: https://api.github.com/repos/owncast/owncast/releases/217201367","Warn: release artifact v0.2.2 does not have provenance: https://api.github.com/repos/owncast/owncast/releases/207649910","Warn: release artifact v0.2.1 does not have provenance: https://api.github.com/repos/owncast/owncast/releases/195053995","Warn: release artifact v0.2.0 does not have provenance: https://api.github.com/repos/owncast/owncast/releases/193231882","Warn: release artifact v0.1.3 does not have provenance: https://api.github.com/repos/owncast/owncast/releases/145405242"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: SAST configuration detected: CodeQL","Info: all commits (9) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'develop'","Info: 'force pushes' disabled on branch 'develop'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'develop'","Warn: could not determine whether codeowners review is allowed","Warn: no status checks found to merge onto branch 'develop'","Warn: PRs are not required to make changes on branch 'develop'; or we don't have data to detect it.If you think it might be the latter, make sure to run Scorecard with a PAT or use Repo Rules (that are always public) instead of Branch Protection settings"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/actions-lint.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/actions-lint.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/actions-lint.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/actions-lint.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/actions-lint.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/actions-lint.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/add-default-web-localizations.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/add-default-web-localizations.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/add-default-web-localizations.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/add-default-web-localizations.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/automated-end-to-end-api.yaml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/automated-end-to-end-api.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/automated-end-to-end-api.yaml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/automated-end-to-end-api.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/automated-end-to-end-api.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/automated-end-to-end-api.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/automated-end-to-end-api.yaml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/automated-end-to-end-api.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/automated-end-to-end-api.yaml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/automated-end-to-end-api.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/automated-end-to-end-api.yaml:52: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/automated-end-to-end-api.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/automated-end-to-end-api.yaml:59: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/automated-end-to-end-api.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/browser-testing.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/browser-testing.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/browser-testing.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/browser-testing.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/browser-testing.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/browser-testing.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/browser-testing.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/browser-testing.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/browser-testing.yml:38: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/browser-testing.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/browser-testing.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/browser-testing.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/browser-testing.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/browser-testing.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-storybook.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/build-storybook.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-storybook.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/build-storybook.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build-storybook.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/build-storybook.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build-storybook.yml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/build-storybook.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build-storybook.yml:65: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/build-storybook.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/chromatic.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/chromatic.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/chromatic.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/chromatic.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/chromatic.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/chromatic.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/chromatic.yml:43: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/chromatic.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/chromatic.yml:59: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/chromatic.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/codeql-analysis.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:47: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/codeql-analysis.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/codeql-analysis.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/codeql-analysis.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:69: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/codeql-analysis.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/codeql-analysis.yml:83: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/codeql-analysis.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/container-lint.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/container-lint.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/container-lint.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/container-lint.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/container.yaml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/container.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/container.yaml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/container.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/container.yaml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/container.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/container.yaml:48: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/container.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/container.yaml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/container.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/copilot-setup-steps.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/copilot-setup-steps.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/copilot-setup-steps.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/copilot-setup-steps.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/copilot-setup-steps.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/copilot-setup-steps.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/css-lint.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/css-lint.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/css-lint.yaml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/css-lint.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/css-lint.yaml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/css-lint.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/css-lint.yaml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/css-lint.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/generate-api-documentation.yaml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/generate-api-documentation.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/generate-api-documentation.yaml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/generate-api-documentation.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/generate-api-documentation.yaml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/generate-api-documentation.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/go-lint.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-lint.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-lint.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-lint.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-lint.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-lint.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-lint.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-lint.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/go-lint.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-lint.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-tests.yaml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-tests.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/go-tests.yaml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-tests.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-tests.yaml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-tests.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-tests.yaml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-tests.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-tests.yaml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-tests.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/go-tests.yaml:65: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-tests.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-tests.yaml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-tests.yaml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/go-tests.yaml:82: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/go-tests.yaml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/hls-tests.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/hls-tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hls-tests.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/hls-tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hls-tests.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/hls-tests.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/hls-tests.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/hls-tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hls-tests.yml:47: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/hls-tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/hls-tests.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/hls-tests.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/hls-tests.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/hls-tests.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/hls-tests.yml:75: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/hls-tests.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:167: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:174: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:179: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:191: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:198: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:213: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:95: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:113: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:120: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:127: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:131: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/javascript-format-test-build.yml:136: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/javascript-format-test-build.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/shellcheck.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/shellcheck.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/shellcheck.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/shellcheck.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/stale.yml:10: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/stale.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/translations.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/translations.yml/develop?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/translations.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/owncast/owncast/translations.yml/develop?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:8","Warn: containerImage not pinned by hash: Dockerfile:25: pin your Docker image by updating alpine:3.22.1 to alpine:3.22.1@sha256:4bcff63911fcb4448bd4fdacec207030997caf25e9bea4045fa6c8c44de311d1","Warn: npmCommand not pinned by hash: build/web/bundleWeb.sh:25","Warn: npmCommand not pinned by hash: test/automated/api/run.sh:8","Warn: npmCommand not pinned by hash: test/automated/browser/run.sh:35","Warn: npmCommand not pinned by hash: test/automated/hls/run-s3.sh:14","Warn: npmCommand not pinned by hash: test/automated/hls/run.sh:8","Warn: npmCommand not pinned by hash: test/automated/screenshots/run.sh:24","Warn: npmCommand not pinned by hash: .github/workflows/build-storybook.yml:45","Warn: npmCommand not pinned by hash: .github/workflows/chromatic.yml:56","Warn: npmCommand not pinned by hash: .github/workflows/css-lint.yaml:47","Warn: npmCommand not pinned by hash: .github/workflows/javascript-format-test-build.yml:73","Warn: npmCommand not pinned by hash: .github/workflows/javascript-format-test-build.yml:149","Warn: npmCommand not pinned by hash: .github/workflows/translations.yml:34","Info:   0 out of  63 GitHub-owned GitHubAction dependencies pinned","Info:   1 out of  34 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned","Info:   2 out of  14 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Vulnerabilities","score":0,"reason":"22 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GO-2022-0635","Warn: Project is vulnerable to: GO-2022-0646","Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-h452-7996-h45h","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-75v8-2h7p-7m2m","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-p8p7-x288-28g6","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-pxg6-pf52-xh8x","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-pfrx-2q88-qq97","Warn: Project is vulnerable to: GHSA-p6mc-m468-83gw","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-pq67-2wwv-3xjx","Warn: Project is vulnerable to: GHSA-8cj5-5rvv-wf4v","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q","Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6","Warn: Project is vulnerable to: GHSA-67mh-4wv8-2f99","Warn: Project is vulnerable to: GHSA-m5qc-5hw7-8vg7","Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j","Warn: Project is vulnerable to: GHSA-7fh5-64p2-3v2j"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-18T23:56:06.056Z","repository_id":37021113,"created_at":"2025-08-18T23:56:06.056Z","updated_at":"2025-08-18T23:56:06.056Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":344872684,"owners_count":38342695,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-10-03T21:59:58.778Z","status":"online","status_checked_at":"2026-10-18T02:00:06.448Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["activitypub","broadcasting","chat","decentralized","federation","fediverse","golang","hacktoberfest","hls","live","livestream","owncast","rtmp","self-hosted","streaming-video","video"],"created_at":"2024-07-30T19:00:51.201Z","updated_at":"2026-10-18T22:08:58.647Z","avatar_url":"https://github.com/owncast.png","language":"Go","funding_links":["https://opencollective.com/owncast"],"categories":["TypeScript","Popular","The projects","Social Networks and Platforms","Go","Software","golang","HarmonyOS","Other","Apps","activitypub","Streaming"],"sub_categories":["Streaming Platforms (Twitch)","Media Streaming - Video Streaming","Windows Manager","General Purpose Libraries","MediaManagement"],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/owncast/owncast\" alt=\"Owncast\"\u003e\n    \u003cimg src=\"https://owncast.online/images/logo.png\" alt=\"Owncast Logo\" width=\"200\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003cstrong\u003eTake control over your content and stream it yourself.\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cbr/\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003ca href=\"https://github.com/owncast/owncast/blob/develop/LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/License-MIT-green.svg\" alt=\"License\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cbr/\u003e\n\n\u003cp align=\"center\"\u003e\n\t\u003ca href=\"https://owncast.online\"\u003e\u003cstrong\u003eExplore the docs »\u003c/strong\u003e\u003c/a\u003e\n\t\u003cbr /\u003e\n\t\u003ca href=\"https://watch.owncast.online/\"\u003eView Demo\u003c/a\u003e\n\t·\n\t\u003ca href=\"https://owncast.online/faq/\"\u003eFAQ\u003c/a\u003e\n\t·\n\t\u003ca href=\"https://github.com/owncast/owncast/issues\"\u003eReport Bug\u003c/a\u003e\n\t·\n\t\u003ca href=\"docs/SECURITY.md\"\u003eReport Security Issue\u003c/a\u003e\n\u003c/p\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\n## Table of Contents\n\n- 📒 [About the Project](#about-the-project)\n- 🚀 [Getting Started](#getting-started)\n- 👨‍💻 [Use with your broadcasting software](#use-with-your-existing-broadcasting-software)\n- 🛠 [Building from source](#building-from-source)\n  - 🚨 [Important note about source code and the develop branch](#important-note-about-source-code-and-the-develop-branch)\n  - 🗄️ [Backend](#backend)\n  - ⚛️ [Frontend](#frontend)\n- 👏 [Contributing](#contributing)\n  - 💵 [Donors](#donors)\n- [Security](#security)\n- 📝 [License](#license)\n- [Contact](#contact)\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n\n## About The Project\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://owncast.online/images/owncast-splash.png\"\u003e\n    \u003cimg src=\"https://owncast.online/images/owncast-splash.png\" width=\"70%\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\nOwncast is an open source, self-hosted, decentralized, single user live video streaming and chat server for running your own live streams similar in style to the large mainstream options. It offers complete ownership over your content, interface, moderation and audience. \u003ca href=\"https://watch.owncast.online\"\u003eVisit the demo\u003c/a\u003e for an example.\n\n\u003cdiv\u003e\n    \u003cimg alt=\"GitHub all releases\" src=\"https://img.shields.io/github/downloads/owncast/owncast/total?style=for-the-badge\"\u003e\n\t  \u003ca href=\"https://hub.docker.com/r/owncast/owncast\"\u003e\n      \u003cimg alt=\"Docker Pulls\" src=\"https://img.shields.io/docker/pulls/owncast/owncast?style=for-the-badge\"\u003e\n\t  \u003c/a\u003e\n    \u003ca href=\"https://github.com/owncast/owncast/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22\"\u003e\n      \u003cimg alt=\"GitHub issues by-label\" src=\"https://img.shields.io/github/issues-raw/owncast/owncast/good%20first%20issue?style=for-the-badge\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://opencollective.com/owncast\"\u003e\n      \u003cimg alt=\"Open Collective backers and sponsors\" src=\"https://img.shields.io/opencollective/all/owncast?style=for-the-badge\"\u003e\n    \u003c/a\u003e\n\u003c/div\u003e\n\n---\n\n\u003c!-- GETTING STARTED --\u003e\n\n## Getting Started\n\nThe goal is to have a single service that you can run and it works out of the box. **Visit the [Quickstart](https://owncast.online/docs/quickstart/) to get up and running.**\n\n## Use with your existing broadcasting software\n\nIn general, Owncast is compatible with any software that uses `RTMP` to broadcast to a remote server. `RTMP` is what all the major live streaming services use, so if you’re currently using one of those it’s likely that you can point your existing software at your Owncast instance instead.\n\nOBS, Streamlabs, Restream and many others have been used with Owncast. [Read more about compatibility with existing software](https://owncast.online/docs/broadcasting/).\n\n## Building from Source\n\nOwncast consists of two projects.\n\n1. The Owncast backend is written in Go.\n1. The frontend is written in React.\n\n[Read more about running from source](https://owncast.online/development/).\n\n### Important note about source code and the develop branch\n\nThe `develop` branch is always the most up-to-date state of development and this may not be what you always want. If you want to run the latest released stable version, check out the tag related to that release. For example, if you'd only like the source prior to the v0.1.0 development cycle you can check out the `v0.0.13` tag.\n\n\u003e Note: Currently Owncast does not natively support Windows servers. However, Windows Users can use Windows Subsystem for Linux (WSL2) to install Owncast. For details visit [this document](https://github.com/owncast/owncast/blob/develop/contrib/owncast_for_windows.md).\n\n### Backend\n\nThe Owncast backend is a service written in Go.\n\n1. Ensure you have prerequisites installed.\n   - C compiler, such as [GCC compiler](https://gcc.gnu.org/install/download.html) or a [Musl-compatible compiler](https://musl.libc.org/)\n   - [ffmpeg](https://ffmpeg.org/download.html)\n1. Install the [Go toolchain](https://golang.org/dl/) (1.24 or above).\n1. Clone the repo. `git clone https://github.com/owncast/owncast`\n1. `go run main.go` will run from the source.\n1. Visit `http://yourserver:8080` to access the web interface or `http://yourserver:8080/admin` to access the admin.\n1. Point your [broadcasting software](https://owncast.online/docs/broadcasting/) at your new server and start streaming.\n\n### Frontend\n\nThe frontend is the web interface that includes the player, chat, embed components, and other UI.\n\n1. This project lives in the `web` directory.\n1. Run `npm install` to install the Javascript dependencies.\n1. Run `npm run dev`\n\n## Contributing\n\nOwncast is a growing open source project that is giving freedom, flexibility and fun to live streamers.\nAnd while we have a small team of kind, talented and thoughtful volunteers, we have gaps in our skillset that we’d love to fill so we can get even better at building tools that make a difference for people.\n\nWe abide by our [Code of Conduct](https://owncast.online/contribute/) and feel strongly about open, appreciative, and empathetic people joining us.\nWe’ve been very lucky to have this so far, so maybe you can help us with your skills and passion, too!\n\nIf you're new to the project, maybe you'd be interested in looking at [![Good First Issue](https://img.shields.io/github/issues/owncast/owncast/good%20first%20issue.svg)](https://github.com/owncast/owncast/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).\n\nThere is a larger, more detailed, and more up-to-date [guide for helping contribute to Owncast on our website](https://owncast.online/help/).\n\n### Donors\n\nThe Owncast project is possible thanks to the people who make a donation to support us and our work.\nThank you to all our donors who help keep Owncast running by donating on OpenCollective. You can support this project by [becoming a backer/sponsor](https://opencollective.com/owncast#suppor).\n\n\u003cdiv\u003e\n\t\u003ca href=\"https://opencollective.com/owncast#support\"\u003e\n\t\t\u003cimg alt=\"GitHub issues by-label\" src=\"https://opencollective.com/owncast/tiers/backers.svg?avatarHeight=36\u0026width=600\" alt=\"Backer button\"\u003e\n\t\u003c/a\u003e\n\u003c/div\u003e\n\n\u003c!-- SECURITY --\u003e\n\n## Security\n\nReport suspected security vulnerabilities privately to [security@owncast.online](mailto:security@owncast.online). This is the security-reporting address. The personal contact information in the Support section is for general contact, not vulnerability reports.\n\nSee the repository [security policy](docs/SECURITY.md) for scope, disclosure, and credit details.\n\n\u003c!-- LICENSE --\u003e\n\n## License\n\nDistributed under the MIT License. See `LICENSE` for more information.\n\n## Support\n\n\u003cul style=\"font-size:21px; color:black; \"\u003e\n\u003cli\u003eBrowser testing via \u003ca\nhref=\"https://www.lambdatest.com/\" target=\"_blank\"\u003e\u003cimg\nsrc=\"https://www.lambdatest.com/support/img/logo.svg\"\nstyle=\"vertical-align: middle;margin-left:5px\" width=\"147\" height=\"26\"\n/\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProject chat provided by\n\u003ca href=\"https://rocket.chat\" target=\"_blank\"\u003e\n\u003cimg src=\"https://owncast.online/images/sponsors/rocketchat.png\" width=\"147\" height=\"26\" style=\"vertical-align: middle;margin-left:5px\"\u003e\n\u003c/a\u003e\n\u003c/li\u003e\n\u003cli\u003eCDN services by\n\u003ca href=\"https://fastly.com\" target=\"_blank\"\u003e\n\u003cimg src=\"https://owncast.online/images/sponsors/fastly.png\" height=\"26\" style=\"vertical-align: middle;margin-left:5px\"\u003e\n\u003c/a\u003e\n\u003c/li\u003e\n\u003cli\u003eUI testing with Chromatic\n\u003ca href=\"https://chromatic.com\" target=\"_blank\"\u003e\n\u003cimg src=\"https://owncast.online/images/sponsors/chromatic.png\" height=\"26\" style=\"vertical-align: middle;margin-left:5px\"\u003e\n\u003c/a\u003e\n\u003c/li\u003e\n\u003cli\u003eInfrastructure and hosting by\n\u003ca href=\"https://digitalocean.com?utm_medium=opensource\u0026utm_source=owncast\" target=\"_blank\"\u003e\n\u003cimg src=\"https://owncast.online/images/sponsors/digitalocean.svg\" height=\"26\" style=\"vertical-align: middle;margin-left:5px\"\u003e\n\u003c/a\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- CONTACT --\u003e\n\n## Contact\n\nProject chat: [Join us on Rocket.Chat](https://owncast.rocket.chat/home) if you want to contribute, follow along, or if you have questions.\n\nGabe Kangas - [@gabek@social.gabekangas.com](https://social.gabekangas.com/gabek) - email [gabek@real-ity.com](mailto:gabek@real-ity.com)\n\nProject Link: [https://github.com/owncast/owncast](https://github.com/owncast/owncast)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fowncast%2Fowncast","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fowncast%2Fowncast","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fowncast%2Fowncast/lists"}