<< return to Vizycam.com

What is Kritter and where is the documentation?

kritter looks to be bespoke software by charmed labs and integral to the operation of Vizy. And it appears to build on elements of dash. Where is the structure of all of this documented?

Also – it’d be nice if the files/code were commented.

/usr/local/lib/python3.7/dist-packages/kritter

├── about.py
├── assets
│ ├── bootstrap.min.css
│ ├── font-awesome.css
│ ├── font-awesome-css.min.css
│ ├── font-awesome.js
│ ├── fontawesome-webfont.eot
│ ├── fontawesome-webfont.ttf
│ ├── fontawesome-webfont.woff
│ └── fontawesome-webfont.woff2
├── client_secret.json
├── excepthook.py
├── execterm.py
├── gcloud.py
├── gpstoremedia.py
├── h264.py
├── init.py
├── ipa_rpi.so
├── ipa_rpi.so.sign
├── kbutton.py
├── kcamera.cpython-37m-arm-linux-gnueabihf.so
├── kcheckbox.py
├── kcomponent.py
├── kdialog.py
├── kdropdownmenu.py
├── kdropdown.py
├── keditor
│ ├── init.py
│ ├── keditor.html
│ ├── keditor.py
│ ├── pycache
│ └── static
├── kencoder.cpython-37m-arm-linux-gnueabihf.so
├── kimagedetector.py
├── klogin.py
├── kradio.py
├── kritter.py
├── kslider.py
├── kstoremedia.py
├── kterm
│ ├── init.py
│ ├── kterm.html
│ ├── kterm.py
│ ├── pycache
│ └── static
├── ktextbox.py
├── ktext.py
├── kvideocomp
│ ├── imports.py
│ ├── init.py
│ ├── kvideocomp.dev.js
│ ├── kvideocomp.dev.js.map
│ ├── kvideocomp.min.js
│ ├── kvideocomp.min.js.map
│ ├── KvideoComp.py
│ ├── metadata.json
│ ├── package-info.json
│ └── pycache
├── kvideo.py
├── libcamera.so
├── login
│ └── login.html
├── media
│ └── favicon.ico
├── proxy.py
├── pycache
│ ├── about.cpython-37.pyc
│ ├── excepthook.cpython-37.pyc
│ ├── execterm.cpython-37.pyc
│ ├── gcloud.cpython-37.pyc
│ ├── gpstoremedia.cpython-37.pyc
│ ├── h264.cpython-37.pyc
│ ├── init.cpython-37.pyc
│ ├── kbutton.cpython-37.pyc
│ ├── kcheckbox.cpython-37.pyc
│ ├── kcomponent.cpython-37.pyc
│ ├── kdialog.cpython-37.pyc
│ ├── kdropdown.cpython-37.pyc
│ ├── kdropdownmenu.cpython-37.pyc
│ ├── kimagedetector.cpython-37.pyc
│ ├── klogin.cpython-37.pyc
│ ├── kradio.cpython-37.pyc
│ ├── kritter.cpython-37.pyc
│ ├── kslider.cpython-37.pyc
│ ├── kstoremedia.cpython-37.pyc
│ ├── ktextbox.cpython-37.pyc
│ ├── ktext.cpython-37.pyc
│ ├── kvideo.cpython-37.pyc
│ ├── proxy.cpython-37.pyc
│ ├── resetexec.cpython-37.pyc
│ ├── savemediaqueue.cpython-37.pyc
│ ├── streamer.cpython-37.pyc
│ └── util.cpython-37.pyc
├── resetexec.py
├── savemediaqueue.py
├── streamer.py
├── tf
│ ├── birdfeeder
│ ├── coco
│ ├── init.py
│ ├── label_map_util.py
│ ├── pycache
│ ├── string_int_label_map_pb2.py
│ └── tfdetector.py
├── tflite
│ ├── coco
│ ├── init.py
│ ├── pycache
│ └── tflitedetector.py
└── util.py

and vizy is the other main folder.
/home/pi/vizy

