No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
rayburgemeestre 78295c1048 Add .gitignore hace 6 años
.idea Add webassembly support. hace 6 años
dist Finally fix dev mode by setting contentBase. hace 6 años
docker_api Add webassembly support. hace 6 años
docker_web Add Kubernetes config and some small fixes. hace 6 años
kube Add example cert.yaml and fix Ingress hace 6 años
src Add webassembly support. hace 6 años
.gitignore Add .gitignore hace 6 años
.travis.yml Add travis CI and move files around, introduced Makefile hace 6 años
Makefile Improve README hace 6 años
README.md Improve README hace 6 años
package-lock.json Add emacs mode hace 6 años
package.json Add emacs mode hace 6 años
webpack-dev.config.js Finally fix dev mode by setting contentBase. hace 6 años
webpack.config.js Finalize Dockerfile hace 6 años

README.md

Project

The project constists of three parts:

  • The front-end (./src -> when compiled ./dist) UI based on VueJS.
  • The back-end API (./docker_api) uses a very simple Python Flask server, the back-end is deployed inside a docker container with the Cheerp compiler.
  • The docker image for the front-end (./docker_web) that only hosts the statically build files.

One part that is not finished yet is storage, and sharing code. This is the next TODO on my list.

Build

For nodejs projects it can be difficult to setup a dev environment. It’s probably important you use a new nodejs version, at least one compatible the one used: node-v10.12.0-linux-x64.

cd node-v10.12.0-linux-x64/bin
export PATH=$PATH:$PWD

Please verify that it’s working with:

trigen@zenbook:~/projects/cheerpweb[master]> node -v
v10.12.0
trigen@zenbook:~/projects/cheerpweb[master]> npm -v
6.4.1

Then use the Makefile when developing:

  • make dev - build and start a hot swapping debug server (very convenient while developing)
  • make api_dev - start the API server in a docker image running on port 5000.

One note on the above: also uncomment the line that uses //localhost:5000/compile instead of https://cheerp.cppse.nl/api/compile in src/App.vue.

Other useful directives:

  • make build - build the release version (in ./dist) of the UI (takes a while)
  • make docker_api - build the container that hosts the Cheerp compiler + Python Flask API server.
  • make docker_web - build the container that hosts the UI’s static files.
  • make prepare - wget the node version for this project, extract and install it to /usr/local.
  • make release - there are a bunch of other Makefile directives, but better just use this one to do everything required for a release.

Build status

Build Status MPL 2.0 License

Resources used for this project

Followed this readme for webpack: https://webpack.js.org/guides/getting-started/

Followed this for bulma: https://bulma.io/documentation/customize/with-webpack/

For vuejs: https://itnext.io/vuejs-and-webpack-4-from-scratch-part-1-94c9c28a534a

For devserver: https://itnext.io/vue-js-and-webpack-4-from-scratch-part-2-5038cc9deffb

Pass “reference” to child components https://stackoverflow.com/questions/40915436/vuejs-update-parent-data-from-child-component