You are here

breacrumb

Wakanda Roadmap

The goal of the Wakanda Roadmap is to show our current development initiatives. The Wakanda development team is responsible for making the roadmap a "live list of features" with frequent updates and eventual changes (additions, deletions, or modifications) to the list.

Regarding this roadmap:

  • The Progress column is a rough estimate of the progress during the development and test phases. We might add comments to a feature's description or add a link to a forum or blog post to better explain our current development efforts or possible obstacles.
  • The Target column (when indicated) shows in which version the feature will be available. It may also contain information about which build (in the DEV branch) you can test the feature before its final release.

The Wakanda development team reserves the right to change or delete any roadmap feature at any time during our development cycle. If we delete a feature, we will do our best to explain the reasons for such a decision.

 

Last update: Sept 30th, 2014 Next update: Oct 17th, 2014

(use ctrl + clic for multiple selection)
Progress Features Admin Target
100%

Widgets - Binding Formats to the Widget

This feature will help developers to transform or format the values returned from a datasource before displaying them in the widget. 

The formatter should be defined in a JS file and added to your pages. Once done, you can create and register a formatters as it follows :

Example of transforming a widget value to lowercase :

WAF.require('waf-core/formatters').create('lowercase', {

    format: function(value) { if (value) { return value.toLowerCase(); } else {return null} },
    unformat: function(value) { return value; },
});

 

 

in development
100%

Security password encryption for admin users

Automatic save, encrypt and protect passwords on the server side for admin users

in development
100%

The behaviour Repeater for Custom Widgets

This behaviour will help developers to create Custom Widgets based on repeating patterns such as the Matrix and lists. Once inherited, the Custom widget will have all the methods to manipulate and duplicate rows inside the widget. 

in development
100%

Pageable behaviour for Custom Widgets

When developing a widget, you may need a way to paginate your content. This behaviour will help you paginate your widgets, you define the html element to be reproduced, the container in which the html element will be inserted and the datasource and the behaviour will manage the loading of new elements for your widget. 

 

in development
100%

Autocompletion CSS improvements

We are refactoring our autocompletion system to also suggest CSS selectors and classes while editing CSS files in the Wakanda Studio. 

in development
100%

Sandbox file system access for system workers

The idea is to use a new settings file to declare a list of available external executables that can be launched within a solution as system workers.

For example, let's say there is a "systemWorkers.json" file with the following content:

[
    {
        "name" : "git",
        "executable" :
        [
            { "path" : "/usr/bin/git" },
            { "path" : "/usr/local/bin/git" },
            { "path" : "/usr/local/git/bin/git" },
            { "path" : "C:\\Program Files (x86)\\Git\\bin\\git.exe" }
        ]
    }
]
Developer would then be able to execute a git command by creating the following worker:

new SystemWorker ( "git version", null );

 

in development
100%

Template Behaviour for Custom Widgets

When designing a custom widget you may want to use a template to define your html display. You may also want to give the possibility of the user to change the template directly in the Wakanda Studio. This behaviour will implement this functionality for Custom Widgets. 

in development
100%

Add the configParameterObject to SMTP.send

configParameterObject is a JavaScript containing all SMTP server parameters as attributes :


address = configParameterObject.address;
port = configParameterObject.port;
isSSL = configParameterObject.isSSL;
username = configParameterObject.username;
password = configParameterObject.password;
domain = configParameterObject.domain;

this allows to smoothly add an optional "domain" parameter

 

in development
100%

AngularJS and Wakanda API

This new API (WakandaServices for AngularJS) will help you to connect your AngularJS client code with the Wakanda framework, database and all the business object methods available to your data. Take advantage of our REST API using AngularJS with an api specially designed to speed your development when acessing the Wakanda framework. 

 

in development
100%

shellWorker commonJS module

We need an easy way to execute shell script without having to manually launch bash or cmd.exe passing it the script with escaped strings.

Provide a SSJS module to ease execution of shell commands.

Documentation
The shell worker is a wrapper around SystemWorker that simplifies several things:
- shell worker automatically calls cmd.exe on windows and /bin/sh on unix
- the command line and arguments are formatted and passed appropriately on each platform
- there's no need to escape characters aside from normal js or command related escapes.
- because shell command are always text, output and error buffers are translated to text
- shell command do not use the standard input so the parameter has been removed
- synchronous mode throws a JS exception in case of error.

in development
100%

Save Theme's roles in the custom Theme

The theme's roles are a powerful way to customise your theme. The roles are saved in the application.css file in your project folder. We want to allow you to use the customised roles for all your projects by saving the role in your custom Theme. 

This feature will allow users to:

1. Get an existent theme 

2. Create customised roles for the existent theme

3. Save the existent theme and the customised roles as a new theme. 

4. Use the new theme and roles to a different project. 

in development
100%

Add event parameter to the function for all datastore class and attribute events

