Skip to content

BayerC/open_cups

Repository files navigation

OpenCups: Live Feedback for Presenters

CI codecov Code style: ruff License: MIT Python 3.13+ Streamlit App PRs Welcome Support us on Ko-fi

OpenCups Logo

How to Use This App

Open https://open-cups.streamlit.app/ or run locally

  1. Create a Room: The presenter starts a new session, which generates a unique room.

  2. Share the Access Link: The presenter shares the room ID, a direct link, or a QR code with the audience.

  3. Gather Live Feedback: Participants join to share their status and ask/vote on questions.


The traffic light cups technique [1] [2]

This system offers a simple, intuitive way to gather real-time audience feedback. Participants indicate their level of understanding (originally done plastic cups) using a simple color code:

🟢 Green → Following easily

🟡 Yellow → Need more explanation

🔴 Red → Cannot follow

The presenter sees an aggregate view of the responses and can adjust the presentation accordingly.

Run locally

  1. git clone https://github.com/BayerC/open_cups.git
  2. cd open_cups/
  3. Install uv: https://docs.astral.sh/uv/getting-started/installation/
  4. To run app locally: uv run streamlit run main.py

Contributing

  1. Run locally steps
  2. Hook prek (pre-commit hook) into git: uv run prek install
  3. To run prek manually run: uv run prek run --all-files

Dependency Management

This project uses uv for dependency management:

  • pyproject.toml: Defines dependencies with version constraints.
  • uv.lock: Lockfile with exact versions for all platforms. Committed to version control.
  • requirements.txt: Auto-generated from uv.lock for deployment compatibility (e.g., Streamlit Cloud). DO NOT edit manually - it's regenerated by pre-commit hooks. Committed to version control for deployment platforms that don't support uv natively.

Relation to existing cups projects

This is a scalable, tested, and modern rewrite of https://github.com/fastai/fastcups in python using https://streamlit.io/ that supports multiple rooms hosted on the same server.

Other teaching institutions had this idea before, see for example these and these instructions.

About

App for live feedback for presenters using python3 and streamlit

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

 
 
 

Contributors