{"id":21001726,"url":"https://github.com/v4lli/meteocool","last_synced_at":"2025-05-14T23:32:50.143Z","repository":{"id":33727218,"uuid":"142059423","full_name":"v4lli/meteocool","owner":"v4lli","description":"free \u0026 open source, \"mobile first\" weather radar + lightning visualisation for Central Europe.","archived":false,"fork":false,"pushed_at":"2022-12-10T17:01:50.000Z","size":64187,"stargazers_count":37,"open_issues_count":38,"forks_count":10,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-03T01:11:10.769Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://meteocool.com/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/v4lli.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}},"created_at":"2018-07-23T19:24:52.000Z","updated_at":"2024-06-26T22:14:51.000Z","dependencies_parsed_at":"2023-01-15T02:16:01.222Z","dependency_job_id":null,"html_url":"https://github.com/v4lli/meteocool","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/v4lli%2Fmeteocool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/v4lli%2Fmeteocool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/v4lli%2Fmeteocool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/v4lli%2Fmeteocool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/v4lli","download_url":"https://codeload.github.com/v4lli/meteocool/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254248475,"owners_count":22039008,"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":[],"created_at":"2024-11-19T08:16:18.634Z","updated_at":"2025-05-14T23:32:45.105Z","avatar_url":"https://github.com/v4lli.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# meteocool\n\n[meteocool](https://meteocool.com/) is a free GIS\nvisualisation \u0026 aggregation platform with focus on thunderstorms.\nOptimized for mobile devices, you can use it to both chase or\navoid upcoming weather - that's up to you.\n\n![An exemplary cloud formation with high reflectivity (aka thunderstorm)](/doc/pano-thunderstorm.jpg?raw=true \"An exemplary cloud formation with high reflectivity\")\n\nmeteocool currently uses radar data provided by DWD and realtime lightning\ninformation from the awesome blitzortung.org project.\n\n \u003ca href=\"https://itunes.apple.com/de/app/meteocool-rain-radar/id1438364623\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/v4lli/meteocool/master/frontend/assets/download-on-appstore.png\" style=\"width: 49%; float: left;\" alt=\"Download on Apple Appstore\"\u003e\u003c/a\u003e\n\u003ca href=\"https://play.google.com/store/apps/details?id=com.meteocool\"\u003e\u003cimg src=\"https://user-images.githubusercontent.com/1577223/57536457-84883480-7344-11e9-899d-c31ac124917c.png\" style=\"width: 49%\" alt=\"Download on Google Play Store\"\u003e\u003c/a\u003e\n \u003c/tr\u003e\n\u003c/table\u003e\n\n## Features\n\n\u003cimg src=\"/doc/ios-lockscreen.png?raw=true\" alt=\"iOS Notifications\" width=\"50%\" align=\"right\"\u003e\n\n* **Automatic Map Updates:** the biggest inconvenience with most weather radar\n  visualisations is out-of-date data. Meteocool notifies its clients as\n  soon as new radar data becomes available and the client tries\n  to be transparent about the dataset age. Say goodbye to hammering F5!\n* **Live Lightning Strikes:** new lightning strikes are displayed instantly,\n  giving you an even better feeling for the cloud formation's intensity,\n  trajectory and speed.\n* **Push Notifications:** get notified about incoming rain up to 60 minutes\n  in advance. Works in any modern browser and on iOS.\n* **Dark Mode:** great for HUD-like displays and general night time usage.\n* **Progressive Web App:** responsive, connectivity independent and app-like.\n  Add a shortcut to your iOS or Android Home Screen to use meteocool in\n  \"app mode\".\n* **iOS \u0026 Android Apps:** native iOS and Android apps provide battery-efficient\n  background location services to allow for accurate rain notifications without\n  user interaction.\n\n\u003cimg width=\"100%\" alt=\"Screenshot 2019-05-11 13 33 19\" src=\"https://user-images.githubusercontent.com/1577223/57573080-444bb380-7423-11e9-935d-2a990f5026f6.png\"\u003e\n\n# Development\n\nUse docker-compose (see below) for the backend. Run ```make dev```\nto run the development build (the first one might take a while).\n\nUse ```make dev devrestart``` to build and also start all containers on\nyour local system. After that, go to https://127.0.0.1:8040 to access\nyour development system.\n\n* Production build: ```make prod```\n* Use feature branches!\n* docker-compose MUST be executed in the root-directory of the repository!\n  Otherwise bind mounts for config files will not work and no error\n  will be reported.\n* When the color mapping for dbZ-values (pixels) is changed, the legend\n  needs to be regenerated. Because this happens very rarely, the script\n  for that isn't dockerized. Use ```make legend``` inside ```backend/dwd/```\n  to regenerate the legend PNG.\n* The database is initialized when the first entry is generated. Sadly this\n  causes the push backend to hang until backend/app provides a first entry.\n  As a work around, create a notification request via the web UI after the\n  first startup. The databse is persistently kept on a docker volume.\n\n## Backend\n\nMakefile targets in ```backend/dwd/```:\n\n - ```make mbtiles```: create PNG + tiles in tmp/\n - ```make update```: fetch current radar date from DWD\n - ```make update mbtiles```: both operations together\n\n## Frontend\n\nFor frontend development, use ```yarn \u0026\u0026 yarn start``` inside the\n```frontend/``` directory. This will compile the src/index.js application\nand start a development webserver on localhost. Note that for a complete\nlocal development setup you also need the other containers.\n\n## Install\n\n### docker-compose\n\ninstall `docker-compose` and use `make dev`. For development purposes, use the docker-compose-dev.yml file.\n\nRelease builds can be built using `make prod` or manually:\n\n* `docker-compose build`\n* `docker-compose up` (debug)\n* `docker-compose up -d` (background)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fv4lli%2Fmeteocool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fv4lli%2Fmeteocool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fv4lli%2Fmeteocool/lists"}