freeflowuniverse / crystaltools

Apache License 2.0
2 stars 9 forks source link

refactor digital twin frontend to use publish tools backend [development_publish2] #112

Closed despiegk closed 3 years ago

despiegk commented 3 years ago

principle

requirements

remarks

advantages of this approach

other info

Hamdy commented 3 years ago

We have few comments on the issue

1- To remove publish function means we need to have a web interface int the nodejs servr with sites.json content which we can add/remove sites/wikis then after saving we reload the file and pull new content or so is this correct?

why do we need this?

how are we going to publish threefold sites/wikis in this case ?

2- Having separate publishtools daemon is more complex than doing same functionalities in nodejs server

  1. if sites.json / config changed we need to call publishtools to pull or build websites or reload wikis in memory
  2. inconsistency , now we gonna serve wikis from publishtools daemon memory and websites from file system?
  3. separate http api to get content ? why not do flattening on when there's new change and we can cache content of wikis in the nodejs memory ?

no: we have already development functionality, so there is nithing new 2 no: we will also do websites same way eventually

OK

2- opengraph can be simplified yes

3- digitaltwin frontend was separated into separate vue.js site that can be served with publisher itself so we can add it as this is done already

{
                "name": "www_digitaltwin",
                "url":  "https://github.com/threefoldtech/www_digitaltwin",
                "branch":       "",
                "pull": false,
                "reset":        false,
                "cat":  2,
                "shortname":    "digitaltwin",
                "path_code":    "",
                "domains":      ["digitaltwin.threefold.io"],
                "descr":        "Digital twin frontend",
                "groups":       [],
                "acl":  [],
        },
}

why vuejs?

frontedn of digitaltwin from jimber is vue.js not gridsome, needed little tweak to support building