PHPackages                             kanopi/saplings-ai-ckeditor-experience - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. kanopi/saplings-ai-ckeditor-experience

ActiveDrupal-recipe[Utility &amp; Helpers](/categories/utility)

kanopi/saplings-ai-ckeditor-experience
======================================

Configures CKEditor for integration with OpenAI.

1.0.1(1y ago)05GPL-2.0-or-later

Since Nov 15Pushed 11mo ago6 watchersCompare

[ Source](https://github.com/kanopi/saplings-ai-ckeditor-experience)[ Packagist](https://packagist.org/packages/kanopi/saplings-ai-ckeditor-experience)[ RSS](/packages/kanopi-saplings-ai-ckeditor-experience/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (2)Dependencies (3)Versions (3)Used By (0)

[![saplings](https://private-user-images.githubusercontent.com/5177009/302044935-a6377e32-deb2-49d8-873a-f3dd5a36fa7c.svg?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzU1MjQyNTUsIm5iZiI6MTc3NTUyMzk1NSwicGF0aCI6Ii81MTc3MDA5LzMwMjA0NDkzNS1hNjM3N2UzMi1kZWIyLTQ5ZDgtODczYS1mM2RkNWEzNmZhN2Muc3ZnP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDQwNyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA0MDdUMDEwNTU1WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MTQwMmM2MzFhMDdhZmNhYmZkOTFjYmJjMThhOTIxYzRiYTcxZjJkYzY3NWRjOGQxMTBlYjJmMGMxZGI2MTcxNSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.Kjjid7IY4kg9ICe2LCJcN6JJhZTOtmpGyxU0ZWBjSJg)](https://private-user-images.githubusercontent.com/5177009/302044935-a6377e32-deb2-49d8-873a-f3dd5a36fa7c.svg?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzU1MjQyNTUsIm5iZiI6MTc3NTUyMzk1NSwicGF0aCI6Ii81MTc3MDA5LzMwMjA0NDkzNS1hNjM3N2UzMi1kZWIyLTQ5ZDgtODczYS1mM2RkNWEzNmZhN2Muc3ZnP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDQwNyUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjA0MDdUMDEwNTU1WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MTQwMmM2MzFhMDdhZmNhYmZkOTFjYmJjMThhOTIxYzRiYTcxZjJkYzY3NWRjOGQxMTBlYjJmMGMxZGI2MTcxNSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.Kjjid7IY4kg9ICe2LCJcN6JJhZTOtmpGyxU0ZWBjSJg)

Saplings - AI CKEditor Experience
=================================

[](#saplings---ai-ckeditor-experience)

Helpful AI functionality for content creators.

Features
--------

[](#features)

- Generation of content using AI.
- Alteration of content in specific tones using AI.
- Translation of content using user determined languages using AI.
- Summary of selected text using AI.

Includes `AI Tones` and `AI Languages` taxonomies.

Installation
------------

[](#installation)

```
composer require kanopi/saplings-ai-ckeditor-experience
cd web && php core/scripts/drupal recipe ../recipes/saplings-ai-ckeditor-experience

```

### Configure OpenAI

[](#configure-openai)

While the AI module supports many AI services, this recipe is configure to use OpenAI.

1. Create an API key at
2. Create a key file at `private://keys/openai_provider.key`. That is usually at `[webroot]/sites/default/files/private/keys/openai_provider.key`.
3. Once you are ready to deploy, be sure to place that key in your cloud environments on the site's host. If you place it in the canonical environment, it will get cloned on subsequent multidev clones.

Usage
-----

[](#usage)

To use the configured AI tools, start by clicking the *AI Assistant* button in any Full HTML CKEditor instance.

### Generate with AI

[](#generate-with-ai)

When you click the AI Assistant button &gt; Generate with AI option, a modal pops up presenting:

> What would you like to ask or get ideas for?

- Enter your prompt to AI to help you write your content.

    Example: Write three paragraphs about Kanopi Studio's Saplings suite of Recipes.
- After you have written your prompt, click the *Generate* button.

    You can click the button multiple times to get different responses from the AI source.

    After you click the Generate button, below the *Response from AI* field, you will see the *AI Writer: Idle* message switch to *AI Writer: Waiting for response*.

    Once the AI action has completed, it will switch back to Idle.
- The response is saved in the *Response from AI* field.

    You can edit the response before saving it back to the main editor.

    When you are satisfied with the content, click the *Save changes to editor*button.
- Be sure to click *Save* on your node/page to ensure your changes are saved.

### Summarize

[](#summarize)

- Select text in CKEditor.
- Click the AI Assistant button, then select *Summarize*.
- Click the *Summarize* button.

    After you click the Summarize button, below the *Response from AI* field, you will see the *AI Writer: Idle* message switch to *AI Writer: Waiting for response*.

    Once the AI action has completed, it will switch back to Idle.
- The response is saved in the *Response from AI* field.

    You can edit the response before saving it back to the main editor.

    When you are satisfied with the content, click the *Save changes to editor*button.
- Be sure to click *Save* on your node/page to ensure your changes are saved.

### Tone

[](#tone)

- Select text in CKEditor.
- Click the AI Assistant button, then select *Tone*.
- Select the Tone you want to rewrite your content in, then click the *Generate*button.

    After you click the Generate button, below the *Response from AI* field, you will see the *AI Writer: Idle* message switch to *AI Writer: Waiting for response*.

    Once the AI action has completed, it will switch back to Idle.
- The response is saved in the *Response from AI* field.

    You can edit the response before saving it back to the main editor.

    When you are satisfied with the content, click the *Save changes to editor*button.
- Be sure to click *Save* on your node/page to ensure your changes are saved.

### Translate

[](#translate)

- Select text in CKEditor.
- Click the AI Assistant button, then select *Translate*.
- Select or add the Language you want to rewrite your content in, then click the *Translate* button.

    After you click the Translate button, below the *Response from AI* field, you will see the *AI Writer: Idle* message switch to *AI Writer: Waiting for response*.

    Once the AI action has completed, it will switch back to Idle.
- The response is saved in the *Response from AI* field.

    You can edit the response before saving it back to the main editor.

    When you are satisfied with the content, click the *Save changes to editor*button.
- Be sure to click *Save* on your node/page to ensure your changes are saved.

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance49

Moderate activity, may be stable

Popularity4

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 94.1% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~101 days

Total

2

Last Release

442d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/bf9dca5c46910be861bb00920034637b5a36a1f6277413be6817a50a1ce6fc74?d=identicon)[kanopi\_studios](/maintainers/kanopi_studios)

---

Top Contributors

[![thejimbirch](https://avatars.githubusercontent.com/u/5177009?v=4)](https://github.com/thejimbirch "thejimbirch (16 commits)")[![echechulina](https://avatars.githubusercontent.com/u/59713012?v=4)](https://github.com/echechulina "echechulina (1 commits)")

---

Tags

drupal-recipesaplings

### Embed Badge

![Health badge](/badges/kanopi-saplings-ai-ckeditor-experience/health.svg)

```
[![Health](https://phpackages.com/badges/kanopi-saplings-ai-ckeditor-experience/health.svg)](https://phpackages.com/packages/kanopi-saplings-ai-ckeditor-experience)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
