{"id":17480027,"url":"https://github.com/dacr/web-echo","last_synced_at":"2026-05-04T23:38:28.378Z","repository":{"id":144561244,"uuid":"319054018","full_name":"dacr/web-echo","owner":"dacr","description":"A websocket/webhook JSON data recorder with API","archived":false,"fork":false,"pushed_at":"2025-02-01T17:10:30.000Z","size":2509,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-01T18:23:32.756Z","etag":null,"topics":["actor-model","api","blockchain","data-recording","json","openapi","pekko","pekko-http","pekko-streams","recorder","webhook","websocket"],"latest_commit_sha":null,"homepage":"","language":"Scala","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dacr.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2020-12-06T14:34:53.000Z","updated_at":"2025-02-01T17:10:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"23ff73df-8cd0-4b21-a549-6af2dde20ac4","html_url":"https://github.com/dacr/web-echo","commit_stats":null,"previous_names":[],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacr%2Fweb-echo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacr%2Fweb-echo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacr%2Fweb-echo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dacr%2Fweb-echo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dacr","download_url":"https://codeload.github.com/dacr/web-echo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246034276,"owners_count":20712851,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["actor-model","api","blockchain","data-recording","json","openapi","pekko","pekko-http","pekko-streams","recorder","webhook","websocket"],"created_at":"2024-10-18T21:42:27.271Z","updated_at":"2026-05-04T23:38:28.344Z","avatar_url":"https://github.com/dacr.png","language":"Scala","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ![](images/logo-base-32.png) web-echo ![tests][tests-workflow] [![License][licenseImg]][licenseLink] [![][WebEchoImg]][WebEchoLnk]\n\nweb-echo service allows you to easily define on the fly JSON recorders which can be\nfed by remote services using either the dynamically generated webhook or the websockets\nyou've provided. Then, at any time you can check what have been sent by the configured\nremote services. [Check the swagger API specification][webecho-api] for more information.\n\nIt has been deployed on https://mapland.fr/echo\n\n## Quick local start\n\nThanks to [scala-cli][scl],\nthis application is quite easy to start, just execute :\n\n```\nscala-cli --dep fr.janalyse::web-echo:1.2.6 -e 'webecho.Main.main(args)'\n```\n\n## Configuration\n\n| Environment variable                | Description                                    | default value              |\n|-------------------------------------|------------------------------------------------|----------------------------|\n| WEB_ECHO_LISTEN_IP                  | Listening network interface                    | \"0.0.0.0\"                  |\n| WEB_ECHO_LISTEN_PORT                | Listening port                                 | 8080                       |\n| WEB_ECHO_PREFIX                     | Add a prefix to all defined routes             | \"\"                         |\n| WEB_ECHO_URL                        | How this service is known from outside         | \"http://127.0.0.1:8080\"    |\n| WEB_ECHO_STORE_PATH                 | Where data is stored                           | \"/tmp/web-echo-cache-data\" |\n| WEB_ECHO_INACTIVE_AUTO_DELETE       | Delete echoes if inactive                      | true                       |\n| WEB_ECHO_INACTIVE_AUTO_DELETE_AFTER | Delay for an echo to become inactive           | 30d                        |\n| WEB_ECHO_ENTRIES_MAX_QUEUE_SIZE     | Limit the number of entries, older are removed | 1000                       |\n\n[cs]: https://get-coursier.io/\n\n[scl]: https://scala-cli.virtuslab.org/\n\n[webecho-api]: https://mapland.fr/echo/swagger\n\n[WebEcho]: https://github.com/dacr/web-echo\n\n[WebEchoImg]: https://img.shields.io/maven-central/v/fr.janalyse/web-echo_2.13.svg\n\n[WebEchoLnk]: https://search.maven.org/#search%7Cga%7C1%7Cfr.janalyse.web-echo\n\n[tests-workflow]: https://github.com/dacr/web-echo/actions/workflows/scala.yml/badge.svg\n\n[licenseImg]: https://img.shields.io/github/license/dacr/web-echo.svg\n\n[licenseLink]: LICENSE\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdacr%2Fweb-echo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdacr%2Fweb-echo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdacr%2Fweb-echo/lists"}