streamlit-survey


Namestreamlit-survey JSON
Version 1.0.2 PyPI version JSON
download
home_pagehttps://github.com/OlivierBinette/streamlit_survey
SummarySurvey components for Streamlit apps
upload_time2024-11-13 00:49:27
maintainerNone
docs_urlNone
authorOlivier Binette
requires_python>=3.6
licenseCommons Clause + Apache License 2.0
keywords streamlit_survey
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://img.shields.io/badge/Lifecycle-Experimental-339999
   :alt: Lifecycle: experimental
   :target: https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app

.. image:: https://img.shields.io/badge/Docs-Streamlit-brightgreen
   :alt: Documentation on Streamlit
   :target: https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app

.. image:: https://badge.fury.io/py/streamlit-survey.svg
   :alt: Package on PyPI
   :target: https://pypi.org/project/streamlit-survey/


**Streamlit-Survey**: Survey components for Streamlit apps
==========================================================

**Streamlit-Survey** is a Python package for incorporating surveys and structured feedback into `Streamlit <https://streamlit.io>`_ apps.

It can be used with `Trubrics <https://github.com/trubrics/trubrics-sdk>`_ to collect feedback on datasets, models, and machine learning apps.

Installation
------------

Streamlit-Survey can be installed from PyPI::

        pip install streamlit-survey

Example
-------

Simple paged survey example with a conditional structure and a submit button:

.. image:: example-screenshot.png
        :width: 500
        :align: center
        :target: https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app

Error auditing toy example for machine learning applications:

.. image:: error-auditing-screenshot.png
        :width: 400
        :align: center
        :target: https://olivierbinette-streamli-docsstandaloneerror-analysis-app-ksc1h7.streamlit.app/

Usage
-----

The `streamlit_survey` package contains a `StreamlitSurvey` class that can be used to create and manage survey components::

        import streamlit_survey as ss

        survey = ss.StreamlitSurvey()

Components can be added to the survey using functions similar to Streamlit's input functions:

.. image:: streamlit-survey-screenshot.png
        :width: 500
        :align: center
        :target: https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app

Features
--------

Survey components are similar to Streamlit inputs, but they have additional features that make them suitable for surveys:

- Questions and responses are automatically saved.
- Component states and previous responses are automatically restored and displayed based on survey data.
- Survey can be saved to and loaded from JSON files.
- Custom survey components can be created for more complex input UI and functionality.
- Customizable paging and option to show a progress bar.


Read the docs:
--------------

`Streamlit-Survey Documentation <https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app>`_

License
-------

* Commons Clause + Apache 2.0


=======
History
=======

1.0.0 (2024-08-08)
------------------

* Fix button customization in paged surveys.
* Add progress bar option to pages.
* Add option to pass a list to Page's constructor, in order to both have the current page number and an associated value.
* Add survey download button and file importer.
* Add "widget_key" to survey data to help restore survey data for displayed widgets.

0.1.0 (2023-03-23)
------------------

