{"id":10573,"date":"2022-09-29T15:29:46","date_gmt":"2022-09-29T12:29:46","guid":{"rendered":"https:\/\/dhtmlx.com\/blog\/?p=10573"},"modified":"2026-01-23T13:35:26","modified_gmt":"2026-01-23T10:35:26","slug":"dhtmlx-kanban-1-3","status":"publish","type":"post","link":"https:\/\/dhtmlx.com\/blog\/dhtmlx-kanban-1-3\/","title":{"rendered":"DHTMLX Kanban 1.3 with Board History Management, New Opportunities on Backend, and Much More"},"content":{"rendered":"<p>Today we are happy to announce the release of DHTMLX Kanban v1.3. The new version of our <a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxKanban\/\" rel=\"noopener\" target=\"_blank\">JavaScript Kanban Board<\/a> introduces a significant improvement to the developer and user experience.<\/p>\n<p>At the programming level, this minor update provides effective ways for implementing a Kanban with a multi-user backend, setting date ranges in cards, as well as many useful API upgrades. End-users will be able to enjoy the possibility to manage the Kanban history via undo\/redo operations and duplicate any task (or a group of tasks) with its content.<\/p>\n<p><strong><a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxKanban\/download.shtml\" rel=\"noopener\" target=\"_blank\">Download the new version of DHTMLX Kanban Board ><\/a><\/strong><\/p>\n<p>Now let us proceed with a more detailed overview of this release.<\/p>\n<h5>Undo\/Redo Functionality<\/h5>\n<p>When managing a project workflow with a Kanban Board, it can be immensely reassuring to know that you have a backup for each editing step. That is why we\u2019ve decided to complement the new version of our Kanban component with the ability to undo and redo changes. The first option serves to reverse the last action, while the second one helps to reinstate any of the previous edits. As a result, end-users get full control over the Kanban editing history. <\/p>\n<p>This useful functionality is provided in three different ways:<\/p>\n<ul>\n<li>Toolbar controls<\/li>\n<\/ul>\n<p>The Kanban editing history can be managed via the toolbar panel. In version 1.3, new undo and redo controls will be displayed in the toolbar by default. If you need to remove them, you should specify your own order of controls in the <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/config\/toolbar_items_config\/\" rel=\"noopener\" target=\"_blank\">items<\/a><\/strong> property.<\/p>\n<div class=\"codecolorer-container javascript default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\"><span class=\"kw1\">new<\/span> kanban.<span class=\"me1\">Toolbar<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;#toolbar&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp;api<span class=\"sy0\">:<\/span> board.<span class=\"me1\">api<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;items<span class=\"sy0\">:<\/span> <span class=\"br0\">&#91;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;<span class=\"st0\">&quot;search&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;<span class=\"st0\">&quot;spacer&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;<span class=\"st0\">&quot;sort&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;<span class=\"st0\">&quot;undo&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;<span class=\"st0\">&quot;redo&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;<span class=\"st0\">&quot;addColumn&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;<span class=\"st0\">&quot;addRow&quot;<\/span><br \/>\n&nbsp; &nbsp;<span class=\"br0\">&#93;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2022\/09\/image2.gif\" alt=\"DHTMLX Kanban v1.3 - Undo\/Redo\" width=\"940\" height=\"560\" class=\"aligncenter size-full wp-image-10574\" \/><a href=\"https:\/\/snippet.dhtmlx.com\/7n0fsr4o?tag=kanban&#038;mode=wide\" rel=\"noopener\" target=\"_blank\">Check the sample ><\/a><\/p>\n<ul>\n<li>API methods<\/li>\n<\/ul>\n<p>Alternatively, you can add undo and redo options with code. Using this approach, you should apply new <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_undo_method\/\" rel=\"noopener\" target=\"_blank\">undo()<\/a><\/strong> and <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_redo_method\/\" rel=\"noopener\" target=\"_blank\">redo()<\/a><\/strong> methods to enable corresponding functions.<\/p>\n<div class=\"codecolorer-container javascript default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\"><span class=\"kw1\">const<\/span> board <span class=\"sy0\">=<\/span> <span class=\"kw1\">new<\/span> kanban.<span class=\"me1\">Kanban<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;#root&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp;columns<span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;cards<br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\nboard.<span class=\"me1\">undo<\/span><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\nboard.<span class=\"me1\">redo<\/span><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<ul>\n<li>Keyboard shortcuts<\/li>\n<\/ul>\n<p>We\u2019ve also introduced combinations of keyboard shortcuts for undoing (Ctrl (Command)+Z) and redoing (Ctrl (Command)+Y or Ctrl (Command)+Shift+Z) any changes made in the Kanban board. <\/p>\n<p>It should be noted that Kanban history management becomes available only when the value of the new <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/config\/js_kanban_history_config\/\" rel=\"noopener\" target=\"_blank\">history<\/a><\/strong> property is set to <em>true<\/em>. Otherwise, you won\u2019t be able to enable the undo\/redo feature in your Kanban board.<\/p>\n<div class=\"codecolorer-container javascript default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\"><span class=\"kw1\">new<\/span> kanban.<span class=\"me1\">Kanban<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;#root&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp;columns<span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;cards<span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;history<span class=\"sy0\">:<\/span> <span class=\"kw2\">true<\/span><span class=\"sy0\">,<\/span> <span class=\"co1\">\/\/ enables history management<\/span><br \/>\n&nbsp; &nbsp;<span class=\"co1\">\/\/ other parameters<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<p>Moreover, we\u2019ve added the <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/common\/js_kanban_meta_parameter\/\" rel=\"noopener\" target=\"_blank\">$meta<\/a><\/strong> parameter aimed for configuring Kanban methods and events. It allows skipping certain actions in Kanban history via the <strong>skipHistory<\/strong> parameter in the <strong>$meta<\/strong> object. For instance, you can add a new card and skip this action in the Kanban history:<\/p>\n<div class=\"codecolorer-container javascript default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\">board.<span class=\"me1\">addCard<\/span><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp;id<span class=\"sy0\">:<\/span> <span class=\"nu0\">1<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;columnId<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;backlog&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;card<span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span> label<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;New card&quot;<\/span> <span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;$meta<span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;skipHistory<span class=\"sy0\">:<\/span> <span class=\"kw2\">true<\/span><br \/>\n&nbsp; &nbsp;<span class=\"br0\">&#125;<\/span><\/div><\/div>\n<h5>Example of Building Kanban with Multi-User Backend<\/h5>\n<p>If your Kanban should allow any number of users to conveniently work with the board at the same time, you\u2019ll need to implement a multi-user backend. This is essential for ensuring synchronized actions of multiple users from different sources and proper saving of all changes. With the new DHTMLX Kanban, you won\u2019t need to spend time on your own solution for this task. In v1.3, we provide a nice <a href=\"https:\/\/snippet.dhtmlx.com\/eh53652x?tag=kanban&#038;mode=wide\" rel=\"noopener\" target=\"_blank\">demo<\/a> that vividly demonstrates how to incorporate this kind of backend into your project. It will allow multiple end-users to manage cards simultaneously and see each other\u2019s edits in real time.<\/p>\n<h5>New Control for Setting Dates in Kanban Editor<\/h5>\n<p>One more useful novelty delivered in this update is a new field type of Kanban editor named <strong>dateRange<\/strong>. This parameter is intended for easily specifying date ranges (start and end dates) for any card. It is configured in the <strong>type<\/strong> parameter of the <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/config\/js_kanban_editorshape_config\/\" rel=\"noopener\" target=\"_blank\">editorShape<\/a><\/strong> property the following way:<\/p>\n<div class=\"codecolorer-container javascript default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\">editorShape<span class=\"sy0\">:<\/span> <span class=\"br0\">&#91;<\/span><br \/>\n&nbsp; &nbsp;<span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;type<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;dateRange&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;key<span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;start<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;start_date&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;end<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;end_date&quot;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class=\"br0\">&#125;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp; <span class=\"br0\">&#125;<\/span><br \/>\n&nbsp; &nbsp; <span class=\"br0\">&#93;<\/span><\/div><\/div>\n<p><a href=\"https:\/\/snippet.dhtmlx.com\/6y0471nj?tag=kanban&#038;mode=wide\" rel=\"noopener\" target=\"_blank\">Check the sample ><\/a><\/p>\n<h5>Duplicating Tasks in Kanban Board<\/h5>\n<p>If you take a closer look at an actively used Kanban board with one or several projects, you may often notice groups of single-type task cards related to a specific part of the project. In general, such cards may have a lot of similarities in content and settings. But end-users frequently have to add them to the board manually, which certainly takes some extra time.<\/p>\n<p>The new version of the DHTMLX Kanban library eliminates this inconvenience by offering the opportunity to duplicate cards. From now on, end-users can create a copy of any card using the corresponding option in the context menu (3 dots icon) of this card. Alternatively, you can do it by selecting the needed card and applying the hotkey combination (Ctrl (Cmd) + D). The second option also helps to duplicate several cards at once.<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/dhtmlx.com\/blog\/wp-content\/uploads\/2022\/09\/image1.gif\" alt=\"DHTMLX Kanban v1.3 - duplicating cards\" width=\"936\" height=\"712\" class=\"aligncenter size-full wp-image-10577\" \/><a href=\"https:\/\/snippet.dhtmlx.com\/5hcx01h4?tag=kanban&#038;mode=wide\" rel=\"noopener\" target=\"_blank\">Check the sample ><\/a><\/p>\n<p>Programmatically, this feature is incorporated with the new <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_duplicatecard_method\/\" rel=\"noopener\" target=\"_blank\"><\/a><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_duplicatecard_method\/\" rel=\"noopener\" target=\"_blank\">duplicateCard()<\/a><\/strong> method. It takes two parameters:<\/p>\n<ul>\n<li><strong>id<\/strong> &#8211; specifies the ID of the card that should be duplicated (required),<\/li>\n<li><strong>card<\/strong> &#8211; sets the data object for a new card (optional).<\/li>\n<\/ul>\n<div class=\"codecolorer-container javascript default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\">board.<span class=\"me1\">duplicateCard<\/span><span class=\"br0\">&#40;<\/span><span class=\"br0\">&#123;<\/span><span class=\"co1\">\/\/ duplicate a card with the ID 2<\/span><br \/>\n&nbsp; &nbsp;id<span class=\"sy0\">:<\/span> <span class=\"nu0\">2<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;card<span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span> label<span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;Duplicated card&quot;<\/span> <span class=\"br0\">&#125;<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<p>The method is complemented with the corresponding <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/events\/js_kanban_duplicatecard_event\/\" rel=\"noopener\" target=\"_blank\">duplicate-card<\/a><\/strong> event that is called when a card is duplicated.<\/p>\n<div class=\"codecolorer-container javascript default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\">board.<span class=\"me1\">api<\/span>.<span class=\"me1\">on<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;duplicate-card&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"br0\">&#40;<\/span>obj<span class=\"br0\">&#41;<\/span> <span class=\"sy0\">=&gt;<\/span> <span class=\"br0\">&#123;<\/span><span class=\"co1\">\/\/ subscribe to the \u201dduplicate-card\u201d event<\/span><br \/>\n&nbsp; &nbsp;console.<span class=\"me1\">log<\/span><span class=\"br0\">&#40;<\/span>obj<span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<h5>Other Improvements<\/h5>\n<p>We are done with the core features of this release, but we also have to highlight a range of API upgrades provided in v1.3.<br \/>\nFirst of all, our development team offers  several novelties  designed to ensure a better user experience in the Kanban editor. There is a new <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/config\/js_kanban_editor_config\/\" rel=\"noopener\" target=\"_blank\">editor<\/a><\/strong> property that helps to configure automatic saving of changes in cards. It replaces the <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/config\/js_kanban_editorautosave_config\/\" rel=\"noopener\" target=\"_blank\">editorAutoSave<\/a><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_updatecard_method\/\" rel=\"noopener\" target=\"_blank\"><\/a><\/strong> property that has been deprecated.  The <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/config\/js_kanban_editor_config\/\" rel=\"noopener\" target=\"_blank\">editor<\/a><\/strong> property comes with the <strong>autoSave<\/strong> parameter that enables auto save mode and the <strong>debounce<\/strong> parameter for setting auto saving delays. The second one is especially useful when using the undo\/redo feature.<\/p>\n<div class=\"codecolorer-container javascript default\" style=\"overflow:auto;white-space:nowrap;\"><div class=\"javascript codecolorer\"><span class=\"kw1\">new<\/span> kanban.<span class=\"me1\">Kanban<\/span><span class=\"br0\">&#40;<\/span><span class=\"st0\">&quot;#root&quot;<\/span><span class=\"sy0\">,<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp;columns<span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;cards<span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp;editor<span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;autoSave<span class=\"sy0\">:<\/span> <span class=\"kw2\">true<\/span><span class=\"sy0\">,<\/span><br \/>\n&nbsp; &nbsp; &nbsp; &nbsp;debounce<span class=\"sy0\">:<\/span> <span class=\"nu0\">2000<\/span><br \/>\n&nbsp; &nbsp;<span class=\"br0\">&#125;<\/span><span class=\"sy0\">&lt;<\/span>a href<span class=\"sy0\">=<\/span><span class=\"st0\">&quot;https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_redo_method\/&quot;<\/span> rel<span class=\"sy0\">=<\/span><span class=\"st0\">&quot;noopener&quot;<\/span> target<span class=\"sy0\">=<\/span><span class=\"st0\">&quot;_blank&quot;<\/span><span class=\"sy0\">&gt;&lt;\/<\/span>a<span class=\"sy0\">&gt;<\/span><br \/>\n&nbsp; &nbsp;<span class=\"co1\">\/\/ other parameters<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"br0\">&#41;<\/span><span class=\"sy0\">;<\/span><\/div><\/div>\n<p>We\u2019ve updated <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_updatecard_method\/\" rel=\"noopener\" target=\"_blank\">updateCard()<\/a><\/strong>, <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_updatecolumn_method\/\" rel=\"noopener\" target=\"_blank\">updateColumn()<\/a><\/strong>, and <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/methods\/js_kanban_updaterow_method\/\" rel=\"noopener\" target=\"_blank\">updateRow()<\/a><\/strong> methods and corresponding events with the new <strong>replace<\/strong> parameter. It enables you to specify whether Kanban data will be updated fully or partially. By setting the value of this parameter to true, you make sure that only new data will be displayed in rows, columns, and cards. Otherwise, all changes in Kanban elements will be merged with old data.<\/p>\n<p>We continue expanding the possibility of using the popular JSON format with DHTMLX Kanban. Our JavaScript component already allows serializing the Kanban data to JSON. In v1.3, we\u2019ve added the <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/internal\/js_kanban_json_method\/\" rel=\"noopener\" target=\"_blank\">export.json()<\/a><\/strong> method for exporting Kanban data to a JSON file.<\/p>\n<p>Now you can also benefit from the <strong><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/api\/provider\/rest_methods\/js_kanban_getusers_method\/\" rel=\"noopener\" target=\"_blank\">getUser()<\/a><\/strong> method. It is a part of the <strong>RestDataProvider<\/strong> service dedicated to getting users data from the server-side via the GET request.<\/p>\n<p>Review the full list of new capabilities and API changes provided by our team in v1.3 by visiting the \u201c<a href=\"https:\/\/docs.dhtmlx.com\/kanban\/category\/whats-new-and-migration\/\" rel=\"noopener\" target=\"_blank\">What\u2019s new and migration<\/a>\u201d section.<\/p>\n<p>Want to estimate the new version of our Kanban in your own scenarios before making a purchasing decision? Okay, fair enough. You can do it by downloading a <a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxKanban\/download.shtml\" rel=\"noopener\" target=\"_blank\">free 30-day trial version<\/a> of our product.<\/p>\n<p>In case you are already one of the DHTMLX clients,  get access to the new Kanban via your <a href=\"https:\/\/dhtmlx.com\/clients\/\" rel=\"noopener\" target=\"_blank\">Client\u2019s Area<\/a>.<\/p>\n<p>If you want to share your thoughts on this release and ideas about possible improvements, feel free to use the comments section below.<\/p>\n<h5>Related Materials:<\/h5>\n<ul>\n<li><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/news\/whats_new\/#version-13\" rel=\"noopener\" target=\"_blank\">What\u2019s new in v1.3<\/a><\/li>\n<li><a href=\"https:\/\/docs.dhtmlx.com\/kanban\/\" rel=\"noopener\" target=\"_blank\">DHTMLX Kanban documentation<\/a><\/li>\n<li><a href=\"https:\/\/snippet.dhtmlx.com\/7n0fsr4o?tag=kanban&#038;mode=wide\" rel=\"noopener\" target=\"_blank\">DHTMLX Kanban examples<\/a><\/li>\n<li><a href=\"https:\/\/dhtmlx.com\/docs\/products\/dhtmlxKanban\/download.shtml\" rel=\"noopener\" target=\"_blank\">Free 30-day trial version<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Today we are happy to announce the release of DHTMLX Kanban v1.3. The new version of our JavaScript Kanban Board introduces a significant improvement to the developer and user &#8230;<\/p>\n","protected":false},"author":101014,"featured_media":10582,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[70],"tags":[33,64],"class_list":["post-10573","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-releases","tag-all-posts","tag-kanban"],"_links":{"self":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/10573","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/users\/101014"}],"replies":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/comments?post=10573"}],"version-history":[{"count":13,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/10573\/revisions"}],"predecessor-version":[{"id":14943,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/posts\/10573\/revisions\/14943"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/media\/10582"}],"wp:attachment":[{"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/media?parent=10573"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/categories?post=10573"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dhtmlx.com\/blog\/wp-json\/wp\/v2\/tags?post=10573"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}