{"id":18790068,"url":"https://github.com/webhippie/redirects","last_synced_at":"2026-03-09T10:06:26.317Z","repository":{"id":18207554,"uuid":"83721927","full_name":"webhippie/redirects","owner":"webhippie","description":"Simple pattern-based redirect server","archived":false,"fork":false,"pushed_at":"2026-02-02T08:36:04.000Z","size":2481,"stargazers_count":3,"open_issues_count":5,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-02-02T21:24:08.222Z","etag":null,"topics":["pattern","redirects","server","webserver"],"latest_commit_sha":null,"homepage":"https://webhippie.github.io/redirects/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/webhippie.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":"DCO","cla":null}},"created_at":"2017-03-02T20:32:24.000Z","updated_at":"2026-02-02T08:36:07.000Z","dependencies_parsed_at":"2023-10-23T09:41:08.923Z","dependency_job_id":"3da2d5df-30a2-477a-b302-975ffebb7157","html_url":"https://github.com/webhippie/redirects","commit_stats":null,"previous_names":["tboerger/redirects"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/webhippie/redirects","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webhippie%2Fredirects","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webhippie%2Fredirects/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webhippie%2Fredirects/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webhippie%2Fredirects/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/webhippie","download_url":"https://codeload.github.com/webhippie/redirects/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/webhippie%2Fredirects/sbom","scorecard":{"id":666084,"data":{"date":"2025-07-21","repo":{"name":"github.com/webhippie/redirects","commit":"10033079513d45f083beb22fb76c3333078c252b"},"scorecard":{"version":"v5.2.1-24-gc29a04d4","commit":"c29a04d46d1570393e94662bc34e9906398e1bfa"},"score":6.1,"checks":[{"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/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":0,"reason":"Found 0/21 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/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#code-review"}},{"name":"Maintained","score":10,"reason":"18 commit(s) and 0 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/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#maintained"}},{"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/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#binary-artifacts"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: topLevel 'contents' permission set to 'write': .github/workflows/automerge.yml:12","Warn: no topLevel permission defined: .github/workflows/binaries.yml:1","Warn: no topLevel permission defined: .github/workflows/changes.yml:1","Warn: no topLevel permission defined: .github/workflows/docker.yml:1","Warn: no topLevel permission defined: .github/workflows/docs.yml:1","Warn: topLevel 'contents' permission set to 'write': .github/workflows/flake.yml:11","Warn: no topLevel permission defined: .github/workflows/general.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/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":1,"reason":"dependency not pinned by hash detected -- score normalized to 1","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/automerge.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/automerge.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/automerge.yml:34: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/automerge.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/binaries.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/binaries.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/binaries.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/binaries.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/binaries.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/binaries.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/binaries.yml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/binaries.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/binaries.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/binaries.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/binaries.yml:63: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/binaries.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/changes.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/changes.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/changes.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/changes.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/changes.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/changes.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:62: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:83: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:87: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:91: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:99: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:117: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker.yml:135: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:139: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:151: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:162: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:174: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:185: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:197: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docker.yml:213: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:217: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docker.yml:228: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docker.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docs.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docs.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/docs.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/flake.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/flake.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/flake.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/flake.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/flake.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/flake.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/general.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/general.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/general.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/general.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/general.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/webhippie/redirects/general.yml/master?enable=pin","Info:   0 out of  12 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of  27 third-party GitHubAction dependencies pinned","Info:   4 out of   4 containerImage 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/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":2,"reason":"badge detected: InProgress","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#cii-best-practices"}},{"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/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#license"}},{"name":"Signed-Releases","score":8,"reason":"2 out of the last 2 releases have a total of 2 signed artifacts.","details":["Info: signed release artifact: redirects-1.0.1-darwin-amd64.asc: https://github.com/webhippie/redirects/releases/tag/v1.0.1","Info: signed release artifact: redirects-1.0.0-darwin-amd64.asc: https://github.com/webhippie/redirects/releases/tag/v1.0.0","Warn: release artifact v1.0.1 does not have provenance: https://api.github.com/repos/webhippie/redirects/releases/66453525","Warn: release artifact v1.0.0 does not have provenance: https://api.github.com/repos/webhippie/redirects/releases/66322988"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#branch-protection"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#security-policy"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/docker.yml:13"],"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/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#packaging"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: all commits (11) are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/c29a04d46d1570393e94662bc34e9906398e1bfa/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-21T18:06:13.259Z","repository_id":18207554,"created_at":"2025-08-21T18:06:13.260Z","updated_at":"2025-08-21T18:06:13.260Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29261651,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-09T04:11:57.159Z","status":"ssl_error","status_checked_at":"2026-02-09T04:11:56.117Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["pattern","redirects","server","webserver"],"created_at":"2024-11-07T21:09:49.360Z","updated_at":"2026-02-09T10:09:02.528Z","avatar_url":"https://github.com/webhippie.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Redirects\n\n[![General Workflow](https://github.com/webhippie/redirects/actions/workflows/general.yml/badge.svg)](https://github.com/webhippie/redirects/actions/workflows/general.yml) [![Join the Matrix chat at https://matrix.to/#/#webhippie:matrix.org](https://img.shields.io/badge/matrix-%23webhippie-7bc9a4.svg)](https://matrix.to/#/#webhippie:matrix.org) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/c33cdacbc6ed40beaf1f2a0a6d72718b)](https://app.codacy.com/gh/webhippie/redirects/dashboard?utm_source=gh\u0026utm_medium=referral\u0026utm_content=\u0026utm_campaign=Badge_grade) [![Go Reference](https://pkg.go.dev/badge/github.com/webhippie/redirects.svg)](https://pkg.go.dev/github.com/webhippie/redirects) [![Go Report Card](https://goreportcard.com/badge/github.com/webhippie/redirects)](https://goreportcard.com/report/github.com/webhippie/redirects) [![GitHub Repo](https://img.shields.io/badge/github-repo-yellowgreen)](https://github.com/webhippie/redirects) [![Hosted By: Cloudsmith](https://img.shields.io/badge/OSS%20hosting%20by-cloudsmith-blue?logo=cloudsmith\u0026style=flat-square)](https://cloudsmith.com)\n\nRedirects is a pretty simple pattern-based redirect server. It supports\ndifferent kinds of backends to store the patterns like JSON, YAML, TOML, Etcd,\nConsul and Zookeeper. We are using it mostly as a default route for our reverse\nproxy like [Træfɪk](https://traefik.io/).\n\n## Install\n\nYou can download prebuilt binaries from the [GitHub releases][releases] or from\nour [download site][downloads]. Besides that we also prepared repositories for\nDEB and RPM packages which can be found at [Cloudsmith][pkgrepo]. If you prefer\nto use containers you could use our images published on [GHCR][ghcr],\n[Docker Hub][dockerhub] or [Quay][quay]. If you need further guidance how to\ninstall this take a look at our [documentation][docs].\n\nPackage repository hosting is graciously provided by [Cloudsmith][cloudsmith].\nCloudsmith is the only fully hosted, cloud-native, universal package management\nsolution, that enables your organization to create, store and share packages in\nany format, to any place, with total confidence.\n\n## Build\n\nIf you are not familiar with [Nix][nix] it is up to you to have a working\nenvironment for Go (\u003e= 1.24.0) as the setup won't we covered within this guide.\nPlease follow the official install instructions for [Go][golang]. Beside that we\nare using [go-task][gotask] to define all commands to build this project.\n\n```console\ngit clone https://github.com/webhippie/redirects.git\ncd redirects\n\ntask build\n./bin/redirects -h\n```\n\nIf you got [Nix][nix] and [Direnv][direnv] configured you can simply execute\nthe following commands to get al dependencies including [go-task][gotask] and\nthe required runtimes installed. You are also able to directly use the process\nmanager of [devenv][devenv]:\n\n```console\ncat \u003c\u003c EOF \u003e .envrc\nuse flake . --impure --extra-experimental-features nix-command\nEOF\n\ndirenv allow\n```\n\n## Development\n\nTo start developing on this project you have to execute only one command:\n\n```console\ntask watch\n```\n\nThe development server should be running on\n[http://localhost:8080](http://localhost:8080). Generally it supports hot\nreloading which means the services are automatically restarted/reloaded on code\nchanges.\n\nIf you got [Nix][nix] configured you can simply execute the [devenv][devenv]\ncommand to start the server:\n\n```console\ndevenv up\n```\n\n## Security\n\nIf you find a security issue please contact\n[thomas@webhippie.de](mailto:thomas@webhippie.de) first.\n\n## Contributing\n\nFork -\u003e Patch -\u003e Push -\u003e Pull Request\n\n## Authors\n\n-   [Thomas Boerger](https://github.com/tboerger)\n\n## License\n\nApache-2.0\n\n## Copyright\n\n```console\nCopyright (c) 2017 Thomas Boerger \u003cthomas@webhippie.de\u003e\n```\n\n[releases]: https://github.com/webhippie/redirects/releases\n[downloads]: https://dl.webhippie.de/#redirects/\n[ghcr]: https://github.com/webhippie/redirects/pkgs/container/redirects\n[dockerhub]: https://hub.docker.com/r/webhippie/redirects/tags/\n[quay]: https://quay.io/repository/webhippie/redirects?tab=tags\n[docs]: https://webhippie.github.io/redirects/#getting-started\n[nix]: https://nixos.org/\n[golang]: http://golang.org/doc/install.html\n[gotask]: https://taskfile.dev/installation/\n[direnv]: https://direnv.net/\n[devenv]: https://devenv.sh/\n[pkgrepo]: https://cloudsmith.io/~webhippie/repos/general/groups/\n[cloudsmith]: https://cloudsmith.com/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebhippie%2Fredirects","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwebhippie%2Fredirects","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwebhippie%2Fredirects/lists"}