diff --git a/_template/build/html5/index.html b/_template/build/html5/index.html
index 58521f7..43e203e 100644
--- a/_template/build/html5/index.html
+++ b/_template/build/html5/index.html
@@ -2,6 +2,7 @@
+
Main
diff --git a/responsive/.haxeui b/responsive/.haxeui
new file mode 100644
index 0000000..2ba8c2d
--- /dev/null
+++ b/responsive/.haxeui
@@ -0,0 +1,2 @@
+# generated file simply to hold info about projects created with "haxeui create ..."
+name=Main
diff --git a/responsive/.vscode/launch.json b/responsive/.vscode/launch.json
new file mode 100644
index 0000000..399e465
--- /dev/null
+++ b/responsive/.vscode/launch.json
@@ -0,0 +1,32 @@
+{
+ "configurations": [
+ {
+ "name": "Kha: HTML5",
+ "request": "launch",
+ "type": "chrome",
+ "cwd": "${workspaceFolder}/build/debug-html5",
+ "runtimeExecutable": "${command:kha.findKhaElectron}",
+ "runtimeArgs": [
+ "--no-sandbox",
+ "--force-device-scale-factor=1",
+ "."
+ ],
+ "outFiles": [
+ "${workspaceFolder}/build/debug-html5/*.js"
+ ],
+ "preLaunchTask": "Kha: Build for Debug HTML5",
+ "internalConsoleOptions": "openOnSessionStart",
+ "skipFiles": [
+ "/**"
+ ]
+ },
+ {
+ "type": "krom",
+ "request": "launch",
+ "name": "Kha: Krom",
+ "preLaunchTask": "Kha: Build for Krom",
+ "internalConsoleOptions": "openOnSessionStart"
+ }
+ ],
+ "compounds": []
+}
\ No newline at end of file
diff --git a/responsive/.vscode/tasks.json b/responsive/.vscode/tasks.json
new file mode 100644
index 0000000..767ebfa
--- /dev/null
+++ b/responsive/.vscode/tasks.json
@@ -0,0 +1,15 @@
+{
+ "version": "2.0.0",
+ "tasks": [
+ {
+ "type": "haxe",
+ "args": "active configuration",
+ "group": {
+ "kind": "build",
+ "isDefault": true
+ },
+ "problemMatcher": [],
+ "label": "haxe: active configuration"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/responsive/application.xml b/responsive/application.xml
new file mode 100644
index 0000000..1d7ec80
--- /dev/null
+++ b/responsive/application.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/responsive/assets/empty.txt b/responsive/assets/empty.txt
new file mode 100644
index 0000000..e69de29
diff --git a/responsive/assets/main-view.xml b/responsive/assets/main-view.xml
new file mode 100644
index 0000000..91ab3b4
--- /dev/null
+++ b/responsive/assets/main-view.xml
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/responsive/assets/main.css b/responsive/assets/main.css
new file mode 100644
index 0000000..d7434b6
--- /dev/null
+++ b/responsive/assets/main.css
@@ -0,0 +1,145 @@
+.header {
+ background-color:rgb(170, 170, 204);
+ padding: 5px;
+ filter: drop-shadow(1, 45, #000000, 0.5, 2, 2, 1, 3, false);
+}
+
+.footer {
+ background-color:#CCAACC;
+ padding: 5px;
+ filter: drop-shadow(1, 45, #000000, 0.5, 2, 2, 1, 3, false);
+}
+
+.header label, .footer label {
+ font-size: 18px;
+ /*color: white;*/
+}
+
+.x-menu {
+ width: 100%;
+}
+
+.x-menu box {
+ width:100%;
+ background-color:#AACCCC;
+ padding: 5px;
+ filter: drop-shadow(1, 45, #000000, 0.5, 2, 2, 1, 3, false);
+}
+
+.x-menu label {
+ width:100%;
+ /*color: white;*/
+}
+
+.x-sidebar {
+ width: 100%;
+}
+
+.x-sidebar box {
+ width:100%;
+ background-color:#CCCCAA;
+ padding: 5px;
+ /*filter: drop-shadow(1, 45, #000000, 0.5, 2, 2, 1, 3, false);*/
+}
+
+.x-sidebar label {
+ width:100%;
+ /*color: white;*/
+}
+
+.content {
+ width:100%;
+ padding: 5px;
+}
+
+#logo {
+ resource: "haxeui-core/styles/default/haxeui_tiny.png";
+}
+
+#small {
+ hidden: false;
+}
+
+#medium {
+ hidden: true;
+}
+
+#large {
+ hidden: true;
+}
+
+#html5, #hxwidgets {
+ hidden: true;
+}
+
+@media (min-width: 500px) {
+ .x-menu {
+ width: 25%;
+ }
+
+ .content {
+ width: 75%;
+ }
+
+ #logo {
+ resource: "haxeui-core/styles/default/haxeui_small.png";
+ }
+
+ #small {
+ hidden: true;
+ }
+
+ #medium {
+ hidden: false;
+ }
+
+ #large {
+ hidden: true;
+ }
+}
+
+@media (min-width: 800px) {
+ .x-menu {
+ width: 25%;
+ }
+
+ .x-sidebar {
+ width: 25%;
+ }
+
+ .content {
+ width: 50%;
+ }
+
+ #small {
+ hidden: true;
+ }
+
+ #medium {
+ hidden: true;
+ }
+
+ #large {
+ hidden: false;
+ }
+}
+
+@media (backend: html5) {
+ #html5 {
+ hidden: false;
+ }
+
+ #hxwidgets {
+ hidden: true;
+ }
+}
+
+@media (backend: hxwidgets) {
+ #html5 {
+ hidden: true;
+ }
+
+ #hxwidgets {
+ hidden: false;
+ }
+}
\ No newline at end of file
diff --git a/responsive/build/html5/index.html b/responsive/build/html5/index.html
new file mode 100644
index 0000000..43e203e
--- /dev/null
+++ b/responsive/build/html5/index.html
@@ -0,0 +1,35 @@
+
+
+
+
+
+ Main
+
+
+
+
+
+
+
+
+
+
+
diff --git a/responsive/flixel-hl.hxml b/responsive/flixel-hl.hxml
new file mode 100644
index 0000000..6ad6046
--- /dev/null
+++ b/responsive/flixel-hl.hxml
@@ -0,0 +1,3 @@
+-lib haxeui-core
+-lib haxeui-flixel
+--cmd lime test project.xml hl
\ No newline at end of file
diff --git a/responsive/flixel-html5.hxml b/responsive/flixel-html5.hxml
new file mode 100644
index 0000000..2c5e969
--- /dev/null
+++ b/responsive/flixel-html5.hxml
@@ -0,0 +1,3 @@
+-lib haxeui-core
+-lib haxeui-flixel
+--cmd lime build project.xml html5
\ No newline at end of file
diff --git a/responsive/flixel-windows.hxml b/responsive/flixel-windows.hxml
new file mode 100644
index 0000000..46c6c2b
--- /dev/null
+++ b/responsive/flixel-windows.hxml
@@ -0,0 +1,3 @@
+-lib haxeui-core
+-lib haxeui-flixel
+--cmd lime test project.xml windows
\ No newline at end of file
diff --git a/responsive/heaps-hl.hxml b/responsive/heaps-hl.hxml
new file mode 100644
index 0000000..29dc4ae
--- /dev/null
+++ b/responsive/heaps-hl.hxml
@@ -0,0 +1,11 @@
+-cp src
+-main Main
+
+-lib heaps
+-lib hlsdl
+-lib haxeui-core
+-lib haxeui-heaps
+
+-D resourcesPath=assets
+
+-hl build/heaps/hl/Main.hl
diff --git a/responsive/heaps-js.hxml b/responsive/heaps-js.hxml
new file mode 100644
index 0000000..ff15062
--- /dev/null
+++ b/responsive/heaps-js.hxml
@@ -0,0 +1,10 @@
+-cp src
+-main Main
+
+-lib heaps
+-lib haxeui-core
+-lib haxeui-heaps
+
+-D resourcesPath=assets
+
+-js build/heaps/js/Main.js
diff --git a/responsive/html5.hxml b/responsive/html5.hxml
new file mode 100644
index 0000000..e4ed6ab
--- /dev/null
+++ b/responsive/html5.hxml
@@ -0,0 +1,7 @@
+-cp src
+-main Main
+
+-lib haxeui-core
+-lib haxeui-html5
+
+-js build/html5/Main.js
diff --git a/responsive/hxwidgets.hxml b/responsive/hxwidgets.hxml
new file mode 100644
index 0000000..0aceaa7
--- /dev/null
+++ b/responsive/hxwidgets.hxml
@@ -0,0 +1,11 @@
+-cp src
+-main Main
+
+-lib haxeui-core
+-lib haxeui-hxwidgets
+-lib hxWidgets
+
+-D ABI=-MD
+-D WXSTATIC
+
+-cpp build/hxwidgets
diff --git a/responsive/khafile.js b/responsive/khafile.js
new file mode 100644
index 0000000..cc631a7
--- /dev/null
+++ b/responsive/khafile.js
@@ -0,0 +1,19 @@
+let project = new Project('Main');
+
+
+const haxeui_kha_dir = await new Promise((resolve, reject) => {
+ require('child_process').execFile('haxelib', ['path', 'haxeui-kha'], {}, (err, data) => {
+ if (err) reject(err);
+ else resolve(data.split("\n")[0].trim());
+ });
+});
+
+console.log("Using haxeui-kha from: " + haxeui_kha_dir);
+
+//project.addAssets('./assets/**');
+project.addSources('./src');
+
+project.addLibrary('haxeui-core');
+await project.addProject(haxeui_kha_dir);
+
+resolve(project);
diff --git a/responsive/nme-windows.hxml b/responsive/nme-windows.hxml
new file mode 100644
index 0000000..78f14f9
--- /dev/null
+++ b/responsive/nme-windows.hxml
@@ -0,0 +1,3 @@
+-lib haxeui-core
+-lib haxeui-nme
+--cmd nme test windows
\ No newline at end of file
diff --git a/responsive/openfl-hl.hxml b/responsive/openfl-hl.hxml
new file mode 100644
index 0000000..8ef50de
--- /dev/null
+++ b/responsive/openfl-hl.hxml
@@ -0,0 +1,3 @@
+-lib haxeui-core
+-lib haxeui-openfl
+--cmd lime test application.xml hl
\ No newline at end of file
diff --git a/responsive/openfl-html5.hxml b/responsive/openfl-html5.hxml
new file mode 100644
index 0000000..07dc33b
--- /dev/null
+++ b/responsive/openfl-html5.hxml
@@ -0,0 +1,3 @@
+-lib haxeui-core
+-lib haxeui-openfl
+--cmd lime build application.xml html5
\ No newline at end of file
diff --git a/responsive/openfl-windows.hxml b/responsive/openfl-windows.hxml
new file mode 100644
index 0000000..5e2c303
--- /dev/null
+++ b/responsive/openfl-windows.hxml
@@ -0,0 +1,3 @@
+-lib haxeui-core
+-lib haxeui-openfl
+--cmd lime test application.xml windows
\ No newline at end of file
diff --git a/responsive/pdcurses.hxml b/responsive/pdcurses.hxml
new file mode 100644
index 0000000..869b66a
--- /dev/null
+++ b/responsive/pdcurses.hxml
@@ -0,0 +1,7 @@
+-cp src
+-main Main
+
+-lib haxeui-core
+-lib haxeui-pdcurses
+
+-cpp build/pdcurses
diff --git a/responsive/project.nmml b/responsive/project.nmml
new file mode 100644
index 0000000..6e6ece3
--- /dev/null
+++ b/responsive/project.nmml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/responsive/project.xml b/responsive/project.xml
new file mode 100644
index 0000000..aa4c21a
--- /dev/null
+++ b/responsive/project.xml
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/responsive/raylib.hxml b/responsive/raylib.hxml
new file mode 100644
index 0000000..15bb518
--- /dev/null
+++ b/responsive/raylib.hxml
@@ -0,0 +1,8 @@
+-cp src
+-main Main
+
+-lib haxeui-core
+-lib haxeui-raylib
+-lib raylib-haxe
+
+-cpp build/raylib
diff --git a/responsive/src/Main.hx b/responsive/src/Main.hx
new file mode 100644
index 0000000..bd051d1
--- /dev/null
+++ b/responsive/src/Main.hx
@@ -0,0 +1,14 @@
+package ;
+
+import haxe.ui.HaxeUIApp;
+
+class Main {
+ public static function main() {
+ var app = new HaxeUIApp();
+ app.ready(function() {
+ app.addComponent(new MainView());
+
+ app.start();
+ });
+ }
+}
diff --git a/responsive/src/MainView.hx b/responsive/src/MainView.hx
new file mode 100644
index 0000000..3c7a4de
--- /dev/null
+++ b/responsive/src/MainView.hx
@@ -0,0 +1,10 @@
+package ;
+
+import haxe.ui.containers.ScrollView;
+
+@:build(haxe.ui.ComponentBuilder.build("assets/main-view.xml"))
+class MainView extends ScrollView {
+ public function new() {
+ super();
+ }
+}
\ No newline at end of file
diff --git a/responsive/src/haxeui-flixel.properties b/responsive/src/haxeui-flixel.properties
new file mode 100644
index 0000000..1f359e7
--- /dev/null
+++ b/responsive/src/haxeui-flixel.properties
@@ -0,0 +1,2 @@
+haxe.ui.flixel.background.color=#FFFFFF
+haxe.ui.flixel.mouse.useSystemCursor=true
diff --git a/responsive/src/haxeui-heaps.properties b/responsive/src/haxeui-heaps.properties
new file mode 100644
index 0000000..9c2a53c
--- /dev/null
+++ b/responsive/src/haxeui-heaps.properties
@@ -0,0 +1 @@
+haxe.ui.heaps.engine.background.color=#ffffff
diff --git a/responsive/src/haxeui-hxwidgets.properties b/responsive/src/haxeui-hxwidgets.properties
new file mode 100644
index 0000000..5c1daed
--- /dev/null
+++ b/responsive/src/haxeui-hxwidgets.properties
@@ -0,0 +1,2 @@
+haxe.ui.hxwidgets.frame.fit=true
+haxe.ui.hxwidgets.frame.title=Main
diff --git a/responsive/src/haxeui-pdcurses.properties b/responsive/src/haxeui-pdcurses.properties
new file mode 100644
index 0000000..38537cc
--- /dev/null
+++ b/responsive/src/haxeui-pdcurses.properties
@@ -0,0 +1 @@
+haxe.ui.pdcurses.title=Main
diff --git a/responsive/src/module.xml b/responsive/src/module.xml
new file mode 100644
index 0000000..2ddc007
--- /dev/null
+++ b/responsive/src/module.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file