Custom streamlit component for labelling text selections, based on Label Studio.

Prerequisite:
- python >= 3.7
from streamlit_text_label import label_select
selections = label_select(body="lorem ipsum", labels=["Noun", "Verb"])More details in example directory.
docker-compose up --buildOr manually, start the frontend
cd streamlit_text_label/frontend
npm install
npm run startFollowed by the example app
pip install -r example/requirements.txt
RELEASE=DEV streamlit run example/app.pycd component/frontend
npm run build
cd ../..
python setup.py sdist bdist_wheel- Labelling standalone whitespaces will not work.
- Trailing and leading whitespace will be included in selection but not rendered.
- Label colors are generated from the first 6 characters of its own MD5 hash, which may clash and have low contrast (native HSL doesn't work fully with LS).
- Each selection renders best with 1 label only. If you need multiple labels, create multiple selections.