create-marcel-plugin v1.1.0
marcel

Marcel is a configurable plugin based dashboard system.
:construction: This README is still a work in progress...
Create a plugin
Marcel is based on plugins, and we need you to complete the collection!
By convention, a plugin should have a name begin with marcel-plugin-* (marcel-plugin-text for example).
This ways, you can find a list of all available plugins by searching them on github
See the marcel-plugin package to know more about plugin creation.
Build
marcel is composed of 3 parts:
apiis the backend written in go.backofficeis the single page app used to configuremarceland create medias.frontendis the single page app actually displaying a media.
Requirements
- go > 1.11.0 (
marcelis using go modules) - node > 9.0.0
npm > 5.0.0
Backend
Building the backend is simple, you can just install the main go package :
$ go installThis will make the marcel command available (if your go bin folder is in your PATH)
Backoffice and Frontend
The backoffice and the frontend are both regular React application. To build them, go to their respective folder and run
$ npm i && npm run build
# or with yarn
$ yarn && yarn buildUsage
The backend can be launched with the marcel command line :
$ marcel apiThis will serve the api on the default port 8090.
You should then serve api, backoffice and frontend behind reverse proxy and serve this routes :
/: the backend (backend/build)/front: the frontend (frontend/build)/api: the backend (localhost:8090by default)
Developpement
To have a working development environment, you have to run this 3 commands in separated terminals :
$ cd backoffice && yarn && yarn start
$ cd frontend && yarn && yarn start
$ go build && ./marcel api --secure=falseYou can then begin to modify sources. The backend is not compiled in watch mode, so you have to restart it manually. The backoffice and the frontend are live-reloaded.
License
This project is licensed under the Apache 2.0 License - see the LICENSE file for details