Skip to main content

Table viewer for relational databases, without using HandsOnTable.

Project description

HTMLViewer

PyPI version shields.io PyPI license

Table viewer for relational databases, without using HandsOnTable.

Actually, any list of JSON-serializable dictionaries can be viewed.

This is the remake of pyhandsontable.

Installation

pip install htmlviewer

Usage

In Jupyter Notebook,

>>> from htmlviewer import PagedViewer
>>> viewer = PagedViewer(LIST_OF_RECORDS, **kwargs)
>>> viewer
'A table is shown on Jupyter Notebook.'
>>> viewer.view(-1)
'The last page is shown.'
>>> viewer.previous()
'The previous page (i-1) is shown.'
>>> viewer.next()
'The next page (i+1) is shown.

Acceptable kwargs are,

{
    'maxColWidth': 200,  # Maximum column width for all columns.
    'minColWidth': '8em',
    'maxRowHeight': 500,  # Maximum row height for all rows.,
    'colWidth': {
        'imageField': 500
    },
    'renderer': {
        'imageField': 'html'  # Set the field to allow HTML.
    }
    'rowHeader': 'id'  # Selecting a custom column to be the first row, aka rowHeader.
}

Embedding images, markdown and HTML.

This can be done in Python side, by converting everything to HTML. Just use any markdown for Python library.

from markdown import markdown
import base64
image_html = f'<img src="{image_url}" width=100 />'
image_html2 = f'<img src="data:image/png;base64,{base64.b64encode(image_bytes).decode()}" />'
markdown_html = markdown(markdown_raw)

Any then,

PagedViewer(LIST_OF_RECORDS, renderers={
    "image_field": "html",
    "html_field": "html",
    "markdown_field": "html"
})

Screenshots

0.png

Related projects

  • pyhandsontable - View a list of JSON-serializable dictionaries or a 2-D array, in HandsOnTable, in Jupyter Notebook.

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

htmlviewer-0.1.7.tar.gz (9.6 kB view hashes)

Uploaded Source

Built Distribution

htmlviewer-0.1.7-py2.py3-none-any.whl (22.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

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