Add the event parameter to all datastore class and attribute events (which is an object in which the following data can be retrieved):
- eventKind
- attributeName
- dataClassName
- error
- errorMessage

In WAK9 and before

model.Company.events.init = function() {
    // Add your code here;
};


Wakand 10 we can add the following:

model.Company.events.init = function(event) {
    // Add your code here;
};

in development
100%

Dual way synchronisation between widget properties and properties panel

The Studio property panel should be updated when a change event is fired or when a datasourceBindingChange event is fired on the custom widget.

in development
90%

Runtime Custom Widget instantiation

As an application developer, I want to be able to instanciate widgets at runtime.

in a page javascript file for example :

var MyWidget = WAF.require('mywidget');
var instance = new MyWidget();

in development
90%

A method to export your entities in a JSON or SQL format

The exportAsJSON( )  and exportAsSQL( )  methods exports all the entities stored in the object for which it is called in JSON or SQL format. These methods can be called for a:

  • Datastore: entities from all the datastore classes are exported,
  • DatastoreClass: entities from the datastore class are exported,
  • EntityCollection: entities from the entity collection are exported.
in development
90%

Mechanism to rename a dataclass and keep data intact

When you rename a dataclass, your data is kept intact but unavailable to the new dataclass. We are creating the mechanism to address this issue and give you the freedom to rename a dataclass without "loosing" your data. 

in development
90%

Dataclass object attribute - Server Side

This new feature is very exciting, you will be able to create a dataclass attribute with a new type : "object". This new type will allow you to store JavaScript objects directly into the Wakanda database. Also, the objects are fully indexable !  

in development
90%

Console.log from the Extension's context

The user will be able to console.log from the extension to the wakanda log. 

 

in development
80%

Custom Widgets - Livescroll behavior

This behavior helps Custom Widgets developers to implement a livescroll feature into their widgets.

Example 

WAF.define('LiveScrollTest', ['waf-core/widget', 'Text'], function(widget, Text) {
    var LiveScrollTest = widget.create('LiveScrollTest', {
        rows: widget.property({ 
            type: 'datasource',
            attributes: ['title'],
            pageSize: 40
        }),
        getScrolledNode: function() {
            if(!this.node.getElementsByTagName('div')[0]) {
                this.node.innerHTML = '<div></div>';
            }
            return this.node.getElementsByTagName('div')[0];
        },
        getRowHeight: function() {
            return 40;
        }
    });
    LiveScrollTest.inherit('waf-behavior/layout/repeater-livescroll');
    LiveScrollTest.linkDatasourcePropertyToRepeater('rows');
    LiveScrollTest.repeatedWidget(Text);
    LiveScrollTest.mapAttributesToRepeatedWidgetProperties({
        title: 'value'
    });

    return LiveScrollTest;
});
in development
70%

Generate your themes with LESS

LESS (Leaner CSS) is a dynamic stylesheet language that will help developers create new themes. We are preparing a LESS structure to speed the process of creating a theme for Wakanda. You will change a few values and the LESS script will generate a new theme for you with all the selectors and widgets on it, ready for use. 

Due to some changes in the team, this task is suspended until november/2014

 

 

 

in development
70%

Behavior Multicontainer for Custom Widgets

The beheviour Multicontainer will help developers to manage a list of containers for Custom Widgets. A good example is the TabView widget: Each tab is a container and you can have multible tabs. The behavior will help you navigate theses container with the follwing API :

Class methods

defaultContainer(widget)

Instance methods

addContainer(options)
countContainers( ) -> number
currentContainer( )
currentContainerIndex( ) 
defaultContainerClass(container_class)
insertContainer(index, options)
lastContainer( )
moveContainer(from, to)
setLastContainerAsCurrent( )
container(index, widget)
containers( )
removeAllContainers( )
removeContainer(index)

in development
70%

Google V8 engine

Google V8 engine is now a better fit for Wakanda than JavaScriptCore, our goal is to :

- increase performance
- better control the garbage collection (consistency)
- support multi-cores (less memory manager contention)

We are building a version of Wakanda Server using V8 for SSJS.

in development
50%

Admin page for a "Super User"

We want to have 2 Wakanda Admin Pages :

1. A Server Admin : available only for the "Super User", this page gives you access to all the projects. The super admin can do backups, restores, compactations and verifications.  

2. A Project Admin : available only for the project's admin.  The project's admin will be able to verify and backup its data.

 

 

in development
50%

New Combobox widget

A new combobox to substitute the current combobox based on the new widget architecture. 

The new combobox will be ISO functional with the existent combobox but it will also add :

* html templating

* grouping 

* autocompletion

* search 

 

 

in development
50%

Controlling the html saved by Studio from Custom Widgets

As a widget developer I want to be able to define a css class that will not be saved or managed by the studio. 

The developer can assign a waf-studio-donotsave to a sub element of the custom widgets, so the subelement won't be save in the resulting html file. 

