Code Monkey home page Code Monkey logo

djangocms-frontend's Introduction

django CMS Frontend

pypi Documentation Status coverage python django djangocms djangocms4

django CMS Frontend is a plugin bundle which builds on from & improves the architecture of djangocms-bootstrap4. Its objective is to provide a set of popular frontend components independent of the currently used frontend framework such as Bootstrap, or its specific version.

preview.png

Key features

  • Support of Bootstrap 5, django CMS 3 and 4.
  • Separation of plugins from css framework, i.e. no need to rebuild you site's plugin tree if css framework is changed in the future, e.g. from Bootstrap 5 to a future version.
  • New link plugin allowing to link to internal pages provided by other applications, such as djangocms-blog.
  • Nice and well-arranged admin frontend of djangocms-bootstrap4
  • A management command to migrate from djangocms-bootstrap4. This command automatically migrates all djangocms-bootstrap4 plugins to djangocms-frontend.
  • Extensible within the project and with separate project (e.g. a theme app)
  • Accordion plugin

Description

The plugins are framework agnostic and the framework can be changed by adapting your project's settings. Also, it is designed to avoid having to rebuild your CMS plugin tree when upgrading e.g. from one version of your frontend framework to the next.

django CMS Frontend uses django-entangled by Jacob Rief to avoid bloating your project's database with css framework-dependent tables. Instead all design parameters are stored in a common JSON field and future releases of improved frontend features will not require to rebuild your full plugin tree.

The link plugin has been rewritten to not only allow internal links to other CMS pages, but also to other django models such as, e.g., posts of djangocms-blog.

Feedback

This project is in a early stage. All feedback is welcome! Please mail me at fsbraun(at)gmx.de

Also, all contributions are welcome.

Contributing

This is a an open-source project. We'll be delighted to receive your feedback in the form of issues and pull requests. Before submitting your pull request, please review our contribution guidelines.

We're grateful to all contributors who have helped create and maintain this package. Contributors are listed at the contributors section.

One of the easiest contributions you can make is helping to translate this addon on Transifex.

Requirements

See REQUIREMENTS in the setup.py file for additional dependencies:

  • django-cms, version 3.7 or later
  • django-filer, version 1.7 or later
  • djangocms-attributes-field, version 1.0 or later
  • djangocms-text-ckeditor, version 3.1 or later
  • django-select2
  • django-entangled

Make sure django Filer and django CMS Text CKEditor are installed and configured appropriately.

Installation

For a manual install:

  • run pip install djangocms-frontend

  • add the following entries to your INSTALLED_APPS:

    'easy_thumbnails',
    'djangocms_frontend',
    'djangocms_frontend.contrib.accordion',
    'djangocms_frontend.contrib.alert',
    'djangocms_frontend.contrib.badge',
    'djangocms_frontend.contrib.card',
    'djangocms_frontend.contrib.carousel',
    'djangocms_frontend.contrib.collapse',
    'djangocms_frontend.contrib.content',
    'djangocms_frontend.contrib.grid',
    'djangocms_frontend.contrib.image',
    'djangocms_frontend.contrib.jumbotron',
    'djangocms_frontend.contrib.link',
    'djangocms_frontend.contrib.listgroup',
    'djangocms_frontend.contrib.media',
    'djangocms_frontend.contrib.tabs',
    'djangocms_frontend.contrib.utilities',
    
  • run python manage.py migrate

If you use Django < 3.2 please also add django-jsonfield-backport to your requirements.txt and django_jsonfield_backport to your INSTALLED_APPS list.

djangocms-frontend has a weak dependencies on djangocms-icon you can install separately or by adding an option:

pip install djangocms-frontend[djangocms-icon]  # Installs djangocms-icon for icon support in links

Documentation

See readthedocs for the documentation.

djangocms-frontend's People

Contributors

alexbarcelo avatar antwertinger avatar atterratio avatar christianbertschy avatar corentinbettiol avatar czpython avatar electroniceagle avatar filwaitman avatar finalangel avatar flycal6 avatar fsbraun avatar garetjax avatar gl-agnx avatar joeyjurjens avatar johnfraney avatar jsma avatar julianjm avatar lionardo avatar lioshi avatar lory87 avatar marksweb avatar mikek avatar mkoistinen avatar mvaerle avatar paramono avatar pre-commit-ci[bot] avatar sq9mev avatar stefanfoulis avatar vthaian avatar vxsx avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.