Skip to main content

Mita client for Python.

Project description

Mita

Mita, named as Multi-Tangled, is a web application for monitoring runtime status and data of multiple machines (clients).

Demo: https://mita-demo.controlnet.space

Get Started

Run Server

The server is used to accept client post data and host the web UI.

Docker

docker run \
  -p <PORT>:9000 \
  -e MITA_PASSWORD=<PASSWORD> \
  [-e MITA_GUEST_PASSWORD=<GUEST_PASSWORD>] \
  controlnet/mita[:<VERSION>]

Environment Variables

  • MITA_PASSWORD: Password for admin accessing the api and web for read/write.
  • MITA_GUEST_PASSWORD: Password for guest accessing the api and web for read only.
  • REACT_APP_PASSWORD: Optional, set the default password for the frontend.
  • MITA_SECRET_KEY: Optional, Server secret key for CRSF token.
  • MITA_TOKEN_SECRET: Optional, Server secret key for JWT authentication token.

Run Client

The client is the interface to post data to the server.

Now the python client is available. The other clients (nodejs, java, cli, ...) are in plan.

Python Client

Install the client from pypi:

pip install mita_client

Use the tqdm integrated client (require tqdm for progress bar):

from mita_client import mita_tqdm
import time

for i in mita_tqdm(range(1000), ADDRESS, PASSWORD):
    time.sleep(0.1)

Use the fully client:

from mita_client.client import Mita
from mita_client.component import *
from mita_client.view import View

# initialize components
view = View("python_view")
logger = Logger("python_logger")
line_chart = LineChart("python_line_chart")
progress_bar = ProgressBar("python_progress_bar", total=100)
var = Variable("python_var", 100)

# register components to view
view.add(
    var,
    progress_bar,
    logger,
    line_chart
)

# update data in the runtime, and post to the client
with Mita(ADDRESS, PASSWORD) as client:
    client.add(view)

    for i in range(10):
        logger.log(f"some msg {i}")
        line_chart.add(1 + i, 1 + i, "pos")
        line_chart.add(1 + i, 3.5 - i, "neg")
        progress_bar.set(i * 8 + 1)
        
        client.push()

License

Module License
server AGPL
client MIT

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

mita_client-0.0.6.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

mita_client-0.0.6-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file mita_client-0.0.6.tar.gz.

File metadata

  • Download URL: mita_client-0.0.6.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for mita_client-0.0.6.tar.gz
Algorithm Hash digest
SHA256 b8b9efbd5d5b1ab571c605091ee505fb90de4afbf538205a6acebd4f1ce57947
MD5 503474df6bf4cd4ff423ca7748398779
BLAKE2b-256 cbfbacf055337879d42fe78b3ae0fb2c5325f9a15fb9cf038c40da037d652c3d

See more details on using hashes here.

File details

Details for the file mita_client-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: mita_client-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for mita_client-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 055d88b0fa8bc2c8157f6efdad82fb0cc48ac3af6526749678b76ab86352af68
MD5 e6d227992d2a21761d41804166e0d797
BLAKE2b-256 3ff19c1ac3e3ab55e80dba29dee554eb7464b28616009e25656831bdf7999e12

See more details on using hashes here.

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