A Python client for the Hypernova service
Install the python client from pypi
pip install hypernova-pythonOnce you have the client installed and an instance of the Hypernova service running, you can making requests is easy.
importhypernovarenderer=hypernova.Renderer('http://localhost')
html=renderer.render({'MyComponent.js': {'name': 'Foo'}})You can pass configuration options to Renderer at initialization.
url: The address of the Hypernova service is listening, including port if necessaryplugins: A list of plugins to usetimeout: Number of seconds to wait for a response from the Hypernova serviceheaders: Dictionary of HTTP headers to override the default. You will want to include'Content-Type': 'application/json'
You can implement custom events and alter requests through the Plugin Lifecycle. All lifecycle methods are optional.
importhypernovaimportrandomclassMyPlugin(object):
defprepare_request(self, current_jobs, original_jobs):
job=current_jobs.get('MyComponent.js')
job.update({'random_int_for_reasons': random.randint(0, 100))
returncurrent_jobsrenderer=hypernova.Renderer('http://localhost', [MyPlugin()])