Skip to main content

Meta inquiry middleware for distributed systems

Project description

jomiel

jomiel is the meta inquiry middleware for distributed systems. It returns meta data for content on video-sharing websites (e.g. YouTube) and runs as a service responding to client inquiries.

Two core technologies serve as a basis for jomiel:

The client applications can be written in modern languages for most platforms.

jomiel is a spiritual successor to (now defunct) libquvi.

Example (jomiel)

Features

  • Language and platform neutral messaging using Protocol Buffers and ZeroMQ

  • A plugin architecture for extending video-sharing website support

  • Authentication and encryption (CURVE and SSH)

  • Runs fully as a service

  • Highly configurable

Getting started

To install from PyPI:

pip install jomiel        # For the latest release

To run from the repository:

git clone https://github.com/guendto/jomiel.git
cd jomiel
pip install -e .

Once you have jomiel running, you can try sending inquiries with:

  • examples - the demo programs written in most modern languages
  • yomiel - the pretty printer for jomiel messages

Website coverage

To view the list of the supported video-sharing websites, type:

jomiel --plugin-list

The website coverage is still very limited.

  • Additional support can be added by writing new plugins
  • The plugin architechture is implemented in Python
  • Python is a fun and easy language to learn

See the src/jomiel/plugin/ directory for the existing plugins.

When you are contributing new plugins

  • Make sure the website is not dedicated to copyright infringement (be that they host the media or the link to it)

  • Make sure the website is not NSFW

HOWTO

See docs/HOWTO.

License

jomiel is licensed under the Apache License version 2.0.

Acknowledgements

jomiel uses pre-commit and its many hooks to lint and format the project files. See the .pre-commit-config.yaml file for details.

Subprojects (as git subtrees)

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

jomiel-0.999.tar.gz (43.5 kB view hashes)

Uploaded Source

Built Distribution

jomiel-0.999-py3-none-any.whl (46.8 kB view hashes)

Uploaded 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