{"id":13587949,"url":"https://github.com/fcambus/ansiweather","last_synced_at":"2026-10-19T10:18:35.415Z","repository":{"id":11288501,"uuid":"13699726","full_name":"fcambus/ansiweather","owner":"fcambus","description":"Weather in terminal, with ANSI colors and Unicode symbols","archived":false,"fork":false,"pushed_at":"2026-07-24T15:54:21.000Z","size":232,"stargazers_count":1952,"open_issues_count":0,"forks_count":144,"subscribers_count":55,"default_branch":"master","last_synced_at":"2026-10-18T13:21:35.132Z","etag":null,"topics":["ansi","terminal","unicode","weather"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"dgryski/gophervids","license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fcambus.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog","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":"AUTHORS","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2013-10-19T10:58:45.000Z","updated_at":"2026-10-16T20:27:44.000Z","dependencies_parsed_at":"2023-09-24T05:06:57.655Z","dependency_job_id":"398288c2-c9bd-4eb4-b051-53c6982e3388","html_url":"https://github.com/fcambus/ansiweather","commit_stats":{"total_commits":260,"total_committers":32,"mean_commits":8.125,"dds":0.6192307692307693,"last_synced_commit":"96c2ecf55df8e6f2223d29da737d267ccd0d1afb"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/fcambus/ansiweather","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcambus%2Fansiweather","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcambus%2Fansiweather/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcambus%2Fansiweather/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcambus%2Fansiweather/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fcambus","download_url":"https://codeload.github.com/fcambus/ansiweather/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fcambus%2Fansiweather/sbom","scorecard":{"id":394402,"data":{"date":"2025-08-11","repo":{"name":"github.com/fcambus/ansiweather","commit":"c94e717e62942b3612b77aa11e930e8f5840cb99"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"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":"Dangerous-Workflow","score":-1,"reason":"no workflows found","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":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","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":1,"reason":"Found 3/27 approved changesets -- score normalized to 1","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":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"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":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"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":"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":"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/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"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":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: BSD 2-Clause \"Simplified\" 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":"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/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact 1.19.0 not signed: https://api.github.com/repos/fcambus/ansiweather/releases/88287139","Warn: release artifact 1.18.0 not signed: https://api.github.com/repos/fcambus/ansiweather/releases/49543865","Warn: release artifact 1.17.0 not signed: https://api.github.com/repos/fcambus/ansiweather/releases/27587697","Warn: release artifact 1.16.0 not signed: https://api.github.com/repos/fcambus/ansiweather/releases/23012823","Warn: release artifact 1.15.0 not signed: https://api.github.com/repos/fcambus/ansiweather/releases/21457893","Warn: release artifact 1.19.0 does not have provenance: https://api.github.com/repos/fcambus/ansiweather/releases/88287139","Warn: release artifact 1.18.0 does not have provenance: https://api.github.com/repos/fcambus/ansiweather/releases/49543865","Warn: release artifact 1.17.0 does not have provenance: https://api.github.com/repos/fcambus/ansiweather/releases/27587697","Warn: release artifact 1.16.0 does not have provenance: https://api.github.com/repos/fcambus/ansiweather/releases/23012823","Warn: release artifact 1.15.0 does not have provenance: https://api.github.com/repos/fcambus/ansiweather/releases/21457893"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"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":"SAST","score":-1,"reason":"internal error: internal error: Client.Checks.ListCheckRunsForRef: error during graphqlHandler.setupCheckRuns: non-200 OK status code: 502 Bad Gateway body: \"\u003chtml\u003e\\r\\n\u003chead\u003e\u003ctitle\u003e502 Bad Gateway\u003c/title\u003e\u003c/head\u003e\\r\\n\u003cbody\u003e\\r\\n\u003ccenter\u003e\u003ch1\u003e502 Bad Gateway\u003c/h1\u003e\u003c/center\u003e\\r\\n\u003chr\u003e\u003ccenter\u003enginx\u003c/center\u003e\\r\\n\u003c/body\u003e\\r\\n\u003c/html\u003e\\r\\n\"","details":null,"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T18:37:19.887Z","repository_id":11288501,"created_at":"2025-08-18T18:37:19.887Z","updated_at":"2025-08-18T18:37:19.887Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":344872684,"owners_count":38338275,"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":["ansi","terminal","unicode","weather"],"created_at":"2024-08-01T15:06:26.311Z","updated_at":"2026-10-19T10:18:35.410Z","avatar_url":"https://github.com/fcambus.png","language":"Shell","funding_links":[],"categories":["Shell","Plugins","Tools","Packages","Applications","\\*nix/\\*nux"],"sub_categories":["ZSH on Windows","sh","Zinit (née zplugin)","CLI Tools","Directory Navigation","Miscellaneous"],"readme":"## Description\n\nAnsiWeather is a Shell script for displaying the current weather conditions\nin your terminal, with support for ANSI colors and Unicode symbols.\n\n![AnsiWeather Screenshot][1]\n\nWeather data comes from the `OpenWeatherMap` free weather API.\n\n\n\n## Requirements\n\nAnsiWeather requires the following dependencies:\n\n- A command to fetch HTTP data such as FTP, cURL or wget\n- [jq][2] (lightweight and flexible command-line JSON processor)\n- [bc][3] (arbitrary precision numeric processing language), for doing float\n  arithmetic\n\n\n\n## Installation\n\nAfter cloning the repository, simply invoke the script by typing:\n\n\t./ansiweather\n\nAnsiWeather packages are available for:\n\n- [OpenBSD][4]\n- [NetBSD][5]\n- [FreeBSD][6]\n- [Debian][7]\n- [Ubuntu][8]\n- [Homebrew][9]\n- [Haiku][10]\n- [Gentoo][11]\n\n\n\n## Usage\n\n### Synopsis\n\n\tansiweather [-l location] [-u system] [-f days] [-F] [-a value]\n\t            [-s value] [-k key] [-i value] [-w value] [-h value]\n\t            [-H value] [-p value] [-d value] [-v]\n\n### Options\n\n\t-l location\n\t        Specify location.\n\t\n\t-u system\n\t        Specify unit system to use ( metric or imperial ).\n\t\n\t-f days\n\t        Toggle forecast mode for the specified number of upcoming days.\n\t\n\t-F      Toggle forecast mode for the next five days.\n\t\n\t-a value\n\t        Toggle ANSI colors display ( true or false ).\n\t\n\t-s value\n\t        Toggle symbols display ( true or false ).\n\t\n\t-k key  Specify OpenWeatherMap API key.\n\t\n\t-i value\n\t        Toggle UV Index display ( true or false ).\n\t\n\t-w value\n\t        Toggle wind data display ( true or false ).\n\t\n\t-h value\n\t        Toggle humidity data display ( true or false ).\n\t\n\t-H value\n\t        Toggle Feels like display ( true or false ).\n\t\n\t-p value\n\t        Toggle pressure data display ( true or false ).\n\t\n\t-d value\n\t        Toggle daylight data display ( true or false ).\n\t\n\t-v      Display version.\n\n### Examples\n\nDisplay forecast using metric units for the next five days (showing symbols\nand daylight data) for Rzeszow, Poland:\n\n\tansiweather -l \"Rzeszow,PL\" -u metric -s true -f 5 -d true\n\n\n\n## Configuration\n\nConfiguration is loaded from the following locations, in order:\n\n1. The file specified by the `ANSIWEATHERRC` environment variable, if set.\n2. `$XDG_CONFIG_HOME/ansiweather/config`\n3. `~/.config/ansiweather/config`\n4. `~/.ansiweatherrc`\n\nThe following configuration options (detailed below) are available and should\nbe set according to your location and preferences.\n\nExample: `~/.config/ansiweather/config`\n\n\tlocation:Rzeszow,PL\n\tfetch_cmd:ftp -V -o -\n\tunits:metric\n\tshow_daylight:true\n\nThe file `ansiweatherrc.example` contains all available configuration\nvariables.\n\n### Location\n\nLocation format is `city,CC` where `CC` is a two-letter ISO 3166-1 alpha-2\ncountry code. A list of country codes is available [here][12].\nAlternatively, it's also possible to specify locations by their ID, a city\nlist is available [here][13].\n\nIn case no location is specified, AnsiWeather will fallback to the default\nlocation.\n\nExample: `Rzeszow,PL`\n\n\tlocation:Rzeszow,PL\n\n### Fetch Command\n\nVarious tools can be used to fetch data: `curl`, `wget`, `ftp`.\n\nPlease note that `ftp` flags and options might differ among implementations\nand versions, and the example provided here is known to work only on OpenBSD\nand NetBSD.\n\nExample: `curl -sf`\n\n\tfetch_cmd:curl -sf\n\nExample: `wget -qO-`\n\n\tfetch_cmd:wget -qO-\n\nExample: `ftp -V -o -`\n\n\tfetch_cmd:ftp -V -o -\n\nDefault: `curl -sf`\n\n### System of Units\n\nBoth `metric` and `imperial` systems are supported.\n\n\tunits:metric\n\nDefault: `metric`\n\n### Display ANSI sequences\n\nToggle ANSI sequences display. Value can be either `true` (requires an ANSI\ncapable display) or `false`.\n\n\tansi:true\n\nDefault: `true`\n\n### Display symbols\n\nToggle Unicode symbols display. Value can be either `true` (requires a\nUnicode capable display) or `false`.\n\n\tsymbols:true\n\nDefault: `false`\n\nSymbols can be configured or replaced by custom text using the following\nconfiguration variables: `sun`, `moon`, `clouds`, `rain`, `fog`, `mist`,\n`haze`, `snow`, `thunderstorm`.\n\n### Display forecast\n\nShow upcoming forecast for the next `N` days (for 0 \u003c= N \u003c= 7). `0` will\nshow standard output.\n\n\tforecast:5\n\nDefault: `0`\n\n### Display Feels like\n\nToggle \"Feels like\" display. Value can be either `true` or `false`.\n\n\tshow_feels_like:false\n\nDefault: `false`\n\n### Display UV Index / wind / humidity / pressure\n\nToggle UV Index, wind, humidity, and/or pressure display. Values can be either\n`true` or `false`.\n\nThe UV Index represents a single daily value rather than the UV Index at the\ncurrent time.\n\n\tshow_uvi:true\n\tshow_wind:true\n\tshow_humidity:true\n\tshow_pressure:true\n\nDefault: `true`\n\n### Display sunrise / sunset\n\nToggle daylight display. Value can be either `true` or `false`.\n\n\tshow_daylight:false\n\nDefault: `false`\n\n### Date format\n\nConfigure the date format used for forecast entries. See Unix date\nformatting documentation for details.\n\n\tdateformat:%a %b %d\n\nDefault: `%a %b %d`\n\n### Time format\n\nConfigure the time format used for sunrise and sunset. See Unix date\nformatting documentation for details.\n\n\ttimeformat:%b %d %r\n\nDefault: `%b %d %r`\n\n### OpenWeatherMap API key\n\nSpecify an OpenWeatherMap API key. By default AnsiWeather uses its own\nkey, but users can optionally get their own one by creating a free\n[OpenWeatherMap account][14].\n\n\tapi_key:85a4e3c55b73909f42c6a23ec35b7147\n\n\n\n## License\n\nAnsiWeather is released under the BSD 2-Clause license. See `LICENSE` file\nfor details.\n\n\n\n## Author\n\nAnsiWeather is developed by Frederic Cambus.\n\n- Site: https://www.cambus.net\n\n\n\n## Resources\n\nGitHub: https://github.com/fcambus/ansiweather\n\n[1]: https://www.cambus.net/files/ansiweather/ansiweather.png\n[2]: https://stedolan.github.io/jq/\n[3]: https://www.gnu.org/software/bc/\n[4]: https://openports.pl/path/astro/ansiweather\n[5]: https://pkgsrc.se/misc/ansiweather\n[6]: https://www.freshports.org/misc/ansiweather\n[7]: https://packages.debian.org/search?keywords=ansiweather\n[8]: https://packages.ubuntu.com/search?keywords=ansiweather\n[9]: https://formulae.brew.sh/formula/ansiweather\n[10]: https://github.com/haikuports/haikuports/tree/master/app-misc/ansiweather\n[11]: https://packages.gentoo.org/packages/app-misc/ansiweather\n[12]: https://www.statdns.com/cctlds/\n[13]: https://bulk.openweathermap.org/sample/\n[14]: https://home.openweathermap.org/users/sign_up\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffcambus%2Fansiweather","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffcambus%2Fansiweather","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffcambus%2Fansiweather/lists"}