* First release.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/OlivierBinette/streamlit_survey",
    "name": "streamlit-survey",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": "streamlit_survey",
    "author": "Olivier Binette",
    "author_email": "olivier.binette@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/a7/6c/5b420ecf63e68ff1866053ce20c224ed763c9108ffe63721810e5f730f34/streamlit_survey-1.0.2.tar.gz",
    "platform": null,
    "description": ".. image:: https://img.shields.io/badge/Lifecycle-Experimental-339999\n   :alt: Lifecycle: experimental\n   :target: https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app\n\n.. image:: https://img.shields.io/badge/Docs-Streamlit-brightgreen\n   :alt: Documentation on Streamlit\n   :target: https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app\n\n.. image:: https://badge.fury.io/py/streamlit-survey.svg\n   :alt: Package on PyPI\n   :target: https://pypi.org/project/streamlit-survey/\n\n\n**Streamlit-Survey**: Survey components for Streamlit apps\n==========================================================\n\n**Streamlit-Survey** is a Python package for incorporating surveys and structured feedback into `Streamlit <https://streamlit.io>`_ apps.\n\nIt can be used with `Trubrics <https://github.com/trubrics/trubrics-sdk>`_ to collect feedback on datasets, models, and machine learning apps.\n\nInstallation\n------------\n\nStreamlit-Survey can be installed from PyPI::\n\n        pip install streamlit-survey\n\nExample\n-------\n\nSimple paged survey example with a conditional structure and a submit button:\n\n.. image:: example-screenshot.png\n        :width: 500\n        :align: center\n        :target: https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app\n\nError auditing toy example for machine learning applications:\n\n.. image:: error-auditing-screenshot.png\n        :width: 400\n        :align: center\n        :target: https://olivierbinette-streamli-docsstandaloneerror-analysis-app-ksc1h7.streamlit.app/\n\nUsage\n-----\n\nThe `streamlit_survey` package contains a `StreamlitSurvey` class that can be used to create and manage survey components::\n\n        import streamlit_survey as ss\n\n        survey = ss.StreamlitSurvey()\n\nComponents can be added to the survey using functions similar to Streamlit's input functions:\n\n.. image:: streamlit-survey-screenshot.png\n        :width: 500\n        :align: center\n        :target: https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app\n\nFeatures\n--------\n\nSurvey components are similar to Streamlit inputs, but they have additional features that make them suitable for surveys:\n\n- Questions and responses are automatically saved.\n- Component states and previous responses are automatically restored and displayed based on survey data.\n- Survey can be saved to and loaded from JSON files.\n- Custom survey components can be created for more complex input UI and functionality.\n- Customizable paging and option to show a progress bar.\n\n\nRead the docs:\n--------------\n\n`Streamlit-Survey Documentation <https://olivierbinette-streamlit-surv-docs-streamlit-survey-docs-hu1jf8.streamlit.app>`_\n\nLicense\n-------\n\n* Commons Clause + Apache 2.0\n\n\n=======\nHistory\n=======\n\n1.0.0 (2024-08-08)\n------------------\n\n* Fix button customization in paged surveys.\n* Add progress bar option to pages.\n* Add option to pass a list to Page's constructor, in order to both have the current page number and an associated value.\n* Add survey download button and file importer.\n* Add \"widget_key\" to survey data to help restore survey data for displayed widgets.\n\n0.1.0 (2023-03-23)\n------------------\n\n* First release.\n",
    "bugtrack_url": null,
    "license": "Commons Clause + Apache License 2.0",
    "summary": "Survey components for Streamlit apps",
    "version": "1.0.2",
    "project_urls": {
        "Homepage": "https://github.com/OlivierBinette/streamlit_survey"
    },
    "split_keywords": [
        "streamlit_survey"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b0f3aeb4358a076331ffdb06727376fcaa79bb4e51a6f563b7da34e6c791a20e",
                "md5": "d96572bc27118efcda19b3371d825f37",
                "sha256": "37d1bd29403bbc630253db3b36639fad933f50a292d9f4678781308f387ee2b8"
            },
            "downloads": -1,
            "filename": "streamlit_survey-1.0.2-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d96572bc27118efcda19b3371d825f37",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.6",
            "size": 14531,
            "upload_time": "2024-11-13T00:49:26",
            "upload_time_iso_8601": "2024-11-13T00:49:26.144760Z",
            "url": "https://files.pythonhosted.org/packages/b0/f3/aeb4358a076331ffdb06727376fcaa79bb4e51a6f563b7da34e6c791a20e/streamlit_survey-1.0.2-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a76c5b420ecf63e68ff1866053ce20c224ed763c9108ffe63721810e5f730f34",
                "md5": "1cca56ce5aa42d9c6d21a6f3d41dbfdb",
                "sha256": "cb13e9f5128c5c80f02e060e25b0ef2b6e1600f6aa3436788303ce34b7e6e64e"
            },
            "downloads": -1,
            "filename": "streamlit_survey-1.0.2.tar.gz",
            "has_sig": false,
            "md5_digest": "1cca56ce5aa42d9c6d21a6f3d41dbfdb",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 209956,
            "upload_time": "2024-11-13T00:49:27",
            "upload_time_iso_8601": "2024-11-13T00:49:27.829065Z",
            "url": "https://files.pythonhosted.org/packages/a7/6c/5b420ecf63e68ff1866053ce20c224ed763c9108ffe63721810e5f730f34/streamlit_survey-1.0.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-13 00:49:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "OlivierBinette",
    "github_project": "streamlit_survey",
    "github_not_found": true,
    "lcname": "streamlit-survey"
}
        
Elapsed time: 0.52108s