├── apps
│ ├── birdfeeder
│ │ ├── birdfeeder_consts.py
│ │ ├── __birdfeeder.jpg
│ │ ├── birdfeeder.jpg
│ │ ├── info.json
│ │ ├── main.py
│ │ └── media
│ └── motionscope
│ ├── analyze.py
│ ├── camera.py
│ ├── capture.py
│ ├── centroidtracker.py
│ ├── dataupdate.py
│ ├── graphs.py
│ ├── info.json
│ ├── main.py
│ ├── media
│ ├── motion.py
│ ├── motionscope_consts.py
│ ├── __motionscope.jpg
│ ├── motionscope.jpg
│ ├── process.py
│ ├── pycache
│ ├── simplemotion.py
│ └── tab.py
├── etc
│ ├── birdfeeder_consts.py
│ ├── birdfeeder.json
│ ├── editor_settings.json
│ ├── pycache
│ │ └── birdfeeder_consts.cpython-37.pyc
│ ├── remote.json
│ ├── remote_key
│ ├── remote_key.pub
│ ├── users.json
│ ├── vizy_main.json
│ └── wifi.json
├── examples
│ ├── edge_detection
│ │ ├── info.json
│ │ └── main.py
│ ├── pet_companion
│ │ ├── hey.wav
│ │ ├── info.json
│ │ ├── main.py
│ │ └── media
│ ├── pictaker
│ │ ├── info.json
│ │ └── main.py
│ ├── tensorflow
│ │ ├── info.json
│ │ ├── main.py
│ │ └── main.py.bak
│ ├── tflite
│ │ ├── info.json
│ │ └── main.py
│ └── video
│ ├── info.json
│ └── main.py
├── scripts
│ ├── install_services
│ ├── install_update
│ ├── update_power_firmware
│ ├── vizy_fu
│ ├── vizy_power_monitor
│ ├── vizy_power_off
│ └── vizy_server
└── sys
├── vizy_io-0.1.3.fwe
├── vizy-power-monitor.service
├── vizy-power-off.service
└── vizy-server.service

/usr/local/lib/python3.7/dist-packages/dash
├── _callback_context.py
├── _configs.py
├── dash.py
├── dependencies.py
├── development
│ ├── _all_keywords.py
│ ├── base_component.py
│ ├── build_process.py
│ ├── component_generator.py
│ ├── component_loader.py
│ ├── init.py
│ ├── _jl_components_generation.py
│ ├── pycache
│ ├── _py_components_generation.py
│ └── _r_components_generation.py
├── exceptions.py
├── extract-meta.js
├── favicon.ico
├── fingerprint.py
├── init.py
├── pycache
│ ├── _callback_context.cpython-37.pyc
│ ├── _configs.cpython-37.pyc
│ ├── dash.cpython-37.pyc
│ ├── dependencies.cpython-37.pyc
│ ├── exceptions.cpython-37.pyc
│ ├── fingerprint.cpython-37.pyc
│ ├── init.cpython-37.pyc
│ ├── resources.cpython-37.pyc
│ ├── _utils.cpython-37.pyc
│ ├── _validate.cpython-37.pyc
│ ├── version.cpython-37.pyc
│ └── _watch.cpython-37.pyc
├── resources.py
├── testing
│ ├── application_runners.py
│ ├── browser.py
│ ├── composite.py
│ ├── consts.py
│ ├── dash_page.py
│ ├── errors.py
│ ├── init.py
│ ├── newhooks.py
│ ├── plugin.py
│ ├── pycache
│ └── wait.py
├── _utils.py
├── _validate.py
├── version.py
└── _watch.py

Hi Mark,
Documentation of Kritter and Vizy code, classes, and methods is on our to-do list. We’re currently focused on getting the applications in our Kickstarter page released.

Kritter is built ontop of Dash, but a modified version of Dash that has features with embedded devices specifically in mind. Kritter is designed to be a framework for deploying devices (not necessarily video/camera based devices), that you can access remotely (twiddle controls, see data, graphs tables, run commands, edit code) strictly from a browser. Vizy is built on top of Kritter.

Our apologies for the current lack of Kritter/Vizy docs… We hope to have made lots of headway on this by the end of the year. In the meantime, we’re happy to answer any questions.

Edward

Thanks, Edward! Hey – it doesn’t have to be all at once. Updating little by little as you go would be nice. Or is it possible the user community could help out with that in GitHub? Or would we get in the way? (I’m a github amateur)

Hi Mark,
The documentation of the Kritter/Vizy APIs will hopefully start coming out later this year. We’ll publish as we write them. They will be similar to the Power Board API docs, improved aesthetics though… Code examples are useful too-- we’ll continue to extend the existing examples and add new ones. Suggestions and PRs are always welcome.

Edward