diff --git a/src/test/javascript/demo.test.js b/src/test/javascript/demo.test.js
new file mode 100644
index 0000000..c088957
--- /dev/null
+++ b/src/test/javascript/demo.test.js
@@ -0,0 +1,53 @@
+require('jquery/dist/jquery.min.js');
+require('angular/angular.min.js');
+require('angular-mocks/angular-mocks.js');
+require('angular-route/angular-route.min.js');
+require('angular-resource/angular-resource.min.js');
+require('angular-cookies/angular-cookies.min.js');
+require('angular-animate/angular-animate.min.js');
+require('angular-sanitize/angular-sanitize.min.js');
+require('angular-touch/angular-touch.min.js');
+require('popper.js/dist/umd/popper.min.js');
+require('bootstrap/dist/js/bootstrap.min.js');
+require('angular-ui-bootstrap/dist/ui-bootstrap-tpls.js');
+require('angular-loading-bar/src/loading-bar.js');
+require('angular-dialog-service/dist/dialogs.js');
+require('scripts/app.js');
+require('scripts/DashboardCtrl.js');
+
+
+describe('Dashboard ctrl tests', function() {
+
+	beforeEach(angular.mock.module('clds-app'));
+
+	var $controllerService;
+	
+	beforeEach(angular.mock.inject(function(_$controller_) {
+		$controllerService = _$controller_;
+	}));
+
+	describe('$scope.showPalette', function() {
+
+		it('test showPalette', function() {
+
+			var $scopeTest = {};
+			var $rootScopeTest = {};
+			var $resourceTest = {};
+			var $httpTest = {};
+			var $timeoutTest = {};
+			var $locationTest = {};
+			var $intervalTest = function(){};
+			var $controllerDashboard = $controllerService('DashboardCtrl', {
+			    '$scope' : $scopeTest,
+			    '$rootScope' : $rootScopeTest,
+			    '$resource' : $resourceTest,
+			    '$http' : $httpTest,
+			    '$timeout' : $timeoutTest,
+			    '$location' : $locationTest,
+			    '$interval' : $intervalTest
+			});
+			$scopeTest.showPalette();
+			expect($rootScopeTest.isModel).toEqual(true);
+		});
+	});
+});
\ No newline at end of file
diff --git a/src/test/javascript/package.json b/src/test/javascript/package.json
new file mode 100644
index 0000000..a2f0cd2
--- /dev/null
+++ b/src/test/javascript/package.json
@@ -0,0 +1,46 @@
+{
+	"scripts": {
+		"test": "jest",
+		"test:watch": "jest --watch",
+		"test:coverage": "jest --coverage"
+	},
+	"jest": {
+		"verbose": true,
+		"coverageDirectory": "${project.build.directory}/clamp-ui/coverage",
+		"collectCoverageFrom": [
+			"**/designer/**/*.{js,jsx}",
+			"!**/designer/lib/**"
+		],
+		"rootDir": "${project.build.directory}/clamp-ui",
+		"roots": [
+			"${project.basedir}/src/test/javascript/",
+			"<rootDir>/designer/"
+		],
+		"moduleDirectories": [
+			"${project.build.directory}/clamp-ui/node/node_modules",
+			"${project.build.directory}/clamp-ui/node_modules",
+			"<rootDir>/designer"
+		],
+		"coverageReporters": [
+			"lcov"
+		]
+	},
+	"devDependencies": {
+		"angular": "1.3.2",
+		"angular-resource": "1.3.2",
+		"angular-cookies": "1.3.2",
+		"angular-route": "1.3.2",
+		"angular-mocks": "1.3.2",
+		"angular-animate": "1.3.2",
+		"angular-sanitize": "1.3.2",
+		"angular-touch": "1.3.2",
+		"angular-dialog-service": "5.3.0",
+		"angular-loading-bar": "0.9.0",
+		"jquery": "3.3.1",
+		"popper.js": "1.14.4",
+		"bootstrap": "4.1.1",
+		"angular-ui-bootstrap": "2.5.6",
+		"jest": "^23.6.0",
+		"jest-cli": "^21.2.1"
+	}
+}