MyWidget = widget.create('MyWidget', {
    init: function() {
        this.node.html = '<button>This will be saved</button><div class="waf-studio-donotsave">This won't be saved in the HTML</div>';
    }
});
in development
40%

Dataclass object attribute - Client Side

Take advantage of the new dataclass property 'object' inside the studio, you will be able to bind your datasources with the new attribute on your widgets. 

in development
30%

Get detailed information about Wakanda database engine events => getMeasures( ) method

getMeasures( [Object options] )


The returned object contains a single property named "DB" that has the following basic structure :

{
    "DB": {
        "diskReadBytes": {…},
        "cacheReadBytes": {…},
        "cacheMissBytes": {…},
        "diskWriteBytes": {…},

        "diskReadCount": {…},
        "cacheReadCount": {…},
        "cacheMissCount": {…},
        "diskWriteCount": {…},

        "dataSegment1": {…},
        "indexSegment": {…},

        "tables": {…},
        "indexes": {…}

    }
}

in development
100%

Phonegap / Cordova Extension

Enter your Wakanda project name and this extension will save all the necessary files to the phonegap upload -

Log:

Issue with authentication is fixed. 

Tests with the Custom Widgets : passed

Tests with the telephone contact list : in progress 

 

in development (Enterprise features)
100%

Database statistics API

You will be able to get and manipulate a JavaScript object with your database statistics, including all the hits to the server, cache and dataclasses.

 

in development (Enterprise features)
100%

Console/command line tool

This new tool allows you to access Wakanda Server and run commands. You can get results and logs immediately.

in development (Enterprise features)
100%

Authentication using LDAP Server

waf-ldap is a new Wakanda module that allows you connect to a LDAP server (such as Windows Active Directory, OpenLDAP Server, and Open Directory), to bind users and to execute searches in the remote directory.

PS. FORUM THREAD CREATED FOR THIS FEATURE, please check our forum.wakanda.org

in development (Enterprise features)
70%

Backup and Restore for Wakanda Admin page

The backup and restore procedures available in the Wakanda Admin are being refactored to expand the features of our current procedure. The user will be able to backup and restore the data based on the journal through a visual interface. The Admin User will be able to restore a backup and roll back entirely or partially the journal(s) available.

 

in development (Enterprise features)
60%

Web Studio - a full web version of the Wakanda Studio

A WebStudio completely available in the browser with a responsive interface based on bootstrap grid system and themes. 

First Draft : Dez/2014

Release date : Jul/2015. 

 

 

in development (Enterprise features)
10%

Customise graphics with Flotr2

Customise your Wakanda Pages with first level graphs by using the Wakanda widget with the Flotr2 JS library.  

Starting implementation on JUNE/2014

 

Backlog
10%

New Tree View widget

We are developing a Tree View widget that allows you to view data hierarchically. Each item can have a number of subitems. Users can then navigate the structure by adding, deleting, and updating tree nodes.

Backlog
10%

Solution snapshot

This extension allows you to create a zip file with only the basic structure needed to run a particular solution. This feature will enable you to share only the fundamental parts of a solution, thus reducing its size as well as the uploading time to other repositories.

Backlog
10%

API for monitoring Wakanda Server

We are creating an API that will allow you to monitor Wakanda Server. Some methods will allow you to ask the server how many contexts are open, list all the contexts, list database operations, etc.

Backlog
10%

Improved error handling server-side

Wakanda will be using web sockets to provide better error handling at the server level, thus allowing your application to receive better error messages that are clearer and more descriptive.

Backlog
10%

Grid widget rewritten

We are improving the Grid widget and basing it on the new widget structure and API. The Grid widget will include more customization features, like paging options and variable row size.

Backlog
10%

Enhancing mobile device events

Adding support of advanced touch events, like taphold and swipe.

Backlog
30%

MySQL connector PRO

Access and manage your MySQL databases directly in Wakanda Enterprise Studio. As a developer you will have your MySQL model and data  available in the Wakanda Studio model designer. 

Backlog - Enterprise
10%

Reporting (starting at october/2014)

The Report Designer will be available directly in the Studio. It will facilitate the creation of reports, including the capacity to preview and populate the report previous execution. The user will be able to define the header, content, footer and how the data is break among the pages of the report. 

 

Backlog - Enterprise
10%

Definable location for your application's data

This feature allows you to save your application’s data to a custom location, which can even be outside of your project’s folder. Saving your data in another location not only gives you more flexibility, but also more possibilities to share your work with other developers.

Backlog - Enterprise
10%

External Authentication (OAuth/OpenID)

