{ "info": { "author": "Jeremy Epstein", "author_email": "jazepstein@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Environment :: Web Environment", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3" ], "description": "flask-thumbnails-s3\n===================\n\nAn extension to create image thumbnails on Amazon S3 (or on local storage) with the Flask framework, based on flask-thumbnails.\n\n\nInstallation\n------------\n\nInstall with ``pip``:\n\nRun ``pip install flask-thumbnails-s3``\n\nAdd ``Thumbnail`` to your extension file:\n\n.. code:: python\n\n from flask_thumbnails_s3 import Thumbnail\n\n app = Flask(__name__)\n\n thumb = Thumbnail(app)\n\nAdd ``MEDIA_FOLDER`` and ``MEDIA_URL`` in your settings, as well as various S3-related values:\n\n.. code:: python\n\n app.config['MEDIA_FOLDER'] = '/home/www/media'\n app.config['MEDIA_URL'] = '/media/'\n app.config['THUMBNAIL_S3_STORAGE_TYPE'] = 's3'\n app.config['THUMBNAIL_S3_BUCKET_NAME'] = 'bucket-foo'\n app.config['THUMBNAIL_S3_ACCESS_KEY_ID'] = 'key-here'\n app.config['THUMBNAIL_S3_ACCESS_KEY_SECRET'] = 'secret-here'\n app.config['THUMBNAIL_S3_USE_HTTPS'] = True\n app.config['THUMBNAIL_S3_STATIC_ROOT_PARENT'] = '/path/to/project/root/'\n\n\nExample usage\n-------------\n\nUse in Jinja2 template:\n\n::\n\n \"\"\n \"\"\n\n\nFor a complete, working Flask app that demonstrates flask-thumbnails-s3 in action, have a look at `flask-s3-save-example `_.\n\n\nOptions\n~~~~~~~\n\n``crop='fit'`` returns a sized and cropped version of the image, cropped to the requested aspect ratio and size, `read more `_.\n\n``quality=XX`` changes the quality of the output JPEG thumbnail, default ``85``.\n\n\nDevelop and Production\n----------------------\n\nProduction\n~~~~~~~~~~\n\nIn production, you need to add media directory in you web server.\n\n\nDevelop\n~~~~~~~\n\nTo service the uploaded files need a helper function, where ``/media/`` your settings ``app.config['MEDIA_URL']``:\n\n.. code:: python\n\n from flask import send_from_directory\n\n @app.route('/media/')\n def media_file(filename):\n return send_from_directory(app.config['MEDIA_THUMBNAIL_FOLDER'], filename)\n\n\nOption settings\n---------------\n\nIf you want to store the thumbnail in a folder other than the ``MEDIA_FOLDER``, you need to set it manually:\n\n.. code:: python\n\n app.config['MEDIA_THUMBNAIL_FOLDER'] = '/home/www/media/cache'\n app.config['MEDIA_THUMBNAIL_URL'] = '/media/cache/'\n\n\nAcknowledgements\n----------------\n\nMuch of the code here is based on flask-thumbnails by Dmitriy Sokolov:\n\nhttps://github.com/silentsokolov/flask-thumbnails\n\nMany thanks to the author and contributors of flask-thumbnails, for the foundation of this codebase, and for the generous license terms that allow forks like this.", "description_content_type": null, "docs_url": null, "download_url": null, "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/Jaza/flask-thumbnails-s3", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "flask-thumbnails-s3", "package_url": "https://pypi.org/project/flask-thumbnails-s3/", "platform": "any", "project_url": "https://pypi.org/project/flask-thumbnails-s3/", "project_urls": { "Homepage": "https://github.com/Jaza/flask-thumbnails-s3" }, "release_url": "https://pypi.org/project/flask-thumbnails-s3/0.1.5/", "requires_dist": [ "Flask", "Pillow", "boto", "url-for-s3" ], "requires_python": null, "summary": "An extension to create image thumbnails on Amazon S3 (or on local storage) with the Flask framework, based on flask-thumbnails.", "version": "0.1.5" }, "last_serial": 1551221, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "8de517e8631f7fde001bbc7f58d5be38", "sha256": "efeba43c85a7336145eec3fff5b2c65300c0ef2d5b16a4f4d0abeea7ed91e598" }, "downloads": -1, "filename": "flask_thumbnails_s3-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8de517e8631f7fde001bbc7f58d5be38", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6960, "upload_time": "2015-04-09T06:34:36", "url": "https://files.pythonhosted.org/packages/59/a5/2534f5d0da5fe58b427e9dc6262089133d9ad02132af667d1ae0a0301689/flask_thumbnails_s3-0.1.0-py2.py3-none-any.whl" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "0a15711a9e26c7180a9adec5e35cfd1f", "sha256": "32000f0edc92bc31974ba4db514e80205d3920b4b46636ee9f2f5725873bb575" }, "downloads": -1, "filename": "flask_thumbnails_s3-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0a15711a9e26c7180a9adec5e35cfd1f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6964, "upload_time": "2015-04-09T06:40:25", "url": "https://files.pythonhosted.org/packages/65/16/3ccc2fe4783445e068ddfb8c57459b4ea59dd6b3e2684b4f7af3daa27a3c/flask_thumbnails_s3-0.1.1-py2.py3-none-any.whl" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "81aa98a9d89a339545ad4384d54fe2ad", "sha256": "9ba67f2ff424764339ca31be642c49a79f0016b35c664ddcafcbea65ccbb2748" }, "downloads": -1, "filename": "flask_thumbnails_s3-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "81aa98a9d89a339545ad4384d54fe2ad", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6965, "upload_time": "2015-04-09T06:42:45", "url": "https://files.pythonhosted.org/packages/65/fb/136274699acfedc0a342ca36b6157dfd47ed6797ca92669a6b61eccd52ea/flask_thumbnails_s3-0.1.2-py2.py3-none-any.whl" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "53c671720097f479f75ae2009cf6cd79", "sha256": "56c332cc22aa29fc4f5589df5cadaf4faa2cb64341a3ba01be0737a9929716bb" }, "downloads": -1, "filename": "flask_thumbnails_s3-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "53c671720097f479f75ae2009cf6cd79", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7073, "upload_time": "2015-04-09T23:39:06", "url": "https://files.pythonhosted.org/packages/8f/32/ddd3c3d0bbb6e1f90e88af6064e11f1c28d32fa9c319b944ab4ddc0715e7/flask_thumbnails_s3-0.1.3-py2.py3-none-any.whl" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "9e6b46f4f57f653fa3600260b7560715", "sha256": "918c59ffc5d080695fa108452e23ac52a4c7419302cd1a7d5587b0077edb6249" }, "downloads": -1, "filename": "flask_thumbnails_s3-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9e6b46f4f57f653fa3600260b7560715", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7100, "upload_time": "2015-04-09T23:47:37", "url": "https://files.pythonhosted.org/packages/21/49/a1df486b0f50fec6237e0c45add73f50729c7a89f587de757ecea60d64d0/flask_thumbnails_s3-0.1.4-py2.py3-none-any.whl" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "07b956ffe575915ff4b220bed6f40225", "sha256": "fbb5c3788d07977e632e6baf24e44d3a9f154ba156fa5e8966b61fde44cb2399" }, "downloads": -1, "filename": "flask_thumbnails_s3-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "07b956ffe575915ff4b220bed6f40225", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7272, "upload_time": "2015-05-18T06:16:38", "url": "https://files.pythonhosted.org/packages/35/9a/c37532b6eee4f33e462d215d18330e801588c63092ad806d5fe844214630/flask_thumbnails_s3-0.1.5-py2.py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "07b956ffe575915ff4b220bed6f40225", "sha256": "fbb5c3788d07977e632e6baf24e44d3a9f154ba156fa5e8966b61fde44cb2399" }, "downloads": -1, "filename": "flask_thumbnails_s3-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "07b956ffe575915ff4b220bed6f40225", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7272, "upload_time": "2015-05-18T06:16:38", "url": "https://files.pythonhosted.org/packages/35/9a/c37532b6eee4f33e462d215d18330e801588c63092ad806d5fe844214630/flask_thumbnails_s3-0.1.5-py2.py3-none-any.whl" } ] }