{"id":15667784,"url":"https://github.com/holsee/beerexpert","last_synced_at":"2025-05-06T19:47:50.057Z","repository":{"id":35045938,"uuid":"39171594","full_name":"holsee/BeerExpert","owner":"holsee","description":"Expert System to Categorise Beer (in Elixir)","archived":false,"fork":false,"pushed_at":"2015-07-22T16:11:26.000Z","size":132,"stargazers_count":14,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-31T02:21:57.083Z","etag":null,"topics":["elixir","expert-system"],"latest_commit_sha":null,"homepage":null,"language":"Elixir","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/holsee.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":"2015-07-16T02:14:50.000Z","updated_at":"2023-09-01T10:52:01.000Z","dependencies_parsed_at":"2022-08-03T23:45:14.514Z","dependency_job_id":null,"html_url":"https://github.com/holsee/BeerExpert","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/holsee%2FBeerExpert","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holsee%2FBeerExpert/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holsee%2FBeerExpert/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holsee%2FBeerExpert/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/holsee","download_url":"https://codeload.github.com/holsee/BeerExpert/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252758059,"owners_count":21799775,"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":["elixir","expert-system"],"created_at":"2024-10-03T14:05:19.090Z","updated_at":"2025-05-06T19:47:49.986Z","avatar_url":"https://github.com/holsee.png","language":"Elixir","funding_links":[],"categories":[],"sub_categories":[],"readme":"Beer Expert\n===========\n\nAn expert system written in elixir (using the Erlang [seresye](https://github.com/afiniate/seresye) engine) to aid in beer classification based on known information about a given beer.\n\nThe systems knowledge is comprised of facts obtained from the [beer periodic table](http://www.periodicbeer.com/).\n\n### Usage\n\nStart the expert.\n\n``` elixir\nExpert.start\n```\n\nProvide the Expert with some information pertaining to the beer your which to classify\n\n``` elixir\nExpert.tell 'Boiler Room', {:abv, 2.9}\n\n# abv_categorise =\u003e Expert thinks Boiler Room could be a English Mild as abv 2.9 is between 2.5 \u0026 4.1\n# abv_categorise =\u003e Expert thinks Boiler Room could be a Berliner Weisse as abv 2.9 is between 2.5 \u0026 3.6\n# abv_categorise =\u003e Expert thinks Boiler Room could be a Scottish Light 60/- as abv 2.9 is between 2.8 \u0026 4.0\n\nExpert.tell 'Boiler Room', {:ibu, 7}\n\n# etc...\n```\n\nAsk the Expert what classifications match the beer:\n\n``` elixir\nExpert.ask 'Boiler Room'\n\n# =\u003e \n\n[{:beer_match, 'Boiler Room', {:beer_style, 19, 'Scottish Light 60/-'}},\n {:beer_match, 'Boiler Room', {:beer_style, 1, 'Berliner Weisse'}},\n {:beer_match, 'Boiler Room', {:beer_style, 20, 'English Mild'}}]\n```\n\n### TODO\n\n- Finish implementing all the rules.\n- Tidy up Expert layer, maybe find a smarter way to refine the matches.\n- Add ```Expert.how``` method to backtrack the decisions taken to classify beer.\n\n### Contribute\n\nFork and PR... simple as that.\n\n### License\n\nBSD License\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholsee%2Fbeerexpert","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fholsee%2Fbeerexpert","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholsee%2Fbeerexpert/lists"}