https://github.com/patarapolw/tinydb-viewer
View records generated from TinyDB and alike (e.g. list of dictionaries.)
https://github.com/patarapolw/tinydb-viewer
pyexcel tinydb tinydb-python-nosql
Last synced: 9 months ago
JSON representation
View records generated from TinyDB and alike (e.g. list of dictionaries.)
- Host: GitHub
- URL: https://github.com/patarapolw/tinydb-viewer
- Owner: patarapolw
- License: mit
- Created: 2018-09-30T12:06:40.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-10-11T08:33:09.000Z (over 7 years ago)
- Last Synced: 2025-05-08T03:11:47.506Z (9 months ago)
- Topics: pyexcel, tinydb, tinydb-python-nosql
- Language: Python
- Size: 1.38 MB
- Stars: 7
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tinydb-viewer
[](https://pypi.python.org/pypi/tinydb-viewer/)
[](https://pypi.python.org/pypi/tinydb-viewer/)
View records generated from [TinyDB](https://tinydb.readthedocs.io/en/latest/index.html) and alike (e.g. list of dictionaries.)
## Installation
Method 1:
```commandline
$ pip install tinydb-viewer
```
Method 2:
- Clone the project from GitHub
- [Get poetry](https://github.com/sdispater/poetry) and `poetry install tinydb-viewer --path PATH/TO/TINYDB/VIEWER`
## Usage
Run a server initiation script first. This will allow you to edit the data as well.
```python
from tinydb_viewer import TinyDB
TinyDB('db.json').runserver()
```
Then, in IPython or in Jupyter Notebook,
```python
>>> from tinydb_viewer import TinyDB
>>> tdb = TinyDB('db.json')
>>> tdb.search(tdb.query['foo'] == 'bar', sort_func=lambda x: x['baz'])
>>> tdb.view()
'The first page is shown.'
>>> tdb.view(-1)
'The last page is shown.'
>>> tdb.previous()
'The previous page (i-1) is shown.'
>>> tdb.next()
'The next page (i+1) is shown.'
```
## Bonus
I extended TinyDB a little. My TinyDB is `'ensure_ascii' = False` by default, so that the file is a little smaller.
Also, it will use [tinydb-constraint](https://github.com/patarapolw/tinydb-constraint) by default, if it is installed.
## Screenshots

## Related projects
- [tinydb-constraint](https://github.com/patarapolw/tinydb-constraint) - Apply constraints before inserting and updating TinyDB records.