{"id":29593811,"url":"https://github.com/django-cms/djangocms-stories","last_synced_at":"2026-04-29T15:01:50.999Z","repository":{"id":300008861,"uuid":"1004903481","full_name":"django-cms/djangocms-stories","owner":"django-cms","description":"django CMS stories application - Tell your story in multilingual posts, using the full power of django CMS placeholders.","archived":false,"fork":false,"pushed_at":"2026-04-28T19:59:10.000Z","size":663,"stargazers_count":17,"open_issues_count":12,"forks_count":7,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-28T21:08:05.585Z","etag":null,"topics":["blogging","django","django-cms"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/django-cms.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":"docs/contributing.rst","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-06-19T11:05:17.000Z","updated_at":"2026-04-28T19:47:20.000Z","dependencies_parsed_at":"2025-07-19T00:26:32.294Z","dependency_job_id":"5ad01460-5fb2-4277-a315-8d0e904fdc70","html_url":"https://github.com/django-cms/djangocms-stories","commit_stats":null,"previous_names":["fsbraun/djangocms-stories","django-cms/djangocms-stories"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/django-cms/djangocms-stories","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/django-cms%2Fdjangocms-stories","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/django-cms%2Fdjangocms-stories/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/django-cms%2Fdjangocms-stories/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/django-cms%2Fdjangocms-stories/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/django-cms","download_url":"https://codeload.github.com/django-cms/djangocms-stories/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/django-cms%2Fdjangocms-stories/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32430803,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-29T13:34:34.882Z","status":"ssl_error","status_checked_at":"2026-04-29T13:34:29.830Z","response_time":110,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blogging","django","django-cms"],"created_at":"2025-07-20T07:38:34.404Z","updated_at":"2026-04-29T15:01:50.993Z","avatar_url":"https://github.com/django-cms.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"=================\ndjangocms-stories\n=================\n\n|PyPiVersion| |TestCoverage| |PyVersion| |DjVersion| |CmsVersion|\n\n**django CMS stories application - Tell your story in multilingual posts, using the full\npower of django CMS placeholders.**\n\ndjangocms-stories provides a lean foundation for storytelling that can be composed with\nother specialized django CMS applications, such as djangocms-versioning or djangocms-moderation.\n\n********\nFeatures\n********\n\n* Frontend editing using django CMS frontend editor\n* Placeholder or optionally simpler TextField-based content editing\n* Multilingual support using django-parler\n* Multisite (posts can be visible in one or more Django sites on the same project)\n* Hooks into your page tree anywhere\n* Configurable permalinks, user navigation, template sets, ...\n* Multiple instaces per site (e.g., blog, news, stories)\n* Django sitemap framework\n* django CMS Wizard integration\n* Supports djangocms-versioning and djangocms-moderation\n\n************\nInstallation\n************\n\nTo install the latest version directly from GitHub, run:\n\n.. code-block:: bash\n\n    pip install djangocms-stories djangocms-text\n\nAdd ``djangocms_stories`` and ``djangocms_text`` to your ``INSTALLED_APPS`` in your Django project's ``settings.py``:\n\n.. code-block:: python\n\n    INSTALLED_APPS = [\n        # ...\n        'djangocms_text',  # required\n        'djangocms_stories',\n        'parler',  # if not already included\n        'sortedm2m',  # if not already included\n\n        # For now, but probably not needed in the future\n        'taggit',\n        'taggit_autosuggest',\n        'meta',\n        # ...\n    ]\n\nTo use taggit's autosuggest feature, add their URLS in ``urls.py``:\n\n.. code-block:: python\n\n    urlpatterns += [path('taggit_autosuggest/', include('taggit_autosuggest.urls'))]\n\n\n\n*****************************\nMigrating from djangocms-blog\n*****************************\n\nMigrate from djangocms-blog by following the steps below. There is test coverage for the migration\nprocess - nevertheless be sure to backup your database before proceeding.\n\n1. Uninstall djangocsms-blog: ``pip uninstall djangocms-blog``\n2. Install djangocms-stories ``pip install djangocms-stories``\n3. Add ``\"djangocms_stories\"`` to your installed apps. Do **not** remove djangocms-blog.\n4. Run ``./manage.py migrate djangocms_stories``. This in migration 0002 will move existing content\n   from djangocms-blog to djangocms-stories and delete djangocms-blogs database tables.\n5. Remove ``\"djangocms_blog\"`` from your installed apps.\n6. To be on the safe side, check that the app hooks in the advanced settings your blog pages have been\n   updated.\n\n**Custom templates will need manual updating**, since the underlying model structure has changed:\n\n* ``post`` contains the following fields: ``related``, ``main_image``, ``author``, ``date``, ``categories``, ``tags``\n* ``post_content`` contiains the following per-language fields:\n  ``title``, ``subtitle``, ``slug``, ``content``, ``media``, and ``post``, the reference\n  to the ``Post`` object.\n\nSome **improvements for developers** are included:\n\n* You now can use the ``{% placeholder %}`` template tag in the post_detail.html template to render\n  any placeholder. ``{% render_placeholder post_content.content %}`` and ``{% render_placeholder post_content.media %}``\n  are still available, but you can now use ``{% placeholder \"new_content\" %}`` to, say, add additional placeholders.\n\n\n************\nContributing\n************\n\nBecause this is a an open-source project, we welcome everyone to\n`get involved in the project \u003chttps://www.django-cms.org/en/contribute/\u003e`_ and\n`receive a reward \u003chttps://www.django-cms.org/en/bounty-program/\u003e`_ for their contribution.\nBecome part of a fantastic community and help us make django CMS the best CMS in the world.\n\nWe'll be delighted to receive your\nfeedback in the form of issues and pull requests. Before submitting your\npull request, please review our `contribution guidelines\n\u003chttp://docs.django-cms.org/en/latest/contributing/index.html\u003e`_.\n\nThe project makes use of git pre-commit hooks to maintain code quality.\nPlease follow the installation steps to get `pre-commit \u003chttps://pre-commit.com/#installation\u003e`_\nsetup in your development environment.\n\nWe're grateful to all contributors who have helped create and maintain\nthis package. Contributors are listed at the `contributors\n\u003chttps://github.com/django-cms/djangocms-stories/graphs/contributors\u003e`_\nsection.\n\nOne of the easiest contributions you can make is helping to translate this addon on\n`Transifex \u003chttps://www.transifex.com/divio/djangocms-stories/dashboard/\u003e`_.\n\n*******\nCredits\n*******\n\ndjangocms-stories is inspired by `Nephila's \u003chttps://github.com/nephila\u003e`_ excellent\n`djangocms-blog \u003chttps://github.com/nephila/djangocms-blog\u003e`_, with the intent to bring\nto align it with django CMS's new philosophy since version 4: \"The design philosophy of\ndjango CMS is to solve something complex with many simple things.\"\n\n.. |PyPiVersion| image:: https://img.shields.io/pypi/v/djangocms-stories.svg?style=flat-square\n    :target: https://pypi.python.org/pypi/djangocms-stories\n    :alt: Latest PyPI version\n\n.. |PyVersion| image:: https://img.shields.io/pypi/pyversions/djangocms-stories.svg?style=flat-square\n    :target: https://pypi.python.org/pypi/djangocms-stories\n    :alt: Python versions\n\n.. |DjVersion| image:: https://img.shields.io/pypi/frameworkversions/django/djangocms-stories.svg?style=flat-square\n    :target: https://pypi.python.org/pypi/djangocms-stories\n    :alt: Django versions\n\n.. |CmsVersion| image:: https://img.shields.io/pypi/frameworkversions/django-cms/djangocms-stories.svg?style=flat-square\n    :target: https://pypi.python.org/pypi/djangocms-stories\n    :alt: django CMS versions\n\n.. |TestCoverage| image:: https://codecov.io/gh/django-cms/djangocms-stories/graph/badge.svg?token=O64yNt6pgo\n    :target: https://codecov.io/gh/django-cms/djangocms-stories\n    :alt: Test coverage\n\n.. |License| image:: https://img.shields.io/github/license/django-cms/djangocms-stories.svg?style=flat-square\n   :target: https://pypi.python.org/pypi/djangocms-stories/\n    :alt: License\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjango-cms%2Fdjangocms-stories","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdjango-cms%2Fdjangocms-stories","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjango-cms%2Fdjangocms-stories/lists"}