{ "info": { "author": "Tim Allen", "author_email": "tallen@wharton.upenn.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "# Wagtail Content Stream\n\nAn abstract Django model with a Wagtail StreamField named `body` with multiple blocks I use on a regular basis. It's opinioned: very little HTML is allowed in the text block, forcing authors to create structured data. The following blocks are included in the StreamBlock, `ContentStreamBlock`:\n\n* Heading\n* Paragraph\n* Captioned Image\n* Embed\n* Table\n* Code Block\n\nA secondary StreamBlock, `ContentStreamBlockWithRawCode`, also provides an additional block for injecting HTML, JS, and CSS code. Use with care, as this can really blow up your markup and is a potential code injection point!\n\nThree pages types are provided out-of-the-box.\n\n## Example Usage\n\nYou will need to add `wagtailcodeblock` to your `INSTALLED_APPS` Django setting.\n\n#### Basic Usage: a Title Field and Content Stream\n\nFirst, create a page type in your `models.py`:\n\n```python\nfrom wagtailcontentstream.models import ContentStreamPage, SectionContentStreamPage, ContentStreamPageWithRawCode\n\nclass StandardPage(ContentStreamPage):\n pass\n\nclass SectionStandardPage(SectionContentStreamPage):\n pass\n\nclass StandardPageWithRawCode(ContentStreamPageWithRawCode):\n pass\n```\n\nThen in your template:\n\n```django\n{% load wagtailcore_tags %}\n\n

{{ page.title }}

\n{% include_block page.body %}\n```\n\n#### Extended Usage: Adding More Fields\n\n```python\nfrom django.conf import settings\nfrom django.db import models\nfrom wagtail.wagtailadmin.edit_handlers import FieldPanel\nfrom wagtailcontentstream.models import ContentStreamPage\n\n\nclass StandardPage(ContentStreamPage):\n date = models.DateField(\"Post Date\")\n authors = models.ManyToManyField(settings.AUTH_USER_MODEL)\n\n content_panels = [\n FieldPanel('date'),\n FieldPanel('authors'),\n ] + ContentStreamPage.content_panels\n```\n\n# Change Log\n\n## 0.4\n\n* Added ContentStreamPageWithRawCode and ContentStreamBlockWithRawCode for injecting raw code into pages.\n\n## 0.3\n\n* Wagtail 2.0 compatibility.\n\n## 0.3.1\n\n* Add support for alignment and credit of CaptionedImageBlock.\n\n## 0.2\n\n* Add a StreamBlock with sections.\n\n## 0.2.1\n\n* Help text and a bug fix for Section StreamBlocks.\n\n## 0.2.2\n\n* Improve block templates.\n\n## 0.2.3\n\n* Add Documents as a block type.\n\n# 0.1\n\n* Initial release.\n\n# Contributors\n\n* Timothy Allen (https://github.com/FlipperPA)\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/FlipperPA/wagtailcontentstream", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "wagtailcontentstream", "package_url": "https://pypi.org/project/wagtailcontentstream/", "platform": "", "project_url": "https://pypi.org/project/wagtailcontentstream/", "project_urls": { "Homepage": "https://github.com/FlipperPA/wagtailcontentstream" }, "release_url": "https://pypi.org/project/wagtailcontentstream/0.4.0/", "requires_dist": [ "wagtail (>=1.8)", "wagtailcodeblock (>=1.14.0.0)" ], "requires_python": "", "summary": "Wagtail Content Stream provides a StreamField of standard content types.", "version": "0.4.0" }, "last_serial": 3892415, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "3c404d20b9e407eb70d12b2704e9007d", "sha256": "14926ef06e0a8cd45323d1418bee055efe6b05359d3c14dad3c5813ee9a4ebd9" }, "downloads": -1, "filename": "wagtailcontentstream-0.1.0.tar.gz", "has_sig": false, "md5_digest": "3c404d20b9e407eb70d12b2704e9007d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2274, "upload_time": "2017-08-06T16:35:04", "url": "https://files.pythonhosted.org/packages/44/c9/971ff556ee5663a0d21162d90c9e95f535856c884f0ceb1aab776856d9f3/wagtailcontentstream-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "807fe752da839e0a44cab3a375d3f46e", "sha256": "4d904c38ecdafac18271f1b8561bcd43f2c2625afff5c05a12dc10d872194854" }, "downloads": -1, "filename": "wagtailcontentstream-0.1.1.tar.gz", "has_sig": false, "md5_digest": "807fe752da839e0a44cab3a375d3f46e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2318, "upload_time": "2017-08-27T16:05:40", "url": "https://files.pythonhosted.org/packages/27/c2/6046ffc2f26dd0c407da02596e829a12d5f46f9c9e7073cc41e65515e3b9/wagtailcontentstream-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "2f4fc9d0ed48f71b840e103ad5b091a6", "sha256": "8e0c44e60acb948dddc154b84bc0d91ace473e99fed022510ecca7e6cab78519" }, "downloads": -1, "filename": "wagtailcontentstream-0.1.2.tar.gz", "has_sig": false, "md5_digest": "2f4fc9d0ed48f71b840e103ad5b091a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2321, "upload_time": "2017-08-28T17:38:08", "url": "https://files.pythonhosted.org/packages/90/99/24850e2bbc7be00647977004669da3258af50a94d50c9b746e3fb0d694b2/wagtailcontentstream-0.1.2.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "ec603ca19ecc38d0a9038ab37ff85178", "sha256": "3a45f82cd124b7407febc7825099ede0dc802ed69862c1aba4b02c5b9f8b10cb" }, "downloads": -1, "filename": "wagtailcontentstream-0.1.4.tar.gz", "has_sig": false, "md5_digest": "ec603ca19ecc38d0a9038ab37ff85178", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2616, "upload_time": "2017-09-22T18:33:03", "url": "https://files.pythonhosted.org/packages/69/dc/6fb1ce56da8b49dbd7c8070cb6a5174ebda9056438f690c5a9732c73d8c2/wagtailcontentstream-0.1.4.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "e1aa3453c360830afb825bdd0af18310", "sha256": "e997237e47ccdbc7001e7e7f80033031e0cd86dbc437a2dde07247cdc94b819b" }, "downloads": -1, "filename": "wagtailcontentstream-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e1aa3453c360830afb825bdd0af18310", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4820, "upload_time": "2017-10-29T00:50:49", "url": "https://files.pythonhosted.org/packages/ee/24/9f2d3aba87b3e3f5853af116525ba0060ec5b618287829f33d30b610f0fe/wagtailcontentstream-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "625c808110fa13397ba472555899be9c", "sha256": "2961502de1dcc8f6b25ca2eca2922891ef0965e574cb67dafd724eb6a287096d" }, "downloads": -1, "filename": "wagtailcontentstream-0.2.0.tar.gz", "has_sig": false, "md5_digest": "625c808110fa13397ba472555899be9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2852, "upload_time": "2017-10-29T00:50:50", "url": "https://files.pythonhosted.org/packages/dc/15/46320820f2825640fe7a9c5b9ed9ddbe7e5e346ee4a89ee609be06bc09c4/wagtailcontentstream-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "1a56052c997f460d5f0eb188082420cd", "sha256": "e5c3e0ab4b2d44491b6c07918a9ba334aa88a7c9234e6007aa2e9c0ec924dc3a" }, "downloads": -1, "filename": "wagtailcontentstream-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "1a56052c997f460d5f0eb188082420cd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4825, "upload_time": "2017-11-02T18:38:13", "url": "https://files.pythonhosted.org/packages/18/13/e7a5a5db003a1914f435deaf422cfacb349da8653e36c3fed87c9c28cb04/wagtailcontentstream-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e86218fc95f768fb1082b3c2030edae5", "sha256": "eec0d963f12e4a92298687e8c0779d7fe55f81b705de2e2a5ebd4840df1fb613" }, "downloads": -1, "filename": "wagtailcontentstream-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e86218fc95f768fb1082b3c2030edae5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2930, "upload_time": "2017-11-02T18:38:14", "url": "https://files.pythonhosted.org/packages/db/10/96672ca28e7dc483e157aea7dd05098490daec522d602a4a3221aff7b7a3/wagtailcontentstream-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "0e685af03d82976f7ad2a088bf790f10", "sha256": "c9f83ba708edb725f6d649f646e2ea961f6c019bed1dfa5ddc92e97fcd7bb134" }, "downloads": -1, "filename": "wagtailcontentstream-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "0e685af03d82976f7ad2a088bf790f10", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5168, "upload_time": "2017-11-02T21:05:18", "url": "https://files.pythonhosted.org/packages/cf/8e/e3fb5ff7400b90766af6a25d7fa0dc981cc8938480dca44c45c37e68dc67/wagtailcontentstream-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8abd57cc46d5bf8f2e6486bd63ad3bee", "sha256": "9d6339f9b162d2856d8836dbad82206ccf4244770e66f65b6fdbd49aa18c7135" }, "downloads": -1, "filename": "wagtailcontentstream-0.2.2.tar.gz", "has_sig": false, "md5_digest": "8abd57cc46d5bf8f2e6486bd63ad3bee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2951, "upload_time": "2017-11-02T21:05:19", "url": "https://files.pythonhosted.org/packages/3c/02/e11d6acdd89d22bb6a01ae2153691a6083189d9147b8f343503cc756738c/wagtailcontentstream-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "3227aba3576566dbc10db91d74dfcad5", "sha256": "0197dd81fe0c26b89a733a705dadfda6d220b9ba15565857375ae1660512d88c" }, "downloads": -1, "filename": "wagtailcontentstream-0.2.3-py3-none-any.whl", "has_sig": false, "md5_digest": "3227aba3576566dbc10db91d74dfcad5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4875, "upload_time": "2017-11-11T18:47:50", "url": "https://files.pythonhosted.org/packages/d4/3d/b956bee0274b4acdbe2672915e95d6d50dff9217f2421cdf2c30ce4d2443/wagtailcontentstream-0.2.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "48ebaae0f1070f6bea9fd55134b7ee16", "sha256": "50ca04f35d9494294368b4847c9bf810c336644c5cbea38e0aea64c871419153" }, "downloads": -1, "filename": "wagtailcontentstream-0.2.3.tar.gz", "has_sig": false, "md5_digest": "48ebaae0f1070f6bea9fd55134b7ee16", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2968, "upload_time": "2017-11-11T18:47:51", "url": "https://files.pythonhosted.org/packages/07/30/659b29c54a0b87921e782ebe428ccda221960c8dfeb9625c1904ea023e55/wagtailcontentstream-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "20a1362675fd5dddd5a54759a3344fb7", "sha256": "ac746faa241123fa57947ebc5f199693d70b97546a16cae6e9330e95b4569b9b" }, "downloads": -1, "filename": "wagtailcontentstream-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "20a1362675fd5dddd5a54759a3344fb7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5007, "upload_time": "2017-12-16T15:09:06", "url": "https://files.pythonhosted.org/packages/bf/96/e5cf8c7a45f96f7fbc64dd34d65ee339f97f84ff387c64756c817933e4dd/wagtailcontentstream-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9885d201ce73da3ee85c89c76c2cfef9", "sha256": "c6293bf2f9932c366378c7a4f197143b734fc0a3008df85741a4247696296c4a" }, "downloads": -1, "filename": "wagtailcontentstream-0.3.0.tar.gz", "has_sig": false, "md5_digest": "9885d201ce73da3ee85c89c76c2cfef9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3155, "upload_time": "2017-12-16T15:09:07", "url": "https://files.pythonhosted.org/packages/b5/b7/be2debf0da2b59624b112128185ead4f035cd9fede70e60b5e6b7f65cd87/wagtailcontentstream-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "3b237cfefa2a0eafe821645a7ffc6821", "sha256": "cce374beaec788de4d8433f3d9c8bc293d352e0845cd1913d9fa580a6a0de882" }, "downloads": -1, "filename": "wagtailcontentstream-0.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "3b237cfefa2a0eafe821645a7ffc6821", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5309, "upload_time": "2017-12-30T19:00:00", "url": "https://files.pythonhosted.org/packages/80/76/76adf19dde486f8e21dc5d7285910baa47c91202c1392ebc42abeac209ff/wagtailcontentstream-0.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "75df817aad1c850c7d7c2cca4908cf11", "sha256": "a7511be015ab9564c196fee704f477f857a020015c70b8df8f9da9884cfefac9" }, "downloads": -1, "filename": "wagtailcontentstream-0.3.1.tar.gz", "has_sig": false, "md5_digest": "75df817aad1c850c7d7c2cca4908cf11", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3465, "upload_time": "2017-12-30T19:00:02", "url": "https://files.pythonhosted.org/packages/3b/7b/34c0071b316caae068d59391c05d7dbdfea9d1f09d1b61986cf57c7ab35c/wagtailcontentstream-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "40ae62acddc4208a908ff71fdb333cb7", "sha256": "581554ecdb6145293a483cef56d33ad82461a684c1a4dbec03f6808ea7153dc7" }, "downloads": -1, "filename": "wagtailcontentstream-0.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "40ae62acddc4208a908ff71fdb333cb7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6063, "upload_time": "2018-03-07T15:49:46", "url": "https://files.pythonhosted.org/packages/d3/be/15335094b4624b98527bb22f49b37de79d34099ce2bfdecb52b55745fb83/wagtailcontentstream-0.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ef4f054270fb0a7f8459d1a46eb86c99", "sha256": "d0da7122d2492c4103bc61dd7ba6db02eec39d67633d0fbcd720b7e980ba94dd" }, "downloads": -1, "filename": "wagtailcontentstream-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ef4f054270fb0a7f8459d1a46eb86c99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4064, "upload_time": "2018-03-07T15:49:47", "url": "https://files.pythonhosted.org/packages/cb/bf/f5217fda4e59f88657d5e9728d211b3f41ccc1610e320bdb60a1155f8bb4/wagtailcontentstream-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "9e8596673d2f326551a36f012d6531e0", "sha256": "ce059cacb43051d5d6e3c14fc4cafdf46aec7fc53154b23b23356b2f26c5b179" }, "downloads": -1, "filename": "wagtailcontentstream-0.3.3-py3-none-any.whl", "has_sig": false, "md5_digest": "9e8596673d2f326551a36f012d6531e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6124, "upload_time": "2018-03-08T20:51:42", "url": "https://files.pythonhosted.org/packages/29/8f/8221ccf928a480ab902935fc108b08f2ff02d9fa9096432c9e0d8a498e7e/wagtailcontentstream-0.3.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f53809a6fd10eb6df7d8ceca49ad725f", "sha256": "f282fef4596a33e1050657e84d63728eab887de76c1e5b85f173e9af75ad57c9" }, "downloads": -1, "filename": "wagtailcontentstream-0.3.3.tar.gz", "has_sig": false, "md5_digest": "f53809a6fd10eb6df7d8ceca49ad725f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4086, "upload_time": "2018-03-08T20:51:43", "url": "https://files.pythonhosted.org/packages/49/1d/3a71c38802e7f60a01b9d0f7f9a1da73e30c33c44efcdc794451752c8e9b/wagtailcontentstream-0.3.3.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "cdc00b52dd8f1dfcc4a30d2366d87805", "sha256": "645a242218c85c89e9c846c47c0e0769f09e1d004551c4ad6e6825c90a278396" }, "downloads": -1, "filename": "wagtailcontentstream-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "cdc00b52dd8f1dfcc4a30d2366d87805", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6104, "upload_time": "2018-05-23T19:02:04", "url": "https://files.pythonhosted.org/packages/97/fe/4cfe61b8fda845afc7f4f7c995dd36ea0bb83cc474bdb85383e6038bf299/wagtailcontentstream-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "310ec19890898a7293cbb6984775163e", "sha256": "17812d563657d815e5db780b10dd3cb75df3af28f17f74dd91057bdbd96b2f66" }, "downloads": -1, "filename": "wagtailcontentstream-0.4.0.tar.gz", "has_sig": false, "md5_digest": "310ec19890898a7293cbb6984775163e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4570, "upload_time": "2018-05-23T19:02:05", "url": "https://files.pythonhosted.org/packages/4c/76/2fe154f21037d5e1405bd838425cad1745185b6e86351e7c4a82a860636e/wagtailcontentstream-0.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cdc00b52dd8f1dfcc4a30d2366d87805", "sha256": "645a242218c85c89e9c846c47c0e0769f09e1d004551c4ad6e6825c90a278396" }, "downloads": -1, "filename": "wagtailcontentstream-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "cdc00b52dd8f1dfcc4a30d2366d87805", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6104, "upload_time": "2018-05-23T19:02:04", "url": "https://files.pythonhosted.org/packages/97/fe/4cfe61b8fda845afc7f4f7c995dd36ea0bb83cc474bdb85383e6038bf299/wagtailcontentstream-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "310ec19890898a7293cbb6984775163e", "sha256": "17812d563657d815e5db780b10dd3cb75df3af28f17f74dd91057bdbd96b2f66" }, "downloads": -1, "filename": "wagtailcontentstream-0.4.0.tar.gz", "has_sig": false, "md5_digest": "310ec19890898a7293cbb6984775163e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4570, "upload_time": "2018-05-23T19:02:05", "url": "https://files.pythonhosted.org/packages/4c/76/2fe154f21037d5e1405bd838425cad1745185b6e86351e7c4a82a860636e/wagtailcontentstream-0.4.0.tar.gz" } ] }