{"id":51329513,"url":"https://github.com/scorphus/seebuddy","last_synced_at":"2026-07-01T21:32:52.566Z","repository":{"id":355390990,"uuid":"1227881678","full_name":"scorphus/seebuddy","owner":"scorphus","description":"Live water + weather conditions for swim-friendly lakes around Munich","archived":false,"fork":false,"pushed_at":"2026-05-03T17:18:31.000Z","size":216,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-03T18:38:11.612Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/scorphus.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-03T09:39:12.000Z","updated_at":"2026-05-03T17:18:35.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/scorphus/seebuddy","commit_stats":null,"previous_names":["scorphus/seebudy","scorphus/seebuddy"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/scorphus/seebuddy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorphus%2Fseebuddy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorphus%2Fseebuddy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorphus%2Fseebuddy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorphus%2Fseebuddy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/scorphus","download_url":"https://codeload.github.com/scorphus/seebuddy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/scorphus%2Fseebuddy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35024359,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-01T02:00:05.325Z","response_time":130,"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":[],"created_at":"2026-07-01T21:32:52.106Z","updated_at":"2026-07-01T21:32:52.558Z","avatar_url":"https://github.com/scorphus.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# seebuddy\n\nLive water and weather conditions for swimmable lakes around Munich.\n\n```sh\njust backend     # encore run on :4000 (regenerates sqlc + TS client first)\njust frontend    # vite dev server on :5173 (proxies /lakes to :4000)\n```\n\nFirst time only: `just frontend-install` to install the npm deps.\n\n## What it does\n\nA cron job polls each adapter periodically and stores readings in a\nshared `readings` table. The `GET /lakes` endpoint returns the catalog\nof known lakes plus the latest reading for each. The frontend renders\nthat as a grid of cards: water temperature in focus, air/humidity/wind\nsecondary, weather emoji from the WMO code, and a stale badge when the\nreading is older than 90 minutes.\n\n## Layout\n\n```\nbackend/\n├── lakes/                # only Encore service: catalog + cron + GET /lakes\n├── adapters/\n│   ├── adapter.go        # Adapter interface\n│   ├── wachplan/         # Wasserwacht LoRaWAN sensors (Lußsee, Langwieder See)\n│   ├── gkd/              # Bavarian state service HTML scraper\n│   └── openmeteo/        # lakes without a dedicated sensor; uses Open-Meteo\n└── openmeteo/            # shared lat/lon current-weather client\nfrontend/                 # Vue 3 + Vite + Tailwind\n```\n\n## Adapters\n\n- **wachplan**: water + air temperature + humidity from sensors run by\n  [Wasserwacht München-West](https://sensors.mein-wachplan.de/), built and\n  operated by Bernhard Rohloff. Currently covers Lußsee and Langwieder See.\n- **gkd**: water temperature scraped from\n  [gkd.bayern.de](https://www.gkd.bayern.de/de/seen/wassertemperatur)\n  (Gewässerkundlicher Dienst Bayern, the official Bavarian state service).\n  Covers Ammersee, Pilsensee, Schliersee, Starnberger See, Tegernsee, and\n  Wörthsee.\n- **openmeteo**: lakes without a dedicated sensor. Pulls air temperature,\n  humidity, wind, and weather code from [Open-Meteo](https://open-meteo.com/)\n  using the lake's lat/lon.\n\nAdding a new lake = edit the relevant adapter's lake list.\nAdding a new data source = new adapter package + register in\n`backend/lakes/cron.go`.\n\n## Other commands\n\n```sh\njust test                # encore test ./...\njust lint                # go vet + gofmt check\njust gen                 # gen-sqlc + gen-client\njust gen-sqlc            # sqlc generate\njust gen-client          # encore gen client → frontend/src/client.ts\n```\n\n## License \u0026 SLA\n\nPersonal project. BSD-3-Clause. No SLA — be nice to upstream services.\n\n## Attribution\n\nGKD water temperature data is provided under\n[CC BY 4.0](https://creativecommons.org/licenses/by/4.0/):\n\n\u003e Datenquelle: Bayerisches Landesamt für Umwelt, www.lfu.bayern.de\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscorphus%2Fseebuddy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fscorphus%2Fseebuddy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fscorphus%2Fseebuddy/lists"}