Skip to content

innerspacetrainings/streamlit-text-label

 
 

Repository files navigation

streamlit-text-label

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

Usage

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.

Develop

docker-compose up --build

Or manually, start the frontend

cd streamlit_text_label/frontend
npm install
npm run start

Followed by the example app

pip install -r example/requirements.txt
RELEASE=DEV streamlit run example/app.py

Publish

cd component/frontend
npm run build
cd ../..
python setup.py sdist bdist_wheel

Known Issues

  • 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.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 69.9%
  • TypeScript 20.2%
  • HTML 4.9%
  • Dockerfile 3.5%
  • CSS 1.5%