{"id":22464015,"url":"https://github.com/halosghost/shaman","last_synced_at":"2025-07-11T08:41:31.597Z","repository":{"id":9902893,"uuid":"11910408","full_name":"HalosGhost/shaman","owner":"HalosGhost","description":"A small, native C library and utility to fetch weather","archived":false,"fork":false,"pushed_at":"2017-02-14T23:44:37.000Z","size":220,"stargazers_count":49,"open_issues_count":8,"forks_count":4,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-26T23:11:25.333Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HalosGhost.png","metadata":{"files":{"readme":"README.rst","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":"2013-08-05T22:34:11.000Z","updated_at":"2023-03-26T13:46:09.000Z","dependencies_parsed_at":"2022-09-10T08:40:22.060Z","dependency_job_id":null,"html_url":"https://github.com/HalosGhost/shaman","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HalosGhost%2Fshaman","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HalosGhost%2Fshaman/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HalosGhost%2Fshaman/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HalosGhost%2Fshaman/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HalosGhost","download_url":"https://codeload.github.com/HalosGhost/shaman/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228439447,"owners_count":17920026,"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-12-06T09:15:04.852Z","updated_at":"2024-12-06T09:15:05.520Z","avatar_url":"https://github.com/HalosGhost.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Shaman\n======\n\nOriginally inspired by a tool called weatherman, ``shaman`` is a small, native C utilty relying on a small, native C library (``libweather``) to fetch current weather conditions.\nFor the moment, ``libweather`` and ``shaman`` support grabbing weather from `OpenWeatherMap \u003chttp://openweathermap.org\u003e`_ (which draws data from various sources accounting for nearly 80000 cities).\nHowever, because the library uses a source-agnostic data structure, other weather providers can be easily added.\nThe only requirement for a new provider (which may become less stringent) is that they have a JSON API.\n\nIf you would like to see support for a particular weather provider added to ``shaman`` and ``libweather``, please open a bug report listing the name of the provider, along with a link to their JSON API.\n*NOTE*: Implementing other providers is a lower priority than getting ``shaman`` and ``libweather`` usable with current functionality.\n\nDependencies\n------------\n``shaman`` and ``libweather`` are being written to use as few dependencies as possible while still trying to keep the utilities themselves light-weight.\nTo that end, they now both require only two external dependencies:\n\n* `curl \u003chttp://curl.haxx.se/libcurl/\u003e`_, which handles all network interaction very gracefully\n* `jansson \u003chttp://www.digip.org/jansson/\u003e`_, which allows for very efficient JSON Parsing\n* `tup \u003chttp://gittup.org/tup/\u003e`_, the build system that I will use going forward\n* `sphinx \u003chttp://sphinx-doc.org/\u003e`_, for building the man-page from reStructuredText\n\nFor a variety of reasons, mainly because ``shaman`` does not rely on parallelization at the moment and because of ``-Weverything``, I will no longer be officially supporting ``gcc``.\nResultingly, to use the official build system, you will need ``clang`` installed.\nIdeally, when I get a continuous integration setup again, I will have the build tested against both compilers.\n\nStatus \u0026 Documentation\n----------------------\n``shaman`` is still under heavy active development.\nFor the moment, the manual documentation is quite out-of-date.\nThe best ways to follow its status and functionality are to track the commit list and keep up with the `To-do lists \u003chttp://github.com/HalosGhost/shaman/blob/master/TODO.rst\u003e`_.\n\nContributions\n-------------\nAll contributions are welcome (pull requests, constructive criticism, feature requests and musings), but pull requests should attempt to follow `these guidelines \u003chttp://github.com/HalosGhost/styleguides/blob/master/C.rst\u003e`_ for consistency.\nI am likely to reformat any commit that should deviate from these guidelines.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhalosghost%2Fshaman","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhalosghost%2Fshaman","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhalosghost%2Fshaman/lists"}