$npx skillfedfor your agent

phoebusgen

Screen generator for CS-Studio Phoebus displays

With conditionsPyPI Code GeneratorsReleased Jun 2026127.3K downloads / mocopyleft licensePure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — phoebusgen-3.3.0-py3-none-any.whl
v3.3.0 · released 2026-06-10 · Python >=3.6 · 1 runtime deps: dataclasses

Yes, if you work with Phoebus and EPICS control systems and want to automate or version-control screen generation. The package is actively maintained, has no security vulnerabilities, and carries low install friction. The GPLv2 license is a consideration only if you plan to distribute proprietary derivatives; internal use is unrestricted. Install it if screen-as-code fits your workflow; skip it if you only occasionally edit screens in the GUI.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Low friction: pure Python wheel with only dataclasses as a runtime dependency.
  • Active maintenance with a recent release and ongoing repository activity.

License · maintenance · safety

copyleft license (copyleft) — GPLv2 copyleft license requires that any derivative work or distribution must also be licensed under GPLv2 and include source code availability. This is restrictive for proprietary applications but poses no issue for internal or open-source use.

last release 2026-06-10 (65 days) · last repo commit 2026-07-08 · 20 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 127,338 downloads/mo, #11,747 on PyPI

Verify before relying

pip install phoebusgen
import phoebusgen
widget = phoebusgen.widget.TextUpdate('my_widget', 'TEST:PV', 10, 20, 20, 50)
screen = phoebusgen.screen.Screen('my_screen')
screen.add_widget(widget)
print(screen)  # outputs Display Builder XML
  • Whether version-specific widget definitions beyond 4.7.3 are maintained or planned
  • Performance characteristics when generating screens with many widgets
Same gist for agents: .md · .json

What it is and what it does

phoebusgen is a Python library that generates Phoebus Display Builder XML—the format used by Phoebus, the next-generation control interface for EPICS control systems. Instead of manually editing XML or using the graphical editor, you define screens and widgets as Python objects, configure their properties through method calls, and serialize them to .bob files ready for Phoebus to open. It covers all standard Phoebus widgets and supports multiple Phoebus versions through configurable widget definitions.

The library is organized around two main modules: phoebusgen.widget provides Python classes for every Phoebus widget type with methods to set colors, fonts, and other properties; phoebusgen.screen wraps a collection of widgets into a complete screen object. You can nest widgets inside containers like Group or Tab, override site-specific color and font definitions via configuration files, and target different Phoebus releases by changing the active version. It has minimal dependencies—only dataclasses—making it lightweight to integrate into build pipelines or automation scripts.

Use it for

  • Automate generation of repetitive EPICS control screens from a template or database of PV names
  • Version-control screen definitions as Python code rather than binary or XML files
  • Programmatically create screen variants for different Phoebus versions without manual editing
  • Integrate screen generation into CI/CD pipelines for control system deployments
  • Generate screens dynamically based on runtime configuration or device discovery

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you work with Phoebus and EPICS control systems and want to automate or version-control screen generation.

The package is actively maintained, has no security vulnerabilities, and carries low install friction. The GPLv2 license is a consideration only if you plan to distribute proprietary derivatives; internal use is unrestricted. Install it if screen-as-code fits your workflow; skip it if you only occasionally edit screens in the GUI.

Install

phoebusgen on PyPI

Before you install

Low friction: pure Python wheel with only dataclasses as a runtime dependency. Active maintenance with a recent release and ongoing repository activity.

License in practice

GPLv2 copyleft license requires that any derivative work or distribution must also be licensed under GPLv2 and include source code availability. This is restrictive for proprietary applications but poses no issue for internal or open-source use.

Quickstart

pip install phoebusgen
import phoebusgen
widget = phoebusgen.widget.TextUpdate('my_widget', 'TEST:PV', 10, 20, 20, 50)
screen = phoebusgen.screen.Screen('my_screen')
screen.add_widget(widget)
print(screen)  # outputs Display Builder XML

Verify before relying

  • Whether version-specific widget definitions beyond 4.7.3 are maintained or planned
  • Performance characteristics when generating screens with many widgets

Package facts

Licensecopyleft license copyleft
Python supportSupports the current Python release >=3.6
Install frictionLow. Pure-Python wheel
Runtime dependencies
1 package
dataclasses
MaintenanceActively maintained 65 days since the last release
Last repo commit
First released
Downloads127,338 / month, #11,747 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableLicense :: OSI Approved :: GNU General Public License v2 (GPLv2)Operating System :: OS IndependentProgramming Language :: Python :: 3Topic :: Software Development :: Code Generators

Evidence: phoebusgen-3.3.0-py3-none-any.whl

Tags

Capabilities
phoebus screen generatorepics control system uidisplay builder xml pythoncs-studio screen automationcontrol system display code
Topics
epicscontrol-systemscode-generation

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “phoebus screen generator”

  • phoebusgenGenerates Phoebus Display Builder XML format programmatically from…
  • epik8s-toolsAutomates project structure, Helm chart, and OPI panel generation for…
  • browserforgeGenerates realistic browser headers and device fingerprints that…

Give your agent the search over MCP, or paste the wish link into any chat.

More Code Generators packages

proto-plus Worth it
PyPI · Python Modules · released Aug 2026

Proto Plus wraps protocol buffers to provide Python classes that behave like native Python types while maintaining protocol buffer serialization and schema validation.

Install it if you're working with protocol buffers in Python and want a more Pythonic interface, or if you're using Google Cloud libraries that depend on it.

Apache-2.0pure Python · 3.10+
343.8Mdownloads / mo
Cython Worth it
PyPI · Python Modules · released Jul 2026

Cython is a source code translator that compiles Python code to C, enabling optional static typing and direct C/C++ interoperability to generate efficient native extensions.

Install it if you need to optimize Python performance, wrap C/C++ libraries, or build fast native extensions.

permissive licensepure Python · 3.8+
136.1Mdownloads / mo
asttokens Worth it
PyPI · Python Modules · released Jul 2026

Annotates Python abstract syntax trees with the positions of tokens and source code text, enabling tools to map AST nodes back to their originating code for refactoring, analysis, and transformation.

permissive licensepure Python · 3.8+
134.8Mdownloads / mo
beartype Worth it
PyPI · Python Modules · released Dec 2025

Beartype is a runtime type checker that validates Python type hints at function call time, catching type violations before they cause downstream bugs.

Install it if you want runtime type safety for your annotated code or need to validate type hints on third-party packages.

MITpure Python · 3.10+
99.1Mdownloads / mo
llvmlite With conditions
PyPI · Code Generators · released Aug 2026

llvmlite provides a lightweight Python binding to LLVM's IR builder, optimizer, and JIT compiler APIs, enabling you to write JIT compilers and code generators without needing the full LLVM C++ API surface.

BSD-2-Clause AND Apache-2.0 WITH LLVM-exceptioncompiled wheel · 3.10+
69.3Mdownloads / mo
astor Worth it
PyPI · Code Generators · released Dec 2019

astor converts Python abstract syntax trees (ASTs) back to readable source code and provides tools for AST manipulation, inspection, and non-recursive tree traversal.

Install it if you need AST round-tripping or advanced tree inspection.

BSD-3-Clausepure Python
20.0Mdownloads / mo

See also epik8s-tools · pyepics · junos-eznc · epicscorelibs · magicgui · ophyd · junit-xml · ipylab · PyXB-X · ipyvue