--- id: streamlit-keyup version: "0.3.0" license: unclear license_treatment: unclear maintenance: active --- # streamlit-keyup — Text input that renders on keyup License: unclear · Maintenance: active · Downloads: 288.4K/mo ## 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 above — 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 pip install streamlit-keyup uv add streamlit-keyup 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_current - Install friction: low - Maintenance: active - Downloads: 288.4K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags streamlit real-time text input, keystroke event handler, on keyup text input, debounced text input, live text capture streamlit, streamlit-extension, real-time-input [View on SkillFed](https://skillfed.io/packages/streamlit-keyup) · [View on PyPI](https://pypi.org/project/streamlit-keyup/)