Survalyzer offer customers to the possibility to create own Dashboard solutions. These Dashboards could be either hosted on the Survalyzer infrastructure clients.survalyzer.com or on every other hosting plattform.
Frameworks and Libraries:
To be able to support such custom Dashboards it is essential to have an unified technology stack. Therefore Survalyzer provides guidance in terms of libraries and frameworks to be used which are:
- Bootstrap (https://getbootstrap.com/) as a CSS Framwork
- Angular (https://angular.io/) Single Page Application Framework
- JQuery (https://jquery.com/) for DOM handling
- Underscore (https://underscorejs.org/) for data-binding
- WebL10n (https://github.com/fabi1cazenave/webL10n) for multilanguage
- Highcharts (https://www.highcharts.com/) for charting and visualization
- jStat (https://jstat.github.io/vector.html) for statistical calculations like median and quartiles
Survalyzer provides a solution template with the basic setup as a starting point. This template can be downloaded here.
The general idea of custom Dashboards is to a create lighweight high end data visualization UI, which is only using the Survalyzer survey data through it’s public API. For the sake of simplicity the chosen approach is a Single Page Application with a responsive design and the very mighty visualization library Highcharts.
The first step to create a custom Dashboard after downloading the template is to retrive data. How this is achieved is described in the following Article: http://education.survalyzer.com/knowledge-base/api-usage-introduction/
Data access rights:
The received data from the API is dependent on the user rights. The following accessibility apply:
- Survalyzer Admin
- All survey data
- Survalyzer User
- Survey data for the workspace he has access to
- Panel Member
- Survey data which he has granted rights by the report viewer permission
The format in which the survey data is retrieved could be found here.
If the custom Dashboard is hosted somewhere else than on clients.survalyzer.com this domain has to be added to Survalyzers CORS configuration to allow cross origin API calls. Clients.survalyzer.com has granted CORS access per default. Customers can also Alias the address clients.survalyzer.com with a custom domain.
Normally development servers are running on http://localhost. When using the API from there, an CORS error message will be returned. To fix this issue a local proxy is needed. Survalyzer offers such a proxy to be used for development purpose. Der proxy could be downloaded here. The proxy doesn’t need to be installed but needs the .NET Core 2.1 Framework to be installed on the computer. Startup the local proxy my running the startup.cmd.
To use the proxy prefix the API calls with “http://localhost:5000/api/Proxy?targetUrl=”
Before the deployment to production please make shure that the prefix is remove again.