Hey Community ,
We’re excited to announce our new Streamlit Components API - releasing the new superpower of being able to use and create community driven elements and widgets! Here’s a blog post where @Adrien_Treuille discusses Components in more detail.
Below are some helpful tips and resources for getting started with Components.
Getting Started & Using Components
- Take a look at the Components documentation.
- Check out our featured components on the gallery or search via the “custom-components” tag here on the forum.
Building Components
- Take a look at our component-template repo on GitHub
- If you’d like help building your component from the community, share it under the “Show the Community!” category with a (WIP) in the title. [Ex: Component: Upload Multiple Files (WIP)]
Sharing
- If you have a Component you’d like to share - feel free to post it within the “Show the Community!” category with the tag “custom-components”.
- Note: if it’s still a work in progress and you’d like feedback leave a (WIP) in the title so the community can help.
- We’d also to feature your Component on our Components Gallery page. If interested feel free to let us know.
- Here are some recommended guidelines for sharing your component:
- GitHub (or other hosting) repository is public with license clearly marked
- Component is published on PyPI so users can easily run
pip install my-component
. While not a requirement per se, the recommended naming convention isstreamlit-<component name>
- A README and documentation explaining why a user would want to use the component, ideally with screenshots, examples, docstrings, etc.
- A high-quality image or gif of the Component for the gallery.
- Here’s an example Component showing best practices for sharing.
Questions
- If you a question while using or building a Component, feel free to create a topic in the questions category.
- Note: we recommend reaching out directly to the creator on the Component’s repository if you have questions about a specific Component.
Have fun!
- Excited to see what everyone thinks and looking forward to building Components together!