Developer features

See the demo

Free download

Customization

Rich JavaScript API

CKEditor is an advanced editing platform, offering a strong and extensive JavaScript API. It's possible to interact with the editor at runtime, creating customized and innovative features and content manipulation.

Plugin Based

The editor structure is totally plugin based, including many of its core features. Plugins live in separate files, making them easy to organize and maintain. Our JavaScript API makes developing plugins a rich experience.

Customizable and Extensible

It's possible to customize every single aspect of the editor, from the toolbar, to the skin, to dialogs, to the context menu, data parsing, styling, etc. Out plugin system makes it easy to separate your custom logic from the editor core.

 

Customizable Interface Color

The CKEditor interface can be colorized and personalized. Irish web sites may like it green. American parties can choose a variant of blue or read. Dutch pages may have it orange. What about you? Just use our UI color picker and have fun!

Total Toolbar Control

Too many features can make things difficult for users. Even their arrangement in the toolbar is important. With CKEditor you can customize the tools to have only those you need, having full control of it.

Precise ENTER Control

The ENTER key is supposed to break lines and create paragraphs, right? Well, developers have different point of view, and CKEditor makes it possible to precisely configure the desired behavior, guaranteeing you will have the same results in all browsers.

 

Easy Integration

AJAX Ready

CKEditor is perfect for AJAX applications. You can create, interact and destroy editor instances with ease, minimizing server side communications and offering a rich user experience. CKEditor is in line with applications made to the present, and to the future.

Easy Textarea Replacement

Replacing <textarea> fields in your pages is a simple task. You can use CSS classes for that, decide which to replace by code, or even replace all of them with easy. You'll be ready to go in 5 minutes.

Static Elements Replacement

Some applications may also benefit of the nice way CKEditor provides to replace any kind of HTML element, like a <div>. For example, a Wiki system can make it possible to edit articles with inline double click activation on the text.

 

Easy to Upgrade

All customizations and configurations can live separated from the editor installation folder, making it easy to upgrade. It's just a matter of overwriting the CKEditor directory with new files, and you're ready for it.

TAB Index Support

The advanced TAB key handling support in CKEditor also respects the tabindex definition web developers want to have. Even when replacing <textarea>s, their tabindex values are preserved. It couldn't be simpler than that.

On Demand Loading

In AJAX applications or even dynamic form based tools, like CMSs, you never know if a user will use one of the features at the given moment. For that, you can simply add a 6KB (uncompressed) script to your pages, and the full editor will be loaded when needed only.

 

Extremely Fast Loading

We're focused on providing a wonderful user experience. Page loading is important for it, and CKEditor is amazing in this sense. No matter how many editors you have in the page, it will always load fast... really fast.

Strong Browser Compatibility

CKEditor offers the best browser compatibility support. You can be sure the editor will behave in the same way in all browsers, including Internet Explorer, Firefox, Safari, Chrome and Opera. All browsers will manage and provide the same content.

Library Collision Safe

CKEditor will never interfere with other scripts present in the page. It offers a strong script structure, keeping in mind the advance ways JavaScript can be used nowadays. No headaches for you.

 

Styles

Use Your Site Styles

To provide a better WYSIWYG experience, you can precisely control the CSS that renders the editor contents, being sure that your end users will see the contents just like they are intended to be.

Total Styles Control

Styles and value added semantics can be totally defined and controlled by developers. Not only advanced styling is under control, but also the basic things, like a simple bold. You decided it to be <strong>, <b>, <span style="font-weight:bold"> or even <span class="myBold">.

Styling with Class

This is a powerful feature in CKEditor. Every single style on it can be defined as CSS classes, including the basic bold and italics, font colors, font faces, alignement, indentation, etc.

 

Font Size Settings

The font size selector is totally configurable. You can choose having any kind of sizing, in pixels, percents, em, relative sizing, and even CSS classes. You can also assign human readable names to the sizes, making them easy to be used.

Font Faces Settings

The same power you have with the font sizes can be found for the font faces. Defining the list of supported (and desired!) fonts is easy. Here again, you can even assign CSS classes that represent font faces.

Force Paste as Plain Text

External applications may inject unwanted styling into the editor on pasting. To be sure things will not get messed up, the editor can be configured to force the clipboard data to be always pasted as plain text, making users life easy.

Colors Control

It's nice to have a rainbow to colorize text, but sometimes is better to avoid "artists" making their articles too colorful and potentially unreadable. With CKEditor you can precisely define the color that can be used, guaranteeing harmony among your pages.

Templates

Developer can proved users predefined HTML snippets that can be user to define an entire page, or even to be used (and reused) in small fragments. This is a simple way to have nice sites with a common style line.

 

User Interface

Skins

If the default colorful Kama skin is not enough, the editor comes with other two skins. You can also create a custom skin, having a totally personalized editor. Your users will be happy while using "your" editor.

UI Languages

CKEditor is an international application used all around the world. Its interface is currently available in 57 languages, and it's easy to add new languages to it. Right to left languages are also well supported.

UI Language Auto Detection

For those having an international user base, CKEditor automatically detects the user language, automatically configuring its interface to be localized to it. This editor speaks the language your users speak.

 

Context Menu Settings

The context menu is an important and powerful tool in the editor. Developers can easily modify and add custom features to it by creating plugins that extend the editor code.

Keystrokes Configuration

There is nothing faster than using keyboard shortcuts to activate specific commands. It's easy to configure the editor, specifying the keyboard key combinations to be used to activate custom or even default editor features.

Start with Focus

The editor can be configured to automatically grab the text input focus when created. In this way your users don't need to think what to do; they will just do it. The less clicks the better!

 

Contents Control

Quality XHTML Output

CKEditor uses advanced W3C DTD controls to ensure that the HTML generated is totally valid. Users will not be able to mangle your pages (by mistake or not) and your pages will easily validate.

Output Code Formatting

Other than having quality HTML structure, the editor will also produce code that's clean and readable. You can also include your custom formatting rules, to have things in the way you want.

Standards and Quirks Contents

Different browsers should subtle differences when rendering pages in standards (strict) mode or "quirks" mode. This behavior depends on your web site rules, and with CKEditor you'll be able to precisely match your needs.

 

RTL Contents Support

The editor offers support to properly create and manage contents on languages that are written from right to left, like Arabic, Farsi and Hebrew. With CKEditor, writing in these languages is as natural as in any other.

Contents in Any Language

Other than proper right to left support, CKEditor supports all languages that are properly compatible with web browsers, including language like Chinese, Japanese, Korean, Indian and Arabic.

Source Protection

You can easily define rules to protect the original content being loaded by the editor. For example, it's possible to protect server side scripts, or even tagging metadata available in the HTML.

 

HTML Entities Control

The editor automatically outputs HTML entities for all characters defined in the standards W3C HTML entities table. It's possible to configure it to fit your needs though. For example, Greek users may not want to have Greek letters as entities, but other users may be ok with it when using then in formulas.

Content Parsing

"Rich text editor" is the best description for CKEditor. That's because sometimes the final results must be rendered differently during the editing phase. It's possible to include your custom rules on the data parsing, making it easy to edit any kind of contents.

Data Processor

HTML is a standard, but it's not the only format to have data. There is also wiki format, bbcode, xml, docbook and thousand others. CKEditor is able to handle all these formats by the development of custom Data Processors. That's powerful!

 

Other Products

Browse for images and files in CKEditor, with thumbnails, easy to use and intuitive context menu.

Commercial License

For many companies and products, Open Source licenses are not an option. This is why the Closed Distribution License (CDL) has been introduced.

Read more

Proud to Be