{ "info": { "author": "Fantix King", "author_email": "fantix.king@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5" ], "description": "===============================\nRelask\n===============================\n\n.. image:: https://img.shields.io/pypi/v/relask.svg\n :target: https://pypi.python.org/pypi/relask\n\n.. image:: https://img.shields.io/travis/decentfox/relask.svg\n :target: https://travis-ci.org/decentfox/relask\n\n.. image:: https://readthedocs.io/projects/relask/badge/?version=latest\n :target: https://readthedocs.io/projects/relask/?badge=latest\n :alt: Documentation Status\n\n.. image:: https://requires.io/github/decentfox/relask/requirements.svg?branch=master\n :target: https://requires.io/github/decentfox/relask/requirements?branch=master\n :alt: Dependencies\n\n\nA Relay-based web development kit on Flask.\n\n* Free software: BSD license\n* Documentation: https://relask.readthedocs.io.\n\nFeatures\n--------\n\n* Fast web development setup with ES6, React and Relay\n* Batteries included: React Router, Webpack and Babel\n* Server is powered by Python, Flask and Graphene\n* JWT integrated, with a working example using Flask-Login\n\nUsage\n-----\n\n1. Install Relask:\n\n.. code:: bash\n\n pip install git+https://github.com/decentfox/relask\n\n2. Create a Flask application, for example: http://flask.pocoo.org/docs/quickstart/\n\n3. Initialize your Flask application with Relask (this requires `npm`):\n\n.. code:: bash\n\n FLASK_APP=xxx flask init-relask\n\n4. Under the root path of your Flask application, create `scripts/app.js` with something like this:\n\n.. code:: javascript\n\n import React from \"react\";\n import ReactDOM from \"react-dom\";\n import {Route, IndexRoute} from \"react-router\";\n import Relay from \"react-relay\";\n import {Relask, RelayContainer} from \"babel-loader!relask\";\n\n\n @RelayContainer\n class Hello extends React.Component {\n render() {\n return (\n
Hello, {this.props.hello.name}!
\n );\n }\n\n static relay = {\n fragments: {\n hello: () => Relay.QL`fragment on Hello { name }`\n }\n };\n }\n\n ReactDOM.render((\n \n Relay.QL`query { hello }`\n }}/>\n \n ), document.getElementById('app'));\n\n5. Initialize the Relask extension with something like this:\n\n.. code:: python\n\n import graphene\n from flask import Flask\n from graphene import relay\n from relask import Relask\n\n\n class Hello(relay.Node):\n name = graphene.String()\n\n def resolve_name(self, args, info):\n return 'World'\n\n @classmethod\n def get_node(cls, id, info):\n return Hello(id=id)\n\n\n class Query(graphene.ObjectType):\n node = relay.NodeField()\n hello = graphene.Field(Hello)\n\n def resolve_hello(self, args, info):\n return Hello.get_node(1, None)\n\n\n app = Flask(__name__)\n relask = Relask(app)\n relask.schema.query = Query\n\n6. See your result with one command - don't worry about webpack any more:\n\n.. code:: bash\n\n FLASK_APP=xxx flask run\n\n\nCredits\n---------\n\nThis package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n\n\n=======\nHistory\n=======\n\n0.1.0 (2016-06-07)\n------------------\n\n* First release on PyPI.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/decentfox/relask", "keywords": "relask", "license": "BSD license", "maintainer": null, "maintainer_email": null, "name": "relask", "package_url": "https://pypi.org/project/relask/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/relask/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/decentfox/relask" }, "release_url": "https://pypi.org/project/relask/0.1.0/", "requires_dist": null, "requires_python": null, "summary": "A Relay-based web development kit on Flask", "version": "0.1.0" }, "last_serial": 2197585, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "77a6f024f49d2500cb07d8c731633f2c", "sha256": "2013cfe06dd6d25516f4b3a13ccabf42be5e31663be5892e622ca43b4c91c44c" }, "downloads": -1, "filename": "relask-0.1.0.tar.gz", "has_sig": false, "md5_digest": "77a6f024f49d2500cb07d8c731633f2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17319, "upload_time": "2016-07-01T09:30:33", "url": "https://files.pythonhosted.org/packages/4f/3b/2cb18d0986a53095a50afbca08ec0199873fca6b55399f72c982ac7b4431/relask-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "77a6f024f49d2500cb07d8c731633f2c", "sha256": "2013cfe06dd6d25516f4b3a13ccabf42be5e31663be5892e622ca43b4c91c44c" }, "downloads": -1, "filename": "relask-0.1.0.tar.gz", "has_sig": false, "md5_digest": "77a6f024f49d2500cb07d8c731633f2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17319, "upload_time": "2016-07-01T09:30:33", "url": "https://files.pythonhosted.org/packages/4f/3b/2cb18d0986a53095a50afbca08ec0199873fca6b55399f72c982ac7b4431/relask-0.1.0.tar.gz" } ] }