Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/srijanone/ezcontent-decoupled
Decoupled in Next.js for EZContent.
https://github.com/srijanone/ezcontent-decoupled
Last synced: 3 days ago
JSON representation
Decoupled in Next.js for EZContent.
- Host: GitHub
- URL: https://github.com/srijanone/ezcontent-decoupled
- Owner: srijanone
- License: mit
- Created: 2020-06-02T10:24:12.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-05-20T21:06:58.000Z (6 months ago)
- Last Synced: 2024-05-20T23:56:07.888Z (6 months ago)
- Language: JavaScript
- Homepage: https://ezcontent.srijan.net
- Size: 2.78 MB
- Stars: 6
- Watchers: 10
- Forks: 10
- Open Issues: 51
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# About EZContent
EZContent Open Source, full-featured Drupal Distribution with many content management features out of the box, including rich content, content staging and AI/ML assisted workflowsCreate and Publish content easily
Build an SEO friendly, structured content model using flexible fields, meta tags, scheme.org and large library of components (rich text, multimedia etc).
Powerful Landing Page Builder
Editors can create page layouts on the fly, without dependency on developers. With the layout builder, editors can drag and drop reusable components onto pages.
Decoupled CMS and API Ready
Retain non-negotiable CMS features such as drag & drop page builder and content preview even in a de-coupled CMS implementation.
AI powered content generation
Be one step ahead with AI and ML-based auto-tagging, content generation, and personalized content.
## Prerequisite
If you are running the EzContent Drupal distribution and the NextJS starter kit on your local system, make sure you create a Virtual Host for your Drupal application and add the host URL as environment variable in NextJS side (as API_HOST).
## Getting Started/Setup
EZContent and EZContent API should be installed/setup to make this decoupled code working.
If you have EZContent already up and running, then follow these steps.
1. Get this codebase
```bash
git clone [email protected]:srijanone/ezcontent-decoupled.git
```
2. Install NPM dependencies
```bash
npm install
```
3. Copy `.env.example` file and name it `.env`
```bash
cp .env.example .env
```4. Add environment variables in `.env` file
```bash
API_HOST= # EZContent's base URL# Below variables are also required
# To get the JSON data for 'Layout Builder' and menu's
AUTH_USERNAME= # Drupal user (make sure this user has permission to get menu's, manage layout)
AUTH_PASSWORD= # Drupal user password
CLIENT_ID= # Drupal Simple Oauth client id
CLIENT_SECRET= # Drupal Simple Oauth client secret
```
5. Make this codebase up and running
```bash
npm run dev
```
6. Browse your decoupled EZContent site at [http://localhost:3000]## Module Dependencies
Make sure following modules are enabled and configured
1. JSONAPI
1. EZContent API for preview (https://www.drupal.org/project/ezcontent_api)
1. Simple Oauth (https://www.drupal.org/project/simple_oauth)
1. Decoupled Router (https://www.drupal.org/project/decoupled_router)## Menus
1. Add menu items under `main` for header section
2. Add menu items under `footer` (existing) menu, these will be displayed in footer section (you can also name `footer-menu` if don't have footer menu)
3. Create `privacy-policy` menu for bottom of the screen[If you don't see menu items as linked, please edit `/admin/config/services/jsonapi/add/resource_types/menu_link_content/menu_link_content` jsonapi resource and change `link` value to `URL for link` (clear cache)]
## Decoupled Features
1. Menu (Main, footer, privacy)
1. Article content type
1. Landing page content type with layouts and EZContent's components
1. Meta tags for SEO
1. Dynamic path aliases (managed in Drupal)
1. Content Preview## Components/widgets supported
1. Hero Banner
![Alt Hero Banner](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-06/Screen%20Shot%202020-06-01%20at%202.25.46%20PM.png?itok=xrXGDm6v)
2. Gallery
![Alt Gallery](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-05/screen_shot_2020-05-29_at_5.33.37_pm.png?itok=TX8EBpdg)
3. Card
![Alt Card](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-05/Screen%20Shot%202020-05-29%20at%2012.48.05%20PM.png?h=be23c234&itok=53-IXNPc)
4. Embed
![Alt Embed](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-05/screen_shot_2020-05-29_at_7.06.48_pm.png?itok=faFKKuTu)
5. Map
![Alt Map](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-05/screen_shot_2020-05-29_at_4.17.10_pm.png?itok=1cwDrA54)
6. Social Media
![Alt Social Media](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-05/screen_shot_2020-05-29_at_7.14.58_pm.png?itok=NjUS6POV)
7. Rich Text
![Alt Rich Text](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-05/screen_shot_2020-05-29_at_11.56.09_pm.png?itok=FVNurtyM)
8. Image
![Alt Image](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-06/Screen%20Shot%202020-06-01%20at%201.08.31%20PM.png?h=6dfffef2&itok=6WAJQ0vw)
9. Quote
![Alt Quote](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-06/Screen%20Shot%202020-06-01%20at%201.12.08%20PM.png?itok=g-VAbli1)
10. Accordion/FaQ
![Alt Accordion and FaQ](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-06/Screen%20Shot%202020-06-01%20at%201.17.28%20PM.png?itok=cM4tbYxd)
11. Card Grid
![Alt Card Grid View](https://ezcontent.srijan.net/sites/default/files/styles/card_list/public/2020-06/screen_shot_2020-06-02_at_3.51.54_pm.png?itok=m6ChMQJa)
## License
The MIT License (MIT)