diff --git a/src/js/.gitignore b/src/js/.gitignore
index 15d5b9f..e4dbfac 100644
--- a/src/js/.gitignore
+++ b/src/js/.gitignore
@@ -10,6 +10,7 @@
#local environment
local/*
+local/doc/*
# misc
.DS_Store
diff --git a/src/js/package.json b/src/js/package.json
index c385a25..d42c467 100644
--- a/src/js/package.json
+++ b/src/js/package.json
@@ -2,7 +2,7 @@
"name": "solitude",
"version": "1.0.0",
"description": "",
- "main": "index.js",
+ "main": "main/index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"portable": "electron-builder build --win --dir",
diff --git a/src/js/src/app.html b/src/js/src/app.html
deleted file mode 100644
index 0fd2a7b..0000000
--- a/src/js/src/app.html
+++ /dev/null
@@ -1,126 +0,0 @@
-
-
-
-
-
-
-
- Solitude
-
-
-
-
-
-
-
-
-
Hello Solitude World
-
This is first Solitude
-
-
-
-
-
-
Hello Solitude World 2
-
This is second Solitude
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/js/src/color-sample.html b/src/js/src/color-sample.html
deleted file mode 100644
index 4e2bd78..0000000
--- a/src/js/src/color-sample.html
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
- Solitude
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/js/src/css/color-sample.css b/src/js/src/css/color-sample.css
deleted file mode 100644
index c265496..0000000
--- a/src/js/src/css/color-sample.css
+++ /dev/null
@@ -1,20 +0,0 @@
-body {
- background-color:#28385E
-}
-
-#main > div {
- display: inline-block;
- width: 100px;
- height:50px;
- vertical-align: top;
-}
-
-#main > div:nth-child(1) {
- background-color: #516C8D;
-}
-#main > div:nth-child(2) {
- background-color: #6A91C1;
-}
-#main > div:nth-child(3) {
- background-color: #CCCCCC;
-}
\ No newline at end of file
diff --git a/src/js/src/css/index.css b/src/js/src/css/index.css
deleted file mode 100644
index b43b608..0000000
--- a/src/js/src/css/index.css
+++ /dev/null
@@ -1,166 +0,0 @@
-body {
- color: #CCCCCC;
- background-color: #28385E;
- font-size: 16px;
-}
-
-#main {
- white-space:nowrap;
- overflow-x: scroll;
-}
-
-#main > div {
- display: inline-block;
- vertical-align: top;
- margin-right: 0.25em;
-}
-
-
-#left-menu {
- font-size: 1.25em;
- min-height: 640px;
- margin-left: 0.5em;
- color:#CCCCCC;
- background-color: #516C8D;
-}
-
-#left-menu.expanded.initial li {
- animation: left-menu-expanding forwards 0s ease 0s normal;
-}
-
-#left-menu.expanded li {
- animation: left-menu-expanding forwards 0.2s ease 0s normal;
-}
-
-#left-menu.shrinked li {
- animation: left-menu-shrinking forwards 0.2s ease 0s normal;
-}
-
-@keyframes left-menu-expanding {
- 0% {
- min-width: 1.5em;
- max-width: 1.5em;
- }
- 100% {
- min-width: 300px;
- max-width: inherit;
- }
-}
-
-@keyframes left-menu-shrinking {
- 0% {
- min-width: 300px;
- max-width: inherit;
- }
- 100% {
- min-width: 1.5em;
- max-width: 1.5em;
- }
-}
-
-#left-menu ol {
- padding-left: 0em;
-}
-
-#left-menu li:nth-child(1) {
- border-top-style:solid;
- border-top-width:0.1em;
- border-top-color:#CCCCCC;
-}
-#left-menu li {
- padding-top: 0.25em;
- padding-bottom:0.25em;
- padding-left:0.25em;
- border-bottom-style:solid;
- border-bottom-width:0.1em;
- border-bottom-color: #CCCCCC;
- list-style:none;
- height: 1.25em;
- overflow:hidden;
- text-overflow: clip;
-}
-
-#left-menu img {
- padding-right: 0.25em;
- width:auto;
- height:auto;
- max-width:100%;
- max-height:100%;
-}
-
-
-#left-menu li,#left-menu img {
- vertical-align:middle;
-}
-
-#left-menu li:hover {
- background-color: #6A91C1;
-}
-
-#main-pane {
- width:100%;
- padding-top: 0.75em;
- background-color:#516C8D;
-}
-
-#main-tabs {
- margin:0em;
- padding: 0em;
-}
-
-#main-tabs li.tab {
- display: inline-block;
- color: #516C8D;
- background-color: #CCCCCC;
-
-
- border-width: 0em;
- border-style:solid;
- border-color:#516C8D;
- padding:0.4em;
- min-width:5em;
-}
-
-
-#main-tabs li.tab:hover {
- background-color: #6A91C1;
-}
-#main-tabs li.tab.selected {
- border-bottom-color:#CCCCCC;
- border-bottom-width: 0.25em;
-}
-
-#main-tabs li.tab:hover.selected {
- background-color: #6A91C1;
- border-bottom-color:#6A91C1;
-}
-
-
-div.main-article {
- display: none;
-}
-
-div.main-article.selected {
- display: inline-block;
- font-size: 1em;
- min-width: 300px;
- min-height: 640px;
- width:100%;
- padding-left : 0.5em;
- padding-top :0.5em;
- color: #516C8D;
- background-color: #CCCCCC;
-}
-
-#main-pane #petari {
- width:100%;
- height:100%;
- overflow: auto;
-}
-
-#main-pane div.app-container {
- border: 0.1em solid #516C8D;
- height: 640px;
- visibility: initial;
- resize: both;
-}
diff --git a/src/js/src/img/menu-empty.jpeg b/src/js/src/img/menu-empty.jpeg
deleted file mode 100644
index a450308..0000000
--- a/src/js/src/img/menu-empty.jpeg
+++ /dev/null
Binary files differ
diff --git a/src/js/src/img/menu-empty.svg b/src/js/src/img/menu-empty.svg
deleted file mode 100644
index bda0108..0000000
--- a/src/js/src/img/menu-empty.svg
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
diff --git a/src/js/src/img/menu-home.png b/src/js/src/img/menu-home.png
deleted file mode 100644
index 0575b0d..0000000
--- a/src/js/src/img/menu-home.png
+++ /dev/null
Binary files differ
diff --git a/src/js/src/img/menu-home.svg b/src/js/src/img/menu-home.svg
deleted file mode 100644
index aaf5daa..0000000
--- a/src/js/src/img/menu-home.svg
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
diff --git a/src/js/src/img/menu-toggle.png b/src/js/src/img/menu-toggle.png
deleted file mode 100644
index f0990d9..0000000
--- a/src/js/src/img/menu-toggle.png
+++ /dev/null
Binary files differ
diff --git a/src/js/src/img/menu-toggle.svg b/src/js/src/img/menu-toggle.svg
deleted file mode 100644
index f5d6818..0000000
--- a/src/js/src/img/menu-toggle.svg
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
diff --git a/src/js/src/index.js b/src/js/src/index.js
deleted file mode 100644
index ce206f4..0000000
--- a/src/js/src/index.js
+++ /dev/null
@@ -1,34 +0,0 @@
-const { app, BrowserWindow, ipcMain} = require('electron');
-const path = require('path');
-const fs = require('fs');
-
-ipcMain.on("write.local", (ipcEvent, savePath, content ) => {
- console.log("listen wirte.local message");
- let dest = path.join(__dirname, "..", "var","local", "petari", "app.html");
- fs.writeFile(dest, content , (err) => {
- if(err) {
- console.log("dest: " + dest);
- console.log("content: " + content);
- console.log(err);
- }
- });
-});
-
-function createWindow() {
- const preloadPath = path.join(__dirname, 'preload.js')
- console.log(preloadPath);
-
- let win = new BrowserWindow({
- width:640,
- height: 480,
- webPreferences: {
- enableRemoteModule: true,
- preload: preloadPath,
- }
- });
- win.loadFile('app.html');
-}
-
-
-
-app.whenReady().then(createWindow)
\ No newline at end of file
diff --git a/src/js/src/main/app.html b/src/js/src/main/app.html
new file mode 100644
index 0000000..0fd2a7b
--- /dev/null
+++ b/src/js/src/main/app.html
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+ Solitude
+
+
+
+
+
+
+
+
+
Hello Solitude World
+
This is first Solitude
+
+
+
+
+
+
Hello Solitude World 2
+
This is second Solitude
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/js/src/main/color-sample.html b/src/js/src/main/color-sample.html
new file mode 100644
index 0000000..4e2bd78
--- /dev/null
+++ b/src/js/src/main/color-sample.html
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+ Solitude
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/js/src/main/css/color-sample.css b/src/js/src/main/css/color-sample.css
new file mode 100644
index 0000000..c265496
--- /dev/null
+++ b/src/js/src/main/css/color-sample.css
@@ -0,0 +1,20 @@
+body {
+ background-color:#28385E
+}
+
+#main > div {
+ display: inline-block;
+ width: 100px;
+ height:50px;
+ vertical-align: top;
+}
+
+#main > div:nth-child(1) {
+ background-color: #516C8D;
+}
+#main > div:nth-child(2) {
+ background-color: #6A91C1;
+}
+#main > div:nth-child(3) {
+ background-color: #CCCCCC;
+}
\ No newline at end of file
diff --git a/src/js/src/main/css/index.css b/src/js/src/main/css/index.css
new file mode 100644
index 0000000..b43b608
--- /dev/null
+++ b/src/js/src/main/css/index.css
@@ -0,0 +1,166 @@
+body {
+ color: #CCCCCC;
+ background-color: #28385E;
+ font-size: 16px;
+}
+
+#main {
+ white-space:nowrap;
+ overflow-x: scroll;
+}
+
+#main > div {
+ display: inline-block;
+ vertical-align: top;
+ margin-right: 0.25em;
+}
+
+
+#left-menu {
+ font-size: 1.25em;
+ min-height: 640px;
+ margin-left: 0.5em;
+ color:#CCCCCC;
+ background-color: #516C8D;
+}
+
+#left-menu.expanded.initial li {
+ animation: left-menu-expanding forwards 0s ease 0s normal;
+}
+
+#left-menu.expanded li {
+ animation: left-menu-expanding forwards 0.2s ease 0s normal;
+}
+
+#left-menu.shrinked li {
+ animation: left-menu-shrinking forwards 0.2s ease 0s normal;
+}
+
+@keyframes left-menu-expanding {
+ 0% {
+ min-width: 1.5em;
+ max-width: 1.5em;
+ }
+ 100% {
+ min-width: 300px;
+ max-width: inherit;
+ }
+}
+
+@keyframes left-menu-shrinking {
+ 0% {
+ min-width: 300px;
+ max-width: inherit;
+ }
+ 100% {
+ min-width: 1.5em;
+ max-width: 1.5em;
+ }
+}
+
+#left-menu ol {
+ padding-left: 0em;
+}
+
+#left-menu li:nth-child(1) {
+ border-top-style:solid;
+ border-top-width:0.1em;
+ border-top-color:#CCCCCC;
+}
+#left-menu li {
+ padding-top: 0.25em;
+ padding-bottom:0.25em;
+ padding-left:0.25em;
+ border-bottom-style:solid;
+ border-bottom-width:0.1em;
+ border-bottom-color: #CCCCCC;
+ list-style:none;
+ height: 1.25em;
+ overflow:hidden;
+ text-overflow: clip;
+}
+
+#left-menu img {
+ padding-right: 0.25em;
+ width:auto;
+ height:auto;
+ max-width:100%;
+ max-height:100%;
+}
+
+
+#left-menu li,#left-menu img {
+ vertical-align:middle;
+}
+
+#left-menu li:hover {
+ background-color: #6A91C1;
+}
+
+#main-pane {
+ width:100%;
+ padding-top: 0.75em;
+ background-color:#516C8D;
+}
+
+#main-tabs {
+ margin:0em;
+ padding: 0em;
+}
+
+#main-tabs li.tab {
+ display: inline-block;
+ color: #516C8D;
+ background-color: #CCCCCC;
+
+
+ border-width: 0em;
+ border-style:solid;
+ border-color:#516C8D;
+ padding:0.4em;
+ min-width:5em;
+}
+
+
+#main-tabs li.tab:hover {
+ background-color: #6A91C1;
+}
+#main-tabs li.tab.selected {
+ border-bottom-color:#CCCCCC;
+ border-bottom-width: 0.25em;
+}
+
+#main-tabs li.tab:hover.selected {
+ background-color: #6A91C1;
+ border-bottom-color:#6A91C1;
+}
+
+
+div.main-article {
+ display: none;
+}
+
+div.main-article.selected {
+ display: inline-block;
+ font-size: 1em;
+ min-width: 300px;
+ min-height: 640px;
+ width:100%;
+ padding-left : 0.5em;
+ padding-top :0.5em;
+ color: #516C8D;
+ background-color: #CCCCCC;
+}
+
+#main-pane #petari {
+ width:100%;
+ height:100%;
+ overflow: auto;
+}
+
+#main-pane div.app-container {
+ border: 0.1em solid #516C8D;
+ height: 640px;
+ visibility: initial;
+ resize: both;
+}
diff --git a/src/js/src/main/img/menu-empty.jpeg b/src/js/src/main/img/menu-empty.jpeg
new file mode 100644
index 0000000..a450308
--- /dev/null
+++ b/src/js/src/main/img/menu-empty.jpeg
Binary files differ
diff --git a/src/js/src/main/img/menu-empty.svg b/src/js/src/main/img/menu-empty.svg
new file mode 100644
index 0000000..bda0108
--- /dev/null
+++ b/src/js/src/main/img/menu-empty.svg
@@ -0,0 +1,12 @@
+
+
+
+
diff --git a/src/js/src/main/img/menu-home.png b/src/js/src/main/img/menu-home.png
new file mode 100644
index 0000000..0575b0d
--- /dev/null
+++ b/src/js/src/main/img/menu-home.png
Binary files differ
diff --git a/src/js/src/main/img/menu-home.svg b/src/js/src/main/img/menu-home.svg
new file mode 100644
index 0000000..aaf5daa
--- /dev/null
+++ b/src/js/src/main/img/menu-home.svg
@@ -0,0 +1,14 @@
+
+
+
+
diff --git a/src/js/src/main/img/menu-toggle.png b/src/js/src/main/img/menu-toggle.png
new file mode 100644
index 0000000..f0990d9
--- /dev/null
+++ b/src/js/src/main/img/menu-toggle.png
Binary files differ
diff --git a/src/js/src/main/img/menu-toggle.svg b/src/js/src/main/img/menu-toggle.svg
new file mode 100644
index 0000000..f5d6818
--- /dev/null
+++ b/src/js/src/main/img/menu-toggle.svg
@@ -0,0 +1,14 @@
+
+
+
+
diff --git a/src/js/src/main/index.js b/src/js/src/main/index.js
new file mode 100644
index 0000000..ce206f4
--- /dev/null
+++ b/src/js/src/main/index.js
@@ -0,0 +1,34 @@
+const { app, BrowserWindow, ipcMain} = require('electron');
+const path = require('path');
+const fs = require('fs');
+
+ipcMain.on("write.local", (ipcEvent, savePath, content ) => {
+ console.log("listen wirte.local message");
+ let dest = path.join(__dirname, "..", "var","local", "petari", "app.html");
+ fs.writeFile(dest, content , (err) => {
+ if(err) {
+ console.log("dest: " + dest);
+ console.log("content: " + content);
+ console.log(err);
+ }
+ });
+});
+
+function createWindow() {
+ const preloadPath = path.join(__dirname, 'preload.js')
+ console.log(preloadPath);
+
+ let win = new BrowserWindow({
+ width:640,
+ height: 480,
+ webPreferences: {
+ enableRemoteModule: true,
+ preload: preloadPath,
+ }
+ });
+ win.loadFile('app.html');
+}
+
+
+
+app.whenReady().then(createWindow)
\ No newline at end of file
diff --git a/src/js/src/main/preload.js b/src/js/src/main/preload.js
new file mode 100644
index 0000000..e5946cf
--- /dev/null
+++ b/src/js/src/main/preload.js
@@ -0,0 +1,10 @@
+const {contextBridge, ipcRenderer} = require('electron');
+const { remote } = require('electron');
+console.log("preload");
+window.remote = remote;
+
+contextBridge.exposeInMainWorld('solitude', {
+ "write": {
+ "local" : (path,contents) => ipcRenderer.send("write.local", path,contents)
+ }
+})
diff --git a/src/js/src/preload.js b/src/js/src/preload.js
deleted file mode 100644
index e5946cf..0000000
--- a/src/js/src/preload.js
+++ /dev/null
@@ -1,10 +0,0 @@
-const {contextBridge, ipcRenderer} = require('electron');
-const { remote } = require('electron');
-console.log("preload");
-window.remote = remote;
-
-contextBridge.exposeInMainWorld('solitude', {
- "write": {
- "local" : (path,contents) => ipcRenderer.send("write.local", path,contents)
- }
-})