{ "info": { "author": "Imbolc", "author_email": "imbolc@imbolc.name", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: ISC License (ISCL)", "Programming Language :: Python", "Programming Language :: Python :: 3" ], "description": "aiohttp-login\n=============\n\nRegistration and authorization (including social) for aiohttp apps\n\nWith just a few settings you'll give for your\n`aiohttp `__ site:\n\n- registration with email confirmation\n- authorization by email or social account (facebook, google and\n vkontakte for now)\n- reset password by email\n- change email with confirmation\n- edit current password\n\nYou can see all of this staff alive\n`here `__\n\nDatabases\n---------\n\nYou can use this lib with different database backends:\n\n- postgres with `asyncpg `__\n- mongodb with `motor `__\n- the db you need - *it's very easy to add a new backend*\n\nUI themes\n---------\n\nThe library designed to easily change UI themes. Currently\n``bootstrap-3`` and ``bootstrap-4`` themes are available. But it's very\neasy to add new themes, actually theme - is just a folder with jinja2\ntemplates.\n\nInstallation and configuration\n------------------------------\n\nJust install the library from pypi:\n\n::\n\n pip install aiohttp-login\n\nChoice and configure one of database storages.\n\nFor postgres with `asyncpg `__:\n\n.. code:: python\n\n import asyncpg\n from aiohttp_login.asyncpg_storage import AsyncpgStorage\n\n pool = await asyncpg.create_pool(dsn='postgres:///your_db')\n storage = AsyncpgStorage(pool)\n\nFor mongodb with `motor `__:\n\n.. code:: python\n\n from motor.motor_asyncio import AsyncIOMotorClient\n from aiohttp_login.motor_storage import MotorStorage\n\n db = AsyncIOMotorClient(io_loop=loop)['your_db']\n storage = MotorStorage(db)\n\nNow configure the library with a few settings:\n\n.. code:: python\n\n app = web.Application(loop=loop)\n app.middlewares.append(aiohttp_login.flash.middleware)\n aiohttp_jinja2.setup(\n app,\n loader=jinja_app_loader.Loader(),\n context_processors=[aiohttp_login.flash.context_processor],\n )\n aiohttp_login.setup(app, storage, {\n 'CSRF_SECRET': 'secret',\n\n 'VKONTAKTE_ID': 'your-id',\n 'VKONTAKTE_SECRET': 'your-secret',\n 'GOOGLE_ID': 'your-id',\n 'GOOGLE_SECRET': 'your-secret',\n 'FACEBOOK_ID': 'your-id',\n 'FACEBOOK_SECRET': 'your-secret',\n\n 'SMTP_SENDER': 'Your Name ',\n 'SMTP_HOST': 'smtp.gmail.com',\n 'SMTP_PORT': 465,\n 'SMTP_USERNAME': 'your@gmail.com',\n 'SMTP_PASSWORD': 'password'\n })\n\nThat's all. Look at the `live\nexample `__ and its code in the\n`example `__\nfolder. Full list of available settings you can find in\n`aiohttp\\_login/cfg.py `__\nfile.\n\nRun the example\n---------------\n\nCreate a virtual environment and install the dependencies:\n\n::\n\n cd example\n python3 -m venv venv\n source venv/bin/activate\n pip install -r requirements.txt\n\nCreate postgres database and tables:\n\n::\n\n createdb aiohttp_login\n psql -d aiohttp_login -f ../aiohttp_login/pg_tables.sql\n\nRename ``settings.py.template`` to ``settings.py`` and populate it with\nreal data.\n\nRun the server:\n\n::\n\n python app.py\n\nRun tests\n---------\n\n::\n\n pip install -r requirements-dev.txt\n py.test\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/imbolc/aiohttp-login", "keywords": "", "license": "ISC", "maintainer": "", "maintainer_email": "", "name": "aiohttp-login", "package_url": "https://pypi.org/project/aiohttp-login/", "platform": "", "project_url": "https://pypi.org/project/aiohttp-login/", "project_urls": { "Homepage": "https://github.com/imbolc/aiohttp-login" }, "release_url": "https://pypi.org/project/aiohttp-login/1.4.0/", "requires_dist": null, "requires_python": "", "summary": "Registration and authorization (including social) for aiohttp apps", "version": "1.4.0" }, "last_serial": 3609571, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "e7bc822932dc2062972d864f69ecc623", "sha256": "04ad2cf8330727f016d61cd004f70c8aac0d943d2adb8ebfd955d60a6c654608" }, "downloads": -1, "filename": "aiohttp-login-1.0.0.tar.gz", "has_sig": false, "md5_digest": "e7bc822932dc2062972d864f69ecc623", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18501, "upload_time": "2017-01-24T10:52:47", "url": "https://files.pythonhosted.org/packages/a3/71/722eaa3203769554f5df2a6d987758d3e1aae605b2813959a1040c5bdd0e/aiohttp-login-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "5265cfef3ca37dd405a800fd39391524", "sha256": "25e1f40cfb883a872f4b33d8ede1d4bd0929e4300d04df4a2aab44d4a667d9ec" }, "downloads": -1, "filename": "aiohttp-login-1.0.1.tar.gz", "has_sig": false, "md5_digest": "5265cfef3ca37dd405a800fd39391524", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18501, "upload_time": "2017-01-24T11:50:46", "url": "https://files.pythonhosted.org/packages/f8/e1/3ee4d703b0f4f3e57c80615949ce00444c7feadfe383d9f602ed3b890229/aiohttp-login-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "b82e2a161c0e5623a4da582f77180ce5", "sha256": "053c8257a38d52167bf3d57df7c3f73b8873da77d7e83fea51917101dc1d0a71" }, "downloads": -1, "filename": "aiohttp-login-1.0.2.tar.gz", "has_sig": false, "md5_digest": "b82e2a161c0e5623a4da582f77180ce5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18651, "upload_time": "2017-01-28T00:51:46", "url": "https://files.pythonhosted.org/packages/14/84/c7df2a6e746c164c773b31d65e476bb074863f0daf52b1bbdb0c1f8b416f/aiohttp-login-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "c5290210c105d602e721be72efd2310b", "sha256": "ebc0e1a912eb533ade1428731d46340cc0b0633e6281cff1e7c37cb13dcf1cae" }, "downloads": -1, "filename": "aiohttp-login-1.0.3.tar.gz", "has_sig": false, "md5_digest": "c5290210c105d602e721be72efd2310b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18637, "upload_time": "2017-01-28T01:06:14", "url": "https://files.pythonhosted.org/packages/6e/56/a01bc9636c355a8b768a00a1809e45e9766dbe9746ddc24dd1dc9dfd87a3/aiohttp-login-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "f953bf61d7d6ba22941bcf31cc47cd32", "sha256": "0d4817b2c07f93057f98053756b778dec0121c81d90262eea560c1f9f4551bfd" }, "downloads": -1, "filename": "aiohttp-login-1.0.4.tar.gz", "has_sig": false, "md5_digest": "f953bf61d7d6ba22941bcf31cc47cd32", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18797, "upload_time": "2017-01-31T04:37:15", "url": "https://files.pythonhosted.org/packages/10/c0/dc873ab4d4b5edc8b02bf4e5cf7833c1044a7ebc5bdf68c573bac1518afc/aiohttp-login-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "f5096a3d9c39004f43a5d3e36e13c619", "sha256": "1fbba25eb02d44cdcdc327d52f9532a1234882cddf01ddc7898874c28cefbadf" }, "downloads": -1, "filename": "aiohttp-login-1.0.5.tar.gz", "has_sig": false, "md5_digest": "f5096a3d9c39004f43a5d3e36e13c619", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18872, "upload_time": "2017-02-13T18:10:27", "url": "https://files.pythonhosted.org/packages/22/9d/55b25efb80666c8c49121e2b295a6fff3dad53eaf25d359e7658fb9f26d8/aiohttp-login-1.0.5.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "6d6e716dd90ca2ad0c399b5e25dd0b81", "sha256": "f1430360b556216cc4a93e0b2706d0ccb6fae60779049720edd8454178a09342" }, "downloads": -1, "filename": "aiohttp-login-1.1.0.tar.gz", "has_sig": false, "md5_digest": "6d6e716dd90ca2ad0c399b5e25dd0b81", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18907, "upload_time": "2017-02-19T10:23:16", "url": "https://files.pythonhosted.org/packages/49/00/54bf14e501124457d6b29758beac51a4ed97ec766ff87c8d318c79627441/aiohttp-login-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "c350414c26d2d50fc0023cf080771da2", "sha256": "7f02f8e2c92b8f97f31544f1f5a05f728f8058ea242413e2855bd4d5a22d6f1b" }, "downloads": -1, "filename": "aiohttp-login-1.2.0.tar.gz", "has_sig": false, "md5_digest": "c350414c26d2d50fc0023cf080771da2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18998, "upload_time": "2017-03-20T05:10:08", "url": "https://files.pythonhosted.org/packages/d1/c8/935f05ce946db9a15a661fc36c92ba9c862e5a3082205433baecd9c25984/aiohttp-login-1.2.0.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "19d67a3e4f451154bc8d66df739a6a97", "sha256": "4eed00683a9ea4b85112dfe49f1c0c30acc918d51603ccc0cce1626ee1fc4e82" }, "downloads": -1, "filename": "aiohttp-login-1.3.0.tar.gz", "has_sig": false, "md5_digest": "19d67a3e4f451154bc8d66df739a6a97", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19002, "upload_time": "2017-06-03T10:40:20", "url": "https://files.pythonhosted.org/packages/fa/a5/e7307056af3841b3a08d82bc2536b532bffb18f52b105aac5173366db1dd/aiohttp-login-1.3.0.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "98651fe97493b7f8a127d77d1dcc9fe1", "sha256": "1aa0f0a01ea613c6e80a918fe4e88f698b7ad0b39bbeaf2066e39ed75aa075f7" }, "downloads": -1, "filename": "aiohttp-login-1.4.0.tar.gz", "has_sig": false, "md5_digest": "98651fe97493b7f8a127d77d1dcc9fe1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20087, "upload_time": "2018-02-23T15:32:53", "url": "https://files.pythonhosted.org/packages/ab/02/ebf8e45a84a12d077cd1df1e2901f73f6b33205ff331eda7f00562f4022f/aiohttp-login-1.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "98651fe97493b7f8a127d77d1dcc9fe1", "sha256": "1aa0f0a01ea613c6e80a918fe4e88f698b7ad0b39bbeaf2066e39ed75aa075f7" }, "downloads": -1, "filename": "aiohttp-login-1.4.0.tar.gz", "has_sig": false, "md5_digest": "98651fe97493b7f8a127d77d1dcc9fe1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20087, "upload_time": "2018-02-23T15:32:53", "url": "https://files.pythonhosted.org/packages/ab/02/ebf8e45a84a12d077cd1df1e2901f73f6b33205ff331eda7f00562f4022f/aiohttp-login-1.4.0.tar.gz" } ] }