Wakanda is implementing an authentication mechanism tha is decoupled from any specific authentication strategy, a developer could use our build-in directory, a model, deletaged authentication(OAuth°, or federated authentication (OpenID) as their authentication strategy.

Backlog - Enterprise
10%

MS SQL Connector PRO

Access and manage your MS SQL databases directly in Wakanda Enterprise Studio. As a developer you will have your MS SQL model and data  available in the Wakanda Studio model designer. 

Backlog - Enterprise
100%

Wakanda Server on port 80 on Linux

Wakanda Server can will be easily run out of the box on Linux using port 80 without root privileges. 

 

Wakanda 9
100%

Add On Extension

This extension will allow users to install themes, widgets, modules and extensions directly into the file system from the Wakanda Studio. One click installation for Wakanda Widgets, Themes and Extensions !

Wakanda 9
100%

New Datastore Class Events

Two new events will help you handle actions on the server side : 

clientrefresh

When the client does the serverRefresh(), the event clientrefresh will be called (if defined)

validateremove

When the client removes an entity, the event validateremove will be called before removing the entity (if defined)

 

Wakanda 9
100%

Datasource API new methods

keepOrderBy
As a developer, i must be able to execute a query without orderby and preserve the previously setted order by.

fromInitialQuery
As a developer, i want to filterQuery and remove all previously executed filterQuery - and keep only the initial query setted in the studio

WAF.Selection
As a developer, i must be able to create a selection and assign it to a datasource.

onSelectionChange
As a developer, if the selection is changed, I want to be notified.

atLeastPageSize
When two widgets for example use the same datasource, if one of them set a pageSize, the other one is affected. In order to avoid that, we need to preserve the maximum value of the pageSize setted by the 2 widgets.
atLeastPageSize method will preserve the maximum value. 

Wakanda 9
100%

Define virtual folders and resources


At the project level, you can now define redirections for a specific URL or a regex to a local or remote address. You can also define specific resources so that they either expire after a specific amount of time or on a certain date.

Wakanda 9
100%

customizeProperty advanced options for Custom Widgets

Adding to the customizeProperty :

multiline (boolean) : Display a text area instead of a simple input. Available only if the property is of type 'string' (the default type).
radio (boolean): Use a radiobox group instead of a select. Available only if the property is of type 'enum'.

Wakanda 9
100%

Make virtual host temporarly unavailable

It is sometime necessary to make a web site temporarly unavailable for maintenance.
The http server we remain active but it will return http status code 503 HTTP_SERVICE_UNAVAILABLE.

Wakanda 9
100%

Selecting composed widgets in Studio

We want to select and customise custom subwidgets (widgets that are composed by other widgets)

For example, if the user defines a widget with a div + button + text input. Each element will have its own panel's property. The user will be able to (in Studio) to select each sub-component.  

The sub-widget should behave as a normal widget for the following things : events, style (except the position) 

- if we select a sub widget inside a custom widget, the user can modify all its properties except its positions,

- if we select a dom node inside a custom widget, the user can modify all its properties ( if the dom node has an ID)

- if we select a dom node inside a custom widget, the user can modify the textContent, very useful to modify an HTML tag for exemple.

 

 

Wakanda 9
100%

COPY AND PASTE - support related attributes

The Copy and Paste action will support the related attributes. 

When you copy and paste a widget binded to a relation attribute,  the relation attribute will be available to the new widget instance. 

 

Wakanda 9
100%

Highligth all occurences of the selected text in the Studio Editor

A very handy feature that helps developers to highlight all occurences of a selected text in Studio. This feature helps you to find your variables, functions and any selected text in Studio.  

 

Wakanda 9
100%

serverRefresh() distinction in onSave()

Based on the Forum thread http://forum.wakanda.org/showthread.php?5169-distinguish-save()-and-serverRefresh()-in-onSave/page2

We are implementing a new event and a mechanism that in the case of a server refresh, you will have an extra parameter to tell your code that the event was triggered by a refresh. 

Wakanda 9
100%

Custom Widgets inside the project

We are adding the Custom Widgets to the project, so users can deploy from one single point. 

Advantages :

1. single point of deployment, all your files in one file tree structure;

2. isolation : when you update your widget, only the selected project will be affected;

3. A favorite repository : when you create a new project, all your widgets available on the /user/Wakanda/Widget will be automatically copied to your project folder, so you can keep your favorite widgets available to your new projects

 

Wakanda 9
100%

Enhancing block representation in the code editor

- Option to display the tabulations lines 
- Option to choose the color of the tabulations lines
- Option  to autohide the collapse/expand button on blocks. All buttons are displayed when cursor is is the margin, and hidden when the mouse leaves the margin.  
- Option to display or not the vertical lines (when autohide collapse/button is on, setting this option will only show the delimitation of the block when the mouse is over the collapse/expand button of this block)
- Option  to hilite a block when the mouse is over the collapse/expand button of this block
- Option to choose the color of block hilite

Wakanda 9
100%

Command Line to disable the Bonjour Protocol

We are implementing a command line option to disable the Bonjour protocol, used between the Wakanda Studio and the Wakanda Server. 

In production servers (where you do not have any Studio connected to your solution), users may want to disable that option to reduce their network traffic. 

 

Wakanda 9
100%

Web Socket API (Wakanda Studio and Wakanda Server)

The Web Socket API is the next generation method of asynchronous communication between Wakanda Studio and Wakanda Server. We are pushing Wakanda so that it has dedicated APIs on both Wakanda Studio and Wakanda Server (full Web Socket SSJS support).

 

LATEST : check the webinar at https://www.youtube.com/watch?v=6mjqwjGK6zM&list=PLE1ED2547ED6476F5&inde...

Wakanda 9
100%

Hide and Show properties for Custom Wigets

As a developer, I want to show or hide some Custom Widget properties in the studio. 

this.myProperty.show()
// show a property

this.myProperty.hide();
// hide the property (all it's attributes)

 

 

Wakanda 9
100%

Rewriting Widget Text Input for new Widget Architecture

Rewriting the text input wiget to use the new architecture. 

Wakanda Version : It is planned to be delivered on gitHub for the Wakanda 9 Version 

gitHub (in development)
100%

Rewriting Widget Container for new Widget Architecture

Rewriting the widget container with the new widget architecture

Wakanda Version : It is planned to be delivered on gitHub for the Wakanda 9 Version 

gitHub (in development)
100%

Rewriting Widget Menu for new Widget Architecture

We are rewriting the widget Menu to use the new widget Architecture

Wakanda Version : It is planned to be delivered on gitHub for the Wakanda 9 Version 

 

gitHub (in development)
100%

New TabView Widget (Example for the new widget API)

The widget TabView is being developed to show the power of the new widget API system. The new TabView will be delivered as the example and best practices to developers understand and apply the concepts of the new widget API.

Wakanda Version : It is planned to be delivered on gitHub for the Wakanda 9 Version 

gitHub (in development)
100%

Rewriting Widget Button for new Widget Architecture

Rewriting the Button to the new Architecture. 

Wakanda Version : It is planned to be delivered on gitHub for the Wakanda 9 Version

 

gitHub (in development)
70%

Rewriting Widget Matrix for new Widget Architecture

We are developing a new version of the Matrix widget based on the new widget architecture and API. A paging option will also be included to allow you to customize the widget, including variable row size, for example.

Wakanda Version : Wakanda 10 / Development Channel 

 

gitHub (in development)
100%

Custom Widget - The Gauge

The Gauge is a great example of using a 3rd party library and the power of the new widget architecture. Show your data by binding the gauge with your datasource and you have a new customised widget available for your Wakanda Applications. This is a great widget for dashboards. 

 

gitHub (delivered)
100%

New Mobile Theme

New Wakanda mobile theme to enhance your mobile apps. 

gitHub (delivered)
100%

Custom Widget List View View for mobile

This custom widget will be focus on performance for mobile equipments. It will be available as  custom widget and we are looking to improve the list view current widget to be much faster, simpler and adapted to mobile. 

gitHub (delivered)
100%

Custom Widget - AudioRecorder

Using a 3rd party library integrated to Wakanda in order to record audio directly into a datasource attribute. Drop the widget in your page, bind with the datasource and start to record wav files directly into the Wakanda database. 

 

gitHub (delivered)
100%

Widget Barcode - 3rd party library example

This widget generates barcodes to your wakanda pages.

  

 Just bind your data and define the type of format 

 

gitHub (delivered)
100%

TableView with Pagination

A custom widget that you can use in Studio to display data in a table format. This is a great widget for mobile, very light implementation and you can paginate your results to simplify the display of data. 

 

gitHub (delivered)
100%

IOS 7 Mobile Theme

A new IOS7 mobile theme ! Just add these theme to your custom themes and enjoy the new look. 

gitHub (delivered)
100%

Custom Widget - The Hyperlink

This custom widget create an hyperlink from your datasource attribute. If you havea  a dataclass that contains stored urls, this widget helps you to transform that url in a clickable hyperlink. 

gitHub (delivered)
100%

Custom Widget - QR code

Using a 3rd party library integrated to Wakanda in order to transform data into a QR code. This widget can be binded with a datasource attribute or with a string. You can now add to your web applications a direct way for customers to get your information. 

gitHub (delivered)
100%

Combobox with Select2

A  combobox written with the popular Select2 JS library. The widget will allow users to group their results by an specific dataclass attribute. 

gitHub (delivered)
100%

Widget Behavior System

The Widget Behavior system will speed up your develpment process by associating a behavior (and its methods) directly to the widget. The widget will inherit from one or multiple behavior, which allows  the custom widget to have access to a set of attributes and methods immediatly. You will be able to overwrite these methods and attributes if you need.

Wakanda 8 (delivered)
100%

Image and CSS live update in Studio

This feature will update automatically your GUI Studio if the CSS or if a JPEG image changes - if you change your image by a 3rd party program as Paint, Gimp, Photophop etc). 

 

