#################################################
#################################################
Client Side ES6 has been the standard (app folder) Server side ES6 usage has been kept to minimal (actually i was also thinking whether i shall be doing this in ES5 only) for purposes of this to be useful to someone (in my team) or otherwise :-)
riot-dyna-config
folder to one folder above riot-dyna
app folder(outside this folder). Edit values in the config files found
For more on ideal directory structure read this https://gist.github.com/saurshaz/464fcb960c5469e9b271b7ffe5fbe3c6#file-my_node-md
-- chmod +x riotserve.sh
to enable script to run webpack
based front-end code necessary permissions -- Do a npm install npm i
-- start mongo server (if not already running). mongod
-- in 1st terminal tab run ./riotserve
(to serve frontend content with a auto reload watch) from one directory above the repo directory -- in 2nd terminal tab run
npm run server` from the repo directory (to start backend node server)
to start in stage
NODE_ENV=prod node server/index.js
for stage (affects env variables loaded)home
home-container
-> home.html
appbrowser
-> home.html
app
app-container
-> app.html
dev
dev-container
-> dev.html
fylerclient
-> dev.html
jsonviewer
-> dev.html
appbrowser
-> dev.html
test
test-container
-> test.html
appbrowser
-> test.html
Jump to http://localhost:6600/home#home
for demo home page
http://localhost:6600/view/hello/testapp/fyler/dev.html?p=pane1&cid=appbrowser&a=b&c=d
for testapp page
tester
component)?footer=false&header=false
querystring params to control header and footer to be appearing import StoreWatcher from '../event-manager/mixins/storex'
<comp1>
<div>
<p> Hello World </p>
.... ...
</div>
</comp1>
let self = this
// for validations
// - add a validationform
// - add a validate function in the handlers['<tag-name>'] section to set result
// into state.<store>.<validationform>.validated property
self.stores = ['user'] // stores to watch
self.validationform = ['loginform'] // validation form . this will have validated field
// for store watching
// import StoreWatcher from ../../event-manager/mixins/storex
// self.mixin(StoreWatcher)
self.mixin(StoreWatcher)
- server
- core (visible but non-editable to end-users)
- fn1
- fn2
....
- thirdparty (visible and partially editable to end-users)
- fn1
- fn2
....
- client
- functions
- core (visible but non-editable to end-users)
- fn1
- fn2
....
- thirdparty (visible and mostly/partially editable to end-users. restrict things that can disturb)
- fn1
- fn2
....
- components (visible and totally editable to end-users)
- a.html
- b.html
- .....
- router (visible and partially editable to end-users. based on user's entries app will route)
- index.js
- config (visible and editable to end-users. based on user's entries app will initialize)
- main.js
- index.html (main file) (visible and partially editable to end-users. based on user's entries app will start)
- state-manager (visible and partially editable to end-users. based on user's entries app will link to events and data)
- app-store
- event_mapping
- event_constants
Anything else
- ...
- ...