Skip to main content

Streamlit component that allows you to play piano

Project description

Streamlit Pianoroll

Streamlit component that allows you to play MIDI.

Installation instructions

pip install streamlit-pianoroll

Usage instructions

import streamlit as st

from pianoroll_streamlit import pianoroll

st.write("This is a pianoroll!")

pianoroll()

Development instructions

  • Initialize and run the component template frontend:
$ cd streamlit_pianoroll/frontend
$ npm install    # Install npm dependencies
$ npm run start  # Start the Webpack dev server
  • From a separate terminal, run the template's Streamlit app:
$ cd template
$ . venv/bin/activate  # activate the venv you created earlier
$ pip install -e . # install template as editable package
$ streamlit run streamlit_pianoroll/example.py  # run the example
  • If all goes well, you should see something like this:
image

Code Style

This repository uses pre-commit hooks with forced python formatting (black, flake8, and isort):

pip install pre-commit
pre-commit install

Whenever you execute git commit the files altered / added within the commit will be checked and corrected. black and isort can modify files locally - if that happens you have to git add them again. You might also be prompted to introduce some fixes manually.

To run the hooks against all files without running git commit:

pre-commit run --all-files

Publishing

Tutorial

# Prepare JS
cd streamlit_pianoroll/frontend
npm run build
cd ../..

# Releasey PYPI
echo "Update version in setup.py, pls"
python setup.py sdist bdist_wheel
python -m twine upload --repository pypi dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

streamlit_pianoroll-0.7.5.tar.gz (322.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

streamlit_pianoroll-0.7.5-py3-none-any.whl (2.7 MB view details)

Uploaded Python 3

File details

Details for the file streamlit_pianoroll-0.7.5.tar.gz.

File metadata

  • Download URL: streamlit_pianoroll-0.7.5.tar.gz
  • Upload date:
  • Size: 322.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for streamlit_pianoroll-0.7.5.tar.gz
Algorithm Hash digest
SHA256 486105d01f547ec7ea91d59ad4d4092dcf3c733c3677877aa150cbacbe26a675
MD5 b02011f8556825877bfd63f9d4b6e9e3
BLAKE2b-256 80022f6f3747374b58261273ecd3086e035ede0490611e14119f66be0a62fa70

See more details on using hashes here.

File details

Details for the file streamlit_pianoroll-0.7.5-py3-none-any.whl.

File metadata

File hashes

Hashes for streamlit_pianoroll-0.7.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ee7442a163159259f942536ebd8ea76fc541667b4630a315817283255ff15992
MD5 61c28584d038a223bf3daa912fc680b9
BLAKE2b-256 db40c524042ab082f928cb47343fbf6b584f59a3375f8bf889df7ec073c8a5b1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page