Wakanda 8 (delivered)
100%

Tool bar Server Control for Windows

Windows users will have an additional tool bar icon with the list of the servers running in their machine. Also, the user will be able to shutdown a server and check its status by the tool bar menu. 

Wakanda 8 (delivered)
100%

New API for custom widgets

A new Widget API is being developed which will simplify how you code and configure your custom widget. This API will allow you to add properties, constructors, and events to your widget. All widgets (whether provided in Wakanda Studio or developed by you) can use the same API. Accessing datasources will also be simplified with this new Widget API.

Wakanda 8 (delivered)
100%

Create a custom widget with one click

Creating a custom widget will now be easier thanks to a new system that we are developing. Wakanda automatically creates the folder structure and files you need for your custom widget to be accessible from any project in your solution. You can then add code to your widget directly using Wakanda’s Code Editor. The addition of another JavaScript library (Sencha, Dojo, Wijmo, etc.) to be used in your custom widget will also be made even simpler. A new manual will be written to assist you in developing a custom widget.

Wakanda 8 (delivered)
100%

runtimeOnly option for custom Widgets

When creating a custom widget the developer may need an option to specify libraries and scripts that should be executed only at runtime.

This feature is specially useful when loading 3rd party libraries that may cause instability in the Studio, so the developer has the option to add "runtimeOnly" in the dependencies of its package.json to bypass the Studio and loads only at run time. 

 

 

 

