Metadata-Version: 2.4
Name: pyramid-blacksmith
Version: 2.2.1
Summary: Pyramid Bindings for Blacksmith
License-File: LICENSE
Author: Guillaume Gauvrit
Author-email: guillaume@gauvr.it
Requires-Python: >=3.7,<4.0
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: Pyramid
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Provides-Extra: prometheus
Requires-Dist: blacksmith (>=2.7.2,<3.0.0)
Requires-Dist: prometheus-client (>0.14) ; extra == "prometheus"
Requires-Dist: pyramid (>1.10,<3)
Requires-Dist: zk (>=0.8.5,<0.9.0)
Project-URL: Homepage, https://github.com/mardiros/pyramid-blacksmith
Project-URL: Repository, https://github.com/mardiros/pyramid-blacksmith
Description-Content-Type: text/x-rst

pyramid-blacksmith
==================

.. image:: https://github.com/mardiros/pyramid-blacksmith/actions/workflows/gh-pages.yml/badge.svg
   :target: https://mardiros.github.io/pyramid-blacksmith/
   :alt: Documentation

.. image:: https://github.com/mardiros/pyramid-blacksmith/actions/workflows/main.yml/badge.svg
   :target: https://github.com/mardiros/pyramid-blacksmith/actions/workflows/main.yml
   :alt: Continuous Integration

.. image:: https://codecov.io/gh/mardiros/pyramid-blacksmith/branch/main/graph/badge.svg?token=9IRABRO2LN
   :target: https://codecov.io/gh/mardiros/pyramid-blacksmith
   :alt: Coverage

Pyramid bindings for `Blacksmith`_ rest api client.


Introduction
------------

This plugin create a request proterty named ``blacksmith`` that bind
clients to do API Call using `Blacksmith`_.


Clients are configured via the pyramid configurator and its settings.

Then you can access the client factory behind a blacksmith property of
the request.


::

   def my_view(request):
      api_dummy = request.blacksmith.client("api_dummy")
      dummy = api_dummy.dummies.get({"name": "alice"})


In the example above, a dummy resource has been fetch using the service api_dummy.
The client method is a configured `Blacksmith Factory`_.

The configuration of the factory is simply made throw the pyramid configurator.

Go ahead and `get familiar with the documentation`_.


.. _`Blacksmith`: https://mardiros.github.io/blacksmith/index.html
.. _`Blacksmith Factory`: https://mardiros.github.io/blacksmith/user/instanciating_clients.html
.. _`get familiar with the documentation`: https://mardiros.github.io/blacksmith/index.html


