Skip to content

slightlynybbled/tk_tools

Repository files navigation

Build Status

Documentation Status

Purpose

This repository holds useful high-level widgets written in pure python.
This library used type hints and requires Python 3.5+; it could, however, be back-ported to earlier Python versions without difficulty.

For more details, check out the documentation.

Here are some examples screenshots of the widgets you can create:

Button-Grid:

Button-Grid

Binary-Label:

Byte-Label

Calendar:

Calendar

Entry-Grid:

Entry-Grid

Multi-Slot Frame

Multi-Slot Frame

Graph:

Graph

Key-Value:

Key-Value

Label-Grid:

Label-Grid

LED: (size can be scaled)

LED

SevenSegment and SevenSegmentDisplay

Seven Segment Display

Gauge

Gauge

Gauge Documentation

Rotary-Scale: (Tachometer)

Rotary-Scale

Dependencies

This package is dependant on engineering_notation, which is one of my other packages.

Testing

Basic testing has been instantiated however it is currently limited. To execute style testing:

flake8 tk_tools

To execute automated tests:

py.test test.py

More testing will be added to new widgets as they are brought online while further testing will be added to old widgets as the project matures.

Contributions

Contributions for new widgets, documentation, tests, and resolving issues are welcomed.

Contribution guidelines:

  1. Fork the repository to your account.
  2. Clone your account repository to your local development environment.
  3. Create/checkout a new branch appropriately named by feature, bug, issue number, whatever.
  4. Make your changes on your branch. The ideal changes would:
  • have working examples in the examples directory
  • have documentation in the docs directory
  1. Push your changes to your github account.
  2. Create a pull request from within github.

All code is to be passing flake8 before it is merged into master!