skillfed

streamlit-keyup

Text input that renders on keyup

streamlit-keyup v0.3.0 288.4K downloads/30d#8,021 on PyPI218
License unclear Active released

What it is and what it does

streamlit-keyup wraps Streamlit's text input to fire updates on every keystroke rather than waiting for the user to finish and submit. It's a thin layer on top of streamlit and jinja2 that lets you react to text as it's being typed, useful for search-as-you-type, live validation, or instant filtering in a web app.

The package offers a function that mimics Streamlit's text input API but adds a debounce parameter to throttle how often updates fire. It's designed for developers already building Streamlit apps who need finer-grained control over text input timing without building custom JavaScript.

Use it for:

  • Search-as-you-type interfaces where results filter or update with each character typed.
  • Live validation of user input (e.g., checking if a username is available in real time).
  • Instant autocomplete or suggestion lists that respond to partial text entry.
  • Debounced API calls triggered by user typing, to avoid overwhelming a backend with requests.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Adds real-time text input to Streamlit apps that fires on every keystroke, with optional debouncing to throttle update frequency.

Yes, if you're building a Streamlit app and need keystroke-level responsiveness on text input. Install friction is minimal and maintenance is active. Verify the license terms in the repository first, since the package metadata does not declare one. No known security issues.

Install

streamlit-keyup on PyPI

pip

pip install streamlit-keyup

uv

uv add streamlit-keyup

poetry

poetry add streamlit-keyup

Installing streamlit-keyup

Before you install

Low friction install with just two runtime dependencies (streamlit and jinja2). Actively maintained as of early 2025 with a modest but engaged user base.

License in practice

License status is unclear — no SPDX identifier or raw license text is available in the package metadata, so you should verify the actual license terms in the repository before use.

Quickstart

pip install streamlit-keyup

import streamlit as st
from streamlit_keyup import st_keyup

value = st_keyup("Enter a value", key="0")
st.write(value)

Verify before relying

  • Actual license terms — metadata shows no SPDX or raw license declaration; check the repository directly.
  • Whether debounce timing is client-side or server-side and how it interacts with Streamlit's rerun model.
  • Specific use cases beyond what the description excerpt documents.

Package facts

License not declared (unclear)
Python support supports the current Python release (>=3.7)
Install friction low — pure-Python wheel
Runtime dependencies 2 — streamlit, jinja2
Maintenance actively maintained — 589 days since the last release
Last repo commit
First released
Downloads 288,430/month — #8,021 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: streamlit_keyup-0.3.0-py3-none-any.whl

Tags

streamlit real-time text inputkeystroke event handleron keyup text inputdebounced text inputlive text capture streamlit
streamlit-extensionreal-time-input

More Application Frameworks packages

fastapi

FastAPI is a Python web framework for building…

permissive · top 100 on PyPI

annotated-doc

Provides a way to document function parameters,…

permissive · top 100 on PyPI

textual

Textual is a Python framework for building…

permissive · top 100 on PyPI

typer

Typer builds command-line applications from…

permissive · top 1,000 on PyPI

mcp

Build and connect to Model Context Protocol…

permissive · top 1,000 on PyPI

Werkzeug

Werkzeug is a WSGI utility library providing…

permissive · top 1,000 on PyPI

streamlit-camera-input-live

Provides a Streamlit component that captures…

unclear · top 15,000 on PyPI

streamlit-autorefresh

Adds a frontend timer to Streamlit apps that…

unclear · top 15,000 on PyPI

streamlit-sortables

Streamlit Sortables adds drag-and-drop sortable…

permissive · top 15,000 on PyPI

st-theme

Detects and returns the active theme (light or…

permissive · top 15,000 on PyPI

streamlit-webrtc

Adds real-time video and audio streaming over…

permissive · top 15,000 on PyPI

streamlit-plotly-events

Captures click, select, and hover events from…

unclear · top 15,000 on PyPI

st-annotated-text

Displays annotated text with labels and…

permissive · top 15,000 on PyPI

streamlit-notify

Streamlit-Notify provides persistent status…

permissive · top 15,000 on PyPI

streamlit-image-coordinates

A Streamlit component that displays an image…

permissive · top 15,000 on PyPI

streamlit-code-editor

Embeds an interactive code editor component…

unclear · top 15,000 on PyPI