Nodejs command decoupled from root ant Desktop and Network

This commit is contained in:
Luis Fernando Molina committed 2021-09-16 08:54:20 +02:00
1 parent 5218b27402
commit fea83fbf87
5 files changed
+157 -110

No files matched your search

+11
View File
@@ -0,0 +1,11 @@
{
"folders": [
{
"path": "C:\\Superalgos\\Platform"
},
{
"path": "C:\\Superalgos\\Projects"
}
],
"settings": {}
}
+73
View File
@@ -0,0 +1,73 @@
exports.newDesktopRoot = function newDesktopRoot() {
/*
This module represents the execution root of the Desktop App.
We use this module that is outside the Desktop folder to
load all node dependencies and get them ready to the actual App.
*/
let thisObject = {
run: run
}
return thisObject
async function run() {
/*
The DK object is accesible everywhere at the Superalgos Desktop App.
It provides access to all modules built for this App.
*/
global.DK = {}
/*
The SA object is accesible everywhere at the Superalgos Desktop App.
It provides access to all modules built for Superalgos in general.
*/
global.SA = {}
/* Load Environment Variables */
let ENVIRONMENT = require('./EnvironmentForDebug.js');
let ENVIRONMENT_MODULE = ENVIRONMENT.newEnvironment()
global.env = ENVIRONMENT_MODULE
/*
First thing is to load the project schema file.
*/
global.PROJECTS_SCHEMA = require(global.env.PATH_TO_PROJECT_SCHEMA)
/*
Setting up the modules that will be available, defined at the Project Schema file.
*/
let MULTI_PROJECT = require('./MultiProject.js');
let MULTI_PROJECT_MODULE = MULTI_PROJECT.newMultiProject()
MULTI_PROJECT_MODULE.initialize(DK, 'DK')
MULTI_PROJECT_MODULE.initialize(SA, 'SA')
/*
Setting up external dependencies.
*/
SA.nodeModules = {
fs: require('fs'),
web3: require('web3'),
ws: require('ws'),
open: require('open'),
http: require('http'),
octokit: require("@octokit/rest"),
simpleGit: require('simple-git')
}
/*
We will use this User Profile for Testing Purposes.
{
"githubUsername": "Test-Network-Client-Profile",
"address": "0xA0dCDA81b42C5EBDc45EC2875C72274B67560246",
"privateKey": "0x5fed4817a87431c8a328d0936561e63f45b6db289adac6125b9306ded644dfe9"
}
*/
DK.TEST_NETWORK_CLIENT_USER_PROFILE_ID = "baa2f02c-2920-4edb-a103-d452fc61d82f"
DK.TEST_NETWORK_CLIENT_USER_PROFILE_HANDLE = "Test-Network-Client-Profile"
DK.TEST_NETWORK_CLIENT_USER_PROFILE_PRIVATE_KEY = "0x5fed4817a87431c8a328d0936561e63f45b6db289adac6125b9306ded644dfe9"
run()
async function run() {
DK.app = require('./Desktop/DesktopApp.js').newDesktopApp()
await DK.app.run()
console.log('Superalgos Desktop App is Running!')
}
}
}
+65
View File
@@ -0,0 +1,65 @@
exports.newNetworkRoot = function newNetworkRoot() {
/*
This module represents the execution root of the Network Node.
We use this module that is outside the Network folder to
load all node dependencies and get them ready to the actual node.
*/
let thisObject = {
run: run
}
return thisObject
async function run() {
/*
The NT object is accesible everywhere at the Superalgos Network.
It provides access to all modules built for this Network.
*/
global.NT = {}
/*
The SA object is accesible everywhere at the Superalgos Network.
It provides access to all modules built for Superalgos in general.
*/
global.SA = {}
/* Load Environment Variables */
let ENVIRONMENT = require('./EnvironmentForDebug.js');
let ENVIRONMENT_MODULE = ENVIRONMENT.newEnvironment()
global.env = ENVIRONMENT_MODULE
/*
First thing is to load the project schema file.
*/
global.PROJECTS_SCHEMA = require(global.env.PATH_TO_PROJECT_SCHEMA)
/*
Setting up the modules that will be available, defined at the Project Schema file.
*/
let MULTI_PROJECT = require('./MultiProject.js');
let MULTI_PROJECT_MODULE = MULTI_PROJECT.newMultiProject()
MULTI_PROJECT_MODULE.initialize(NT, 'NT')
MULTI_PROJECT_MODULE.initialize(SA, 'SA')
/*
Setting up external dependencies.
*/
SA.nodeModules = {
fs: require('fs'),
nodeFetch: require('node-fetch'),
web3: require('web3'),
ws: require('ws')
}
/*
We will use this User Profile for testing purposes.
{
"githubUsername": "Test-Network-Node-Profile",
"address": "0xa153469c57A91F5a59Fc6c45A37aD8dbad85e417",
"privateKey": "0xac498ae59407e6b68429a814f64da2339550f93a767578e28c161ff119159271"
}
*/
NT.NETWORK_NODE_USER_PROFILE_HANDLE = "Test-Network-Node-Profile"
NT.NETWORK_NODE_USER_PROFILE_PRIVATE_KEY = "0xac498ae59407e6b68429a814f64da2339550f93a767578e28c161ff119159271"
NT.app = require('./Network/NetwokNode.js').newNetworkNode()
NT.app.run()
console.log('Superalgos Network is Running.')
}
}
+4 -59
View File
@@ -7,65 +7,10 @@ The Superalgos Desktop is one of the 3 clients of the Superalgos Network:
Users can unse any of these clients for their social trading activities. Users can unse any of these clients for their social trading activities.
This module is the starting point of the Superalgos Desktop App. This module represents the Nodejs command that users have to start the Desktop App..
*/ */
/* let APP_ROOT = require('./DesktopRoot.js')
The DK object is accesible everywhere at the Superalgos Desktop App. let APP_ROOT_MODULE = APP_ROOT.newDesktopRoot()
It provides access to all modules built for this App. APP_ROOT_MODULE.run()
*/
global.DK = {}
/*
The SA object is accesible everywhere at the Superalgos Desktop App.
It provides access to all modules built for Superalgos in general.
*/
global.SA = {}
/* Load Environment Variables */
let ENVIRONMENT = require('./EnvironmentForDebug.js');
let ENVIRONMENT_MODULE = ENVIRONMENT.newEnvironment()
global.env = ENVIRONMENT_MODULE
/*
First thing is to load the project schema file.
*/
global.PROJECTS_SCHEMA = require(global.env.PATH_TO_PROJECT_SCHEMA)
/*
Setting up the modules that will be available, defined at the Project Schema file.
*/
let MULTI_PROJECT = require('./MultiProject.js');
let MULTI_PROJECT_MODULE = MULTI_PROJECT.newMultiProject()
MULTI_PROJECT_MODULE.initialize(DK, 'DK')
MULTI_PROJECT_MODULE.initialize(SA, 'SA')
/*
Setting up external dependencies.
*/
SA.nodeModules = {
fs: require('fs'),
web3: require('web3'),
ws: require('ws'),
open: require('open'),
http: require('http'),
octokit: require("@octokit/rest"),
simpleGit: require('simple-git')
}
/*
We will use this User Profile for Testing Purposes.
{
"githubUsername": "Test-Network-Client-Profile",
"address": "0xA0dCDA81b42C5EBDc45EC2875C72274B67560246",
"privateKey": "0x5fed4817a87431c8a328d0936561e63f45b6db289adac6125b9306ded644dfe9"
}
*/
DK.TEST_NETWORK_CLIENT_USER_PROFILE_ID = "baa2f02c-2920-4edb-a103-d452fc61d82f"
DK.TEST_NETWORK_CLIENT_USER_PROFILE_HANDLE = "Test-Network-Client-Profile"
DK.TEST_NETWORK_CLIENT_USER_PROFILE_PRIVATE_KEY = "0x5fed4817a87431c8a328d0936561e63f45b6db289adac6125b9306ded644dfe9"
run()
async function run() {
DK.app = require('./Desktop/DesktopApp.js').newDesktopApp()
await DK.app.run()
console.log('Superalgos Desktop App is Running!')
}
+4 -51
View File
@@ -7,57 +7,10 @@ The Superalgos Network offers 3 types of services:
Users can decide which services to run at their node.(TODO) Users can decide which services to run at their node.(TODO)
This module is the starting point of the Network Node. This module represents the Nodejs command that users have to start the Network Node..
*/ */
/* let APP_ROOT = require('./NetworkRoot.js')
The NT object is accesible everywhere at the Superalgos Network. let APP_ROOT_MODULE = APP_ROOT.newNetworkRoot()
It provides access to all modules built for this Network. APP_ROOT_MODULE.run()
*/
global.NT = {}
/*
The SA object is accesible everywhere at the Superalgos Network.
It provides access to all modules built for Superalgos in general.
*/
global.SA = {}
/* Load Environment Variables */
let ENVIRONMENT = require('./EnvironmentForDebug.js');
let ENVIRONMENT_MODULE = ENVIRONMENT.newEnvironment()
global.env = ENVIRONMENT_MODULE
/*
First thing is to load the project schema file.
*/
global.PROJECTS_SCHEMA = require(global.env.PATH_TO_PROJECT_SCHEMA)
/*
Setting up the modules that will be available, defined at the Project Schema file.
*/
let MULTI_PROJECT = require('./MultiProject.js');
let MULTI_PROJECT_MODULE = MULTI_PROJECT.newMultiProject()
MULTI_PROJECT_MODULE.initialize(NT, 'NT')
MULTI_PROJECT_MODULE.initialize(SA, 'SA')
/*
Setting up external dependencies.
*/
SA.nodeModules = {
fs: require('fs'),
nodeFetch: require('node-fetch'),
web3: require('web3'),
ws: require('ws')
}
/*
We will use this User Profile for testing purposes.
{
"githubUsername": "Test-Network-Node-Profile",
"address": "0xa153469c57A91F5a59Fc6c45A37aD8dbad85e417",
"privateKey": "0xac498ae59407e6b68429a814f64da2339550f93a767578e28c161ff119159271"
}
*/
NT.NETWORK_NODE_USER_PROFILE_HANDLE = "Test-Network-Node-Profile"
NT.NETWORK_NODE_USER_PROFILE_PRIVATE_KEY = "0xac498ae59407e6b68429a814f64da2339550f93a767578e28c161ff119159271"
NT.app = require('./Network/NetwokNode.js').newNetworkNode()
NT.app.run()
console.log('Superalgos Network is Running.')