Wakanda 8 (delivered)
100%

New server mode for secure connections (HTTPS)

A new value for the secure connection settings was added to enable the use of HTTPS for remote connections. The protocal HTTP is still allowed when connecting from your localhost.

 

 

Wakanda 8 (delivered)
100%

ODBC connector

Access and manage your ODBC connection directly in the Wakanda Studio. As a developer you will have your schema available to your code and completely integrated in the Studio.

Wakanda 8 Enterprise (delivered)
100%

Manage your waRemoteModel

This feature will connect your Wakanda Studio to a remote model (located in a remote server) for consultation. You will be able to see your remote model in the Model Designer. 

 

Wakanda 8 Enterprise (delivered)
100%

Installer - Wakanda Enterprise

Installer for Wakanda Enterprise
- Windows
- Linux
- Mac

Wakanda 8 Enterprise (delivered)
100%

Primary attribute for Array datasources

The developer will be able to define which attribute will be the primary one for datasources of  type Array.

Wakanda 7 (delivered)
100%

Unified (Single) Model

We are simplifying the use of the Dataclass Model by unifying the :

  • Guided Mode (default) 
  • Free Form Edition Mode (advanced)

The Guided Mode and the Free Form Edition Mode (advanced mode) will be blended together. The Developer will be able to separate the code (methods) in different files and at the same time use the Model Editor in full mode.

Here the main goals:
*unify both models
*keep the model editor as the central piece to organize your data model
*give to developers the freedom to save dataclass methods to any file (in the model folder)

Wakanda 7 (delivered)
100%

Shutdown Server button

A Shutdown Server button is now available in the Studio to explicitly shut down your current running server. 

 

Wakanda 7 (delivered)
100%

Adaptive Cache in the Settings

Now you can manage your adaptive cache directly in the Settings Editor. 

Wakanda 7 (delivered)
100%

"Order by" in relation attribute datasources

The developer will be able to define which attribute(s) a relation attribute datasource is ordered by defining the attribute(s) in the Order By property.

Wakanda 7 (delivered)
100%

Cache for images (performance)

This feature will speed your page loading when displaying images by caching the images already charged by your browser. This is a great performance improvement for the widgets Grid and Matrix while displaying images.

 

Wakanda 7 (delivered)
100%

Debug button for JS scripts

To debug js minified files, we are creating a debug button that will load each script independently, so the user can see the results and the code in a non minified way. 

 

Wakanda 7 (delivered)
100%

4D Connector PRO

Access and manage your 4D data directly in the Wakanda Studio. As a developer you will have your 4D schema available to your code and completely integrated in the Studio.

Wakanda 7 Enterprise (delivered - Beta)
100%

MS SQL Connector

Access and manage your MS SQL connection directly in the Wakanda Studio with our MS SQL API. 

Wakanda 7 Enterprise (delivered - Beta)
100%

MySQL connector

Access and manage your MySQL connection directly in the Wakanda Studio with our MySQL API. 

 

Wakanda 7 Enterprise (delivered - Beta)
100%

Wakanda Connector PRO

Manage distributed Wakanda datastores directly in Wakanda Enterprise Studio. Your model and data will be available directly in the Wakanda Studio. 

Wakanda 7 Enterprise (delivered - Beta)
100%

CommonJS unit testing

Wakanda is implementing the CommonJS unit testing 1.0 standard. You will be able to write unit testing for your wakanda project and get the results of your unit testing in the console.log in your debugger. Check here the CommonJS standards 

Wakanda 6 (delivered)
100%

Themes Management

This functionality will add your theme folder structure to the Studio left panel. You will be able to add, edit, update and delete files in your theme and manage your theme's dependencies directly in the Studio editor.

Wakanda 6 (delivered)
100%

Showing file list for Git commits

