{"id":21595780,"url":"https://github.com/wigging/beemer","last_synced_at":"2025-10-24T00:21:47.324Z","repository":{"id":222408725,"uuid":"756888333","full_name":"wigging/beemer","owner":"wigging","description":"Python package for working with EPICS process variables","archived":false,"fork":false,"pushed_at":"2024-04-09T19:59:51.000Z","size":12,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-24T17:33:57.382Z","etag":null,"topics":["epics-base","epics-controls","epics-ioc","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wigging.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2024-02-13T14:03:22.000Z","updated_at":"2024-04-09T20:03:35.000Z","dependencies_parsed_at":"2024-02-28T01:42:55.639Z","dependency_job_id":"52c689dc-749c-4fd3-a620-bd9451704211","html_url":"https://github.com/wigging/beemer","commit_stats":null,"previous_names":["wigging/beemer"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fbeemer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fbeemer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fbeemer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wigging%2Fbeemer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wigging","download_url":"https://codeload.github.com/wigging/beemer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244207747,"owners_count":20416109,"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":["epics-base","epics-controls","epics-ioc","python"],"created_at":"2024-11-24T17:44:02.033Z","updated_at":"2025-10-24T00:21:47.317Z","avatar_url":"https://github.com/wigging.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Beemer\n\nBeemer is a Python package for working with process variables (PVs) from EPICS input/output controllers (IOCs). The PVs are exposed via the channel access (CA) protocol using the included EPICS Docker container or caproto's CA server. Examples of each approach are provided in this repository.\n\n## Installation\n\nUse conda to create a Python environment where beemer is installed in editable (developer) mode.\n\n```\nconda env create --file environment.yml\nconda activate beemer\n```\n\n## Examples\n\nThe examples demonstrate two approaches of using beemer to access PVs. One approach uses softIoc from an EPICS Docker container as shown in the diagram below. See the `epics-base/Dockerfile` to build the Docker image and container.\n\n```mermaid\nflowchart LR\n    CaClient --\u003e Docker\n    subgraph Docker\n        direction LR\n        EPICS --\u003e PVs\n    end\n```\n\nThe other approach uses caproto's CA server for the PVs as shown below.\n\n```mermaid\nflowchart LR\n    CaClient --\u003e B[\"Caproto Server\"] --\u003e PVs\n```\n\nBoth approaches can be implemented over HTTP using the `HttpClient` instead of the `CaClient`. See the comments in the examples for usage instructions.\n\n## Further reading\n\nSee the links below for more information about EPICS and caproto.\n\n- [EPICS GitHub](https://github.com/epics-base/epics-base)\n- [EPICS website](https://epics-controls.org)\n- [EPICS documentation](https://docs.epics-controls.org)\n- [Caproto GitHub](https://github.com/caproto/caproto)\n- [Caproto documentation](https://caproto.github.io/caproto/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwigging%2Fbeemer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwigging%2Fbeemer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwigging%2Fbeemer/lists"}