{ "info": { "author": "Som Energia SCCL", "author_email": "info@somenergia.coop", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "python-intercoop\n================\n\n|Build Status|\n\nA Python implementation of the intercoop protocol.\n\nPurpose\n-------\n\nIn the context of intercooperation among social economy entities, these\nlibraries implement a protocol to enable a user of a given entity to use\nservices provided by other entities having a bilateral agreement. This\nis done keeping the users in control of which are the enabled services\nand, most important, which entities will be transferred their personal\ndata to.\n\nSome intended goals:\n\n- Ease extending intercooperation to new entities by sharing a common\n protocol,\n\n - single implementation for our users to use services from many\n other entities,\n - single implementation to offer our services to users of many other\n entities\n\n- Be certain that the services request comes from the source entity\n- Users control how and whom their personal data is transferred to\n- Still avoid the user from having to type personal data again and\n again\n\nInstall\n-------\n\n.. code:: bash\n\n $ pip install .\n\nModules\n-------\n\n- Examples:\n\n - ``portalexample``: Flask based example of a source entity portal\n - ``apiexample``: Flask based example of a target entity api\n\n- Fully reusable modules:\n\n - ``catalog``: functions to manage a service catalog in a portal\n - ``apiclient``: encapsulates remote acces to the target API\n - ``package``: encapsulates package marshalling/umarshalling,\n signing/verification\n - ``crypto``: cryptography primitives:\n\n - hides actual algorithms compexity under simple action names\n\n- Data sources: You normally want to rewrite those, for example to take\n data from a database or similar. Reference implementation use a\n directory full of YAML files.\n\n - Source Portal:\n\n - ``peerinfo``: access yaml info provided by the available\n targets\n - ``userinfo``: access source user personal data\n\n - Target API:\n\n - ``keyring``: gives access to peers public keys (relies on\n ``peerinfo``)\n - ``remoteuserinfo``: temporary stores the transferred data\n\n- Utilities:\n\n - ``translator``: rewrites yamls by picking language on translatable\n strings\n - ``perfume``: a Flask wrapper to enable dependency injection on\n Flask apps\n\nExample scripts\n---------------\n\n- ``portal-example-somillusio.py``: *somillusio* portal\n- ``api-example-somacme.py``: *somacme* api and service form\n\nOther scripts\n-------------\n\n- ``validate-intercoop.py``: Validates a peer info yaml\n\n.. |Build Status| image:: https://travis-ci.org/Som-Energia/intercoop.svg?branch=master\n :target: https://travis-ci.org/Som-Energia/intercoop\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Som-Energia/intercoop", "keywords": "", "license": "GNU Affero General Public License v3 or later (AGPLv3+)", "maintainer": "", "maintainer_email": "", "name": "intercoop", "package_url": "https://pypi.org/project/intercoop/", "platform": "", "project_url": "https://pypi.org/project/intercoop/", "project_urls": { "Homepage": "https://github.com/Som-Energia/intercoop" }, "release_url": "https://pypi.org/project/intercoop/0.2.1/", "requires_dist": null, "requires_python": "", "summary": "Intercooperation library", "version": "0.2.1" }, "last_serial": 4220663, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "19ff47deb510fc269f714e04d09cbcd8", "sha256": "ea091970989fa5c684b834731b59d8b2638ad20be076d8f271ebf65cb6ab3f0e" }, "downloads": -1, "filename": "intercoop-0.2.tar.gz", "has_sig": false, "md5_digest": "19ff47deb510fc269f714e04d09cbcd8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27899, "upload_time": "2018-08-29T22:10:38", "url": "https://files.pythonhosted.org/packages/68/0f/72decb893e1f5612109366bf4987d713f490f433916a94a80e3061241d69/intercoop-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "7c86d67b9943b9c8012af51ef00d1248", "sha256": "2d3e008e98d95b8f92714efc170dd4fe3085909f5125883e8ea7028bc927fa8a" }, "downloads": -1, "filename": "intercoop-0.2.1.tar.gz", "has_sig": false, "md5_digest": "7c86d67b9943b9c8012af51ef00d1248", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28569, "upload_time": "2018-08-29T22:34:29", "url": "https://files.pythonhosted.org/packages/63/6a/9ef326190031aa0959c668d0fe4cb2fa4745eea8b92b77d601e3730b43e9/intercoop-0.2.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7c86d67b9943b9c8012af51ef00d1248", "sha256": "2d3e008e98d95b8f92714efc170dd4fe3085909f5125883e8ea7028bc927fa8a" }, "downloads": -1, "filename": "intercoop-0.2.1.tar.gz", "has_sig": false, "md5_digest": "7c86d67b9943b9c8012af51ef00d1248", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28569, "upload_time": "2018-08-29T22:34:29", "url": "https://files.pythonhosted.org/packages/63/6a/9ef326190031aa0959c668d0fe4cb2fa4745eea8b92b77d601e3730b43e9/intercoop-0.2.1.tar.gz" } ] }