Skip to main content
#+TITLE: UCB Faculty Utilities

* Launching the Panel Lookup App

This package ships with a CLI entry point that mirrors the manual
``panel serve`` invocation, so you can spin up the UI with:

#+begin_src sh
poetry run ucbfaculty --show
#+end_src

- ``--show`` pops a browser window; omit it if you only need the terminal log.
- ``--no-autoreload`` disables live reload (enabled by default to match ``panel serve --autoreload``).
- ``--port`` (default 5006) and ``--address`` let you host on a different interface.
- ``panel`` is an alias for ``serve``, so ``poetry run ucbfaculty panel`` works too.

* Makefile Shortcut

If you prefer ``make`` muscle memory:

#+begin_src sh
make serve
#+end_src

That target simply runs ``poetry run ucbfaculty --show`` on your behalf.

* Direct Panel Command

When you need the raw Panel entry point—for example, to pass bespoke
Panel options—call:

#+begin_src sh
poetry run panel serve ucbfaculty/apps/lookup.py --autoreload
#+end_src

The CLI route above automatically points to the same script and keeps
your options tidy for everyday use.

* Supplying the RawData Passphrase

Encrypted inputs in =RawData/= require a GPG passphrase. Provide it on
the command line:

#+begin_src sh
poetry run ucbfaculty -p "hunter2" --show
#+end_src

If =-p/--passphrase= is omitted, the passphrase is entered on the app
splash screen by default (leave it blank if your datasets are not
encrypted). Add =--prompt-passphrase= if you prefer the CLI prompt.

Need a different config file (for example, to point at a sandbox data
repo)? Add =--config=/path/to/config.yaml= (or set
=UCBFACULTY_CONFIG=). The Panel app’s Settings tab exposes the same
controls from inside the UI.

* Config keys
- =data_directory=: base path for RawData assets.
- =data_backend=: how =data_directory= is kept in step with its upstream:
=box-drive= (folder inside a Box Drive mount; nothing to sync),
=rclone= (mirror via rclone; see =rclone_remote=), or =git= (a
checkout; see =data_repo_url=). Inferred when omitted; see
=ucbfaculty.datasync.detect_backend=.
- =rclone_remote=: rclone source spec, e.g. =ucbfaculty:= (default; a Box
remote rooted at the shared folder) or =mybox:Some/Dir=.
- =data_repo_url=: repository to clone when =data_backend= is =git=.
- =features_yaml=: legacy FeatureBuilder spec (list or single path).
- =feature_specs_yaml=: new Feature spec file for the Feature class (defaults to =RawData/features_spec.yaml=).
- =sources_yaml=: source declarations powering the Feature class (defaults to =RawData/sources.yaml=).

* Cross-Tab Row Selection

While browsing feature tables or committee rosters, click any row to
pop that faculty member into the **Faculty Lookup** tab—the app even
auto-switches to that tab so their full profile is front and center.

* Encrypting RawData Assets

To generate =.gpg= versions of sensitive files for approved recipients,
run the helper script. Patterns are resolved relative to your configured
=RawData= directory:

#+begin_src sh
poetry run python scripts/encrypt_rawdata.py \
-r faculty-security@berkeley.edu \
RawData/2025-01\ All\ Senate\ Faculty.csv
#+end_src

Use multiple =-r= flags to target several keys, =--dest-dir= to drop the
encrypted copies elsewhere, and =--armor= when you prefer ASCII output.

* Settings Tab (Config + Sync)

Open the **Settings** tab inside the Panel app to:

- View or edit the active =config.yaml= (data directory, feature specs,
spelling dictionaries). Saving regenerates the config file and applies
it immediately—just refresh the data tabs afterward.
- Trigger a “Sync Data” action, which brings the configured data
directory up to date with its upstream (a no-op under Box Drive,
=rclone sync= for a mirror, =git pull --ff-only= for a checkout) and
reports the result in-place. =ucbfaculty sync= does the same from
the terminal.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ucbfaculty-0.5.0.tar.gz (126.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ucbfaculty-0.5.0-py3-none-any.whl (142.1 kB view details)

Uploaded Python 3

File details

Details for the file ucbfaculty-0.5.0.tar.gz.

File metadata

  • Download URL: ucbfaculty-0.5.0.tar.gz
  • Upload date:
  • Size: 126.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.12 Linux/6.6.119-09283-g9c138e0af8c3

File hashes

Hashes for ucbfaculty-0.5.0.tar.gz
Algorithm Hash digest
SHA256 098f4ec66427b3d22824a2876fb6ee9deb6f6899d61b5e9adfc878981c1b3fa0
MD5 a52aa412d91760d7e18a8237b5fde710
BLAKE2b-256 991fc71e3b6da1dc3071253c03af4e567c706d287ab294748c1c1623f0e051a7

See more details on using hashes here.

File details

Details for the file ucbfaculty-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: ucbfaculty-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 142.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.2.1 CPython/3.12.12 Linux/6.6.119-09283-g9c138e0af8c3

File hashes

Hashes for ucbfaculty-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1aa12b5694440b84abf78915ca77690cd3fbef60aa12315e3c6b54244b7d3a54
MD5 fc473ce2d823fb3ea9be3ee4cc10808f
BLAKE2b-256 4f8204dfbcb99f7ecba2f63786bfeecf1c719d5850c072d6484a1e5980fe0871

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.5.0 This release

2 files

0.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page