This feature helps you to manage the files to be committed in your git repository. A list of files will be shown and you can select or deselect files before the commit take place. You can also select all or none files.  

Wakanda 6 (delivered)
100%

New build system

With this feature, our goal is to reduce the overall size of each page loaded by a Wakanda project (including all the JS and CSS files used by the Page). Each Wakanda Page will receive a custom, minified version of WAF containing only the libraries needed to run the Page. Applications made with Wakanda will now be faster on the desktop as well as on mobile devices.

Wakanda 6 (delivered)
100%

Full autocompletion for global variables

This feature is widening the autocompletion scope by giving  access to all properties for Wakanda global variables. Now if you type variables such as "ds" you will get the full list of properties available for ds global object.  

Wakanda 6 (delivered)
100%

Package control

We are creating a standard "package.json" to help you manage dependencies. Pages, widgets (both those included in Wakanda Studio as well as custom ones), and Web Components will all use the same file structure, thus creating a unified way when dealing with packages. This feature is related to the New build system feature and was created to better deal with our internal architecture.

Wakanda 6 (delivered)
100%

Reset Cache Button for the WD2 in the Wakanda Admin

A button to reset the W2D cache functionality is now accessible in the Wakanda Admin.

Wakanda 6 (delivered)
100%

Multiple Selection in Studio

Previously, when selecting multiple widgets by dragging the mouse, only elements entirely found inside the selection would be added.

Now, all widgets that are touched by the selection will be added to your multiple selection.

See: http://doc.wakanda.org/Wakanda-Studio-Reference-Guide/GUI-Designer-Widge...

 

Wakanda 6 (delivered)
100%

Create a custom CSS theme easily in Wakanda Studio

You will be able to create your own theme in Wakanda Studio by basing it on an existing theme. You will also be able to create a role (based on styles defined in the Styles tab) for a type of widget and then apply it to that same widget type throughout your project. The role will be created for the selected theme.

Wakanda 6 (delivered)
100%

Testing Wakanda 6 for Stabilisation channel

The Wakanda 6 is being verified for the stabilisation version. Very soon you will get our new version in the official channel available directly in our webpage. 

 

Wakanda 6 (delivered)
100%

HTML5 and Vimeo Extensions to Video Widget

After the release of the new video widget on Wakanda 5, we are proposing 2 new extensions : HTML5 and Vimeo for the widget. 

Wakanda 6 (delivered)
100%

Custom Themes Additional Information

In the Themes panel you will have the current theme and all the available themes that can be applied to your page. In the current theme, the Studio will also present the information of the author, the date of creation and the eventual url where you can find and download the themes created by that user. 

Wakanda 6 (delivered)
100%

Web Admin Authentication

This feature adds custom authentication to the Wakanda Admin. A system of login will be in place to prompt the user and password validation before granting acess to the Wakanda Admin. 

 

 

Wakanda 6 (delivered)
100%

Cross-solution file structure

We are implementing a new file structure that will allow extensions, SSJS modules, custom and Wakanda widgets, as well as project templates to be located in an independent location. In this way, it will be much easier for you to update Wakanda Studio and Wakanda Server.  For example, a custom widget will be available to any of the projects in your solution because they stored in one location.

Wakanda 6 (delivered)
100%

Debug button for minified files

With the Wakanda Dynamic Delivery WD2 in place, Wakanda files are minified which could potentially create readable difficulties in debug mode. 

We added a button located on the GUI editor toolbar (next to the run file button) that does exactly the same thing as the "Run File" button, BUT it will add "?debug=1" at the end of URL.

With the option debug=1 in place, files will not be minified. As consequence, you will be able to better debug your problem. 

 

Wakanda 6 (delivered)
100%

Wakanda Event Source

This package created by our top developers is meant to provide an HTTP Push support to Wakanda via Server-Sent Events aka Event Source.

This push technology can be used on all modern platforms excluding IE for wich the EventSource Polyfill works well.

Now your client code can receive pushes directly from the server. For more info, check https://github.com/AMorgaut/wakanda-eventsource

Wakanda 6 (delivered)
100%

Job manager

Wakanda Server will provide you with an asynchronous way to execute jobs on the server. An ID will be assigned to the job and can be used throughout the SSJS API, which allows you to start, stop, and verify the status of a job.

Wakanda 6 (delivered)
100%

Shortcuts to access the Widget List

This feature will help you navigate to the list of widgets, once selected you can type the first letter of the widget to highlight and navigate through the list

Wakanda 6 (delivered)
100%

WebComponents and Package Manager System

This feature will improve the way wakanda loads webcomponents at runtime. Webcomponents are a powerful concept and allow users to better modularize their code. In association with the new package system, webcomponents could be customize to be load at once if the developer wants, avoiding further calls to the server. Also, the webcomponents will use the same standard package system as the widgets, themes and wakanda pages.

Wakanda 6 (delivered)
100%

WebSockets between Server and Studio

