|
4 | 4 |
|
5 | 5 | |pypi| |docs| |coverage| |python| |django| |djangocms| |djangocms4| |
6 | 6 |
|
7 | | -**django CMS Frontend** is a powerful plugin suite designed to streamline the |
8 | | -integration of frontend frameworks into django CMS. Out of the box, it provides |
9 | | -comprehensive support for Bootstrap 5, while also enabling the use of other |
10 | | -CSS frameworks, such as Tailwind CSS, through custom components. |
11 | | -Whether you're building responsive layouts or highly customized designs, |
12 | | -django CMS Frontend is designed to simplify your development workflow. |
| 7 | +django CMS Frontend is a versatile plugin suite for django CMS that facilitates |
| 8 | +the easy creation of reusable frontend components. It supports any CSS framework, |
| 9 | +allowing developers to seamlessly integrate their preferred styling libraries. |
| 10 | +For immediate use, it includes a comprehensive set of Bootstrap 5 components |
| 11 | +and templates. |
| 12 | + |
13 | 13 |
|
14 | 14 | .. image:: preview.png |
15 | 15 |
|
16 | 16 | Key features |
17 | 17 | ============ |
18 | 18 |
|
19 | | -- **Easy to implement re-usable frontend custom components**, which in the |
20 | | - simplest case consist of a template and declarative sort of form class. |
21 | | - |
22 | | -- Support of `Bootstrap 5 <https://getbootstrap.com>`_, django CMS 3.8+ |
23 | | - and django CMS 4 out of the box. |
| 19 | +* **Effortless Development of Custom Components**: Create reusable frontend |
| 20 | + components with ease, utilizing simple templates and declarative form |
| 21 | + classes. These components can function both as CMS plugins and within |
| 22 | + standard Django templates. |
24 | 23 |
|
25 | | -- Support of other frameworks such as `Tailwind CSS <https://tailwindcss.com>`_ |
26 | | - through custom components. |
| 24 | +* **Framework-Agnostic Design**: Maintain flexibility in your project's design |
| 25 | + by decoupling plugins from specific versions of a CSS framework. This ensures |
| 26 | + that updating frameworks in the future doesn't necessitate rebuilding your |
| 27 | + site's plugin structure. |
27 | 28 |
|
28 | | -- **Separation of plugins from css framework**, i.e. no need to |
29 | | - rebuild you site's plugin tree if css framework is changed in the |
30 | | - future, e.g. from Bootstrap 5 to a future version. |
| 29 | +* **Pre-Integrated Bootstrap 5 Components**: Access a ready-to-use collection |
| 30 | + of Bootstrap 5 components, streamlining the process of building responsive |
| 31 | + and modern interfaces. |
31 | 32 |
|
32 | | -- **Plugins are re-usable as UI components** anywhere in your project |
33 | | - (e.g. in a custom app) giving your whole project a more consistent |
34 | | - user experience. |
35 | | - |
36 | | -- **Extensible** within the project and with separate project (e.g. a |
37 | | - theme app). Create your own components with a few lines of code only. |
| 33 | +* **Extensibility**: Enhance your project by creating custom components with |
| 34 | + minimal code. The system is designed to be extended both within individual |
| 35 | + projects and through separate theme applications. |
38 | 36 |
|
| 37 | +* **Consistent User Experience**: Utilize plugins as UI components throughout |
| 38 | + your project, promoting a cohesive and uniform user interface. |
39 | 39 |
|
40 | 40 |
|
41 | 41 | Description |
42 | 42 | =========== |
43 | | -django CMS Frontend is framework agnostic but comes with support of selected |
44 | | -components of Bootstrap 5. Components can have different templates for different |
45 | | -frameworks and the preferred framework can be set in the project settings. |
46 | 43 |
|
47 | | -It is up to you which (if any at all) components you want to include in your |
48 | | -project. Each set of components is a separate package you can include in your |
49 | | -project's ``INSTALLED_APPS``. |
| 44 | +Designed to be framework-agnostic, django CMS Frontend allows developers to |
| 45 | +select and change CSS frameworks by adjusting project settings, eliminating |
| 46 | +the need to reconstruct the CMS plugin tree when upgrading or switching |
| 47 | +frameworks. It leverages `django-entangled |
| 48 | +<https://github.com/jrief/django-entangled>`_ to store design parameters in |
| 49 | +a common JSON field, preventing database bloat and facilitating seamless |
| 50 | +updates to frontend features. |
50 | 51 |
|
51 | | -The components are designed to be re-usable as UI components in your |
52 | | -project, e.g. in a custom app, giving your whole project a more |
53 | | -consistent user experience. |
| 52 | +By providing a suite of Bootstrap 5-based components for layout structuring, |
| 53 | +including grids, components, and forms, django CMS Frontend simplifies the |
| 54 | +process of building responsive and structured page designs. Developers can |
| 55 | +also create custom components with minimal code, ensuring a consistent and |
| 56 | +efficient development experience. |
54 | 57 |
|
55 | | -django CMS Frontend uses `django-entangled |
56 | | -<https://github.com/jrief/django-entangled>`_ by Jacob Rief to avoid |
57 | | -bloating your project's database with css framework-dependent tables. |
58 | | -Instead all design parameters are stored in a common JSON field and |
59 | | -future releases of improved frontend features will not require to |
60 | | -rebuild your full plugin tree. |
| 58 | +It is up to you which (if any at all) pre-built components you want to include |
| 59 | +in your project. Each set of components is a separate package you can include |
| 60 | +in your project's ``INSTALLED_APPS``. |
61 | 61 |
|
62 | 62 |
|
63 | 63 | Contributing |
@@ -116,6 +116,7 @@ For a manual install: |
116 | 116 | .. code:: |
117 | 117 |
|
118 | 118 | 'easy_thumbnails', |
| 119 | + 'djangocms_link', # Needed for link support |
119 | 120 | 'djangocms_frontend', |
120 | 121 | 'djangocms_frontend.contrib.accordion', # optional |
121 | 122 | 'djangocms_frontend.contrib.alert', # optional |
@@ -144,7 +145,6 @@ install separately or by adding an option: |
144 | 145 | pip install djangocms-frontend[djangocms-icon] # Installs djangocms-icon for icon support in links |
145 | 146 |
|
146 | 147 |
|
147 | | -
|
148 | 148 | Documentation |
149 | 149 | ============= |
150 | 150 |
|
@@ -174,5 +174,5 @@ See `LICENSE <https://github.com/django-cms/djangocms-frontend/blob/master/LICEN |
174 | 174 | .. |djangocms| image:: https://img.shields.io/badge/django%20CMS-3.8%2B-blue.svg |
175 | 175 | :target: https://www.django-cms.org/ |
176 | 176 |
|
177 | | -.. |djangocms4| image:: https://img.shields.io/badge/django%20CMS-4-blue.svg |
| 177 | +.. |djangocms4| image:: https://img.shields.io/badge/django%20CMS-4%2B-blue.svg |
178 | 178 | :target: https://www.django-cms.org/en/preview-django-cms-40/ |
0 commit comments