Use  WebSockets to keep the communication between server and studio:

-> no longer need of polling server from studio with a RPC request (as in WAK5)

-> better and faster feedback when server dies

-> all RPC calls made from a separate thread in asynchronous mode.

-> no longer having the studio paralised (hang) when server does not respond

Wakanda 6 (delivered)
100%

Google Maps for HTTP and HTTPS

The Google Maps widget was changed to use the same protocol (http or https) as the page the widget is inserted. 

With this feature, no security warnings will show up when using the Wakanda Google Maps widget in HTTPS. 

Wakanda 6 (delivered)
100%

z-index Control

Wakanda widgets will have a better control of the z-index properties of the element. You will be able to arrange your elements and control your z-index for each element. Options such as "send backward", "send back", "bring forward", "bring to front" will be available for a better management of your widgets arrangement. 

Wakanda 6 (delivered)
100%

Copy and paste between pages

After completely revamping the copy and paste feature in one Page, our goal now is to allow you to copy and paste widgets from one Page to another.

Wakanda 6 (delivered)
100%

File Structure visual aid for missing folders

This feature creates a red link if one of the main folders in Wakanda (WebFolder, DataFolder DataModel and BootStrap) is missing from the file directory. 

Wakanda 6 (delivered)
100%

Server startup control

Wakanda Server will be able to start itself without being attached to a specific solution. As a developer, you will be able to independently open and launch solutions, change its settings, and execute JS code directly by passing it to the server. 

Wakanda 6 (delivered)
100%

Syslog support

Syslog has been a standard for data logging on Linux, but now you can use it on Mac and Windows. Syslog will give you a better system management and security as well as generalized analysis and debugging messages.

Wakanda 5 (delivered)
100%

Autocompletion for client-side JS files

Autocompletion support will be added to your CSJS files when working datasources, methods, and widgets.

Wakanda 5 (delivered)
100%

Session Management

We want to give you a couple of methods to better manage your user sessions:

  • getUserSessions: allows you to get a list of all the user sessions (session id, user name, life time, and expiration). To get specific information for just one user, pass his/her user name or user ID to this function.
  • forceExpire: you will be able to force a user session to expire (if the session is still processing, Wakanda Server will wait until the operation has finished before forcing the session to expire).

You will also be able to acccess user session information through the REST API.

Wakanda 5 (delivered)
100%

Google Maps

This feature will simplify the Google Maps widget, at the moment we have 2 widgets that will be blended to have the same functionality in one. 
 

Wakanda 5 (delivered)
100%

JS Direct Data Access to Wakanda

Create your data in Wakanda and access the same data directly via your preferreable HTML5/JavaScript framework or library. Cut all the middle man by accessing your data thru the dataprovider embbed in the Wakanda framework. You will be able to write your own HTML and Javascript code from scratch, to add the libraries you want (Sencha, DOJO, AngularJS...) and to access your Wakanda data seemless. 

Wakanda 5 (delivered)
100%

Enhancing Wakanda Remote Debugger

We are enhancing the implementation of our Remote Debugger by allowing bootstrap debugging files as well as the ability to set breakpoints on arbitrary project files.

Wakanda 5 (delivered)
100%

Git branch support

We will be adding Git branch support. As a developer, you can find out about the current branch being used and also switch to another branch directly from Wakanda Studio.

Wakanda 5 (delivered)
100%

Shortcuts Editor

We are modernizing our Shortcuts Editor so that you will be able to see any conflicts that may exist. We believe that this editor is an important feature for professional developers who make extensive use of the keyboard to get better performance.

Wakanda 5 (delivered)
100%

Video Widget

An improved video widget with the following:

  • an API to control the embeded video using JavaScript
  • ability to auto detect the video (Youtube/Dailymotion)
  • ability to change the video at runtime 
Wakanda 5 (delivered)
100%

Permission Management in the Model Editor

  • Add permission at attribute level (Create, Read, Update)
  • Add "describe" action for model and dataclass
Wakanda 5 (delivered)
100%

CSS themes revamped

We will be introducing a new concept for themes to be applied to a Page in your project. A theme is composed of one CSS3 file that defines a specific look for the widgets on your Page as well as the Page itself. You will be able to select a theme for your Page from a tab in the GUI Designer. The palette will be removed and replaced by one theme, containing both the overall look and color scheme.

Wakanda 5 (delivered)
100%

Breadcrumbs for a widget selected on your Page

In the GUI Designer, you will be able to visualize in a breadcrumb trail any selected widget on your Page. If a widget is placed inside of another widget, you will be able to easily select it or its parent using the breadcrumbs.

Wakanda 5 (delivered)
100%

Troubleshooting page

A troubleshooting page accessible from the GUI Designer will list browser and environment information, which can be necessary when reporting bugs, such as:

  • CSS3/HTML5 features supported by your Web browser
  • Navigator
  • WAF (platform, build number, and version)
Wakanda 5 (delivered)