Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve DX when developing extensions #97

Open
2 of 4 tasks
plouc opened this issue Aug 19, 2016 · 3 comments
Open
2 of 4 tasks

Improve DX when developing extensions #97

plouc opened this issue Aug 19, 2016 · 3 comments
Assignees
Milestone

Comments

@plouc
Copy link
Owner

plouc commented Aug 19, 2016

Must have

Nice to have

  • Provide support for automatic server restart (nodemon ?)
@plouc plouc added this to the v2 milestone Aug 19, 2016
@plouc plouc self-assigned this Aug 19, 2016
@robblovell
Copy link

robblovell commented Aug 9, 2018

Hi, Beyond development of extensions, is support being added for hot reload of the dashboard based on both adding of extensions and configuration changes? I guess this would look something like this:

Add a new extension to App.jsx & server.js, and/or changes to the config.js file would hot reload the dashboard. I would imagine in this mode, that changes to the jsx or js files would run weback and rerun the server. Changes to the config.js file would not require webpack reloads, but the server would need to watch for changes to the config file. (actually, I am unsure if the config file is change if webpack has to run...)

Is this the vision?

@plouc
Copy link
Owner Author

plouc commented Aug 9, 2018

@robblovell, hot reloading UI is for development purpose only as the code isn't optimized and you've got an extra websocket connection.

However the configuration is reloaded when it changes (yaml) and doesn't require a server restart, the UI receives a notification with the new config.

If you add a new extension, you'll have to restart the server though, but something like nodemon could be used, I implemented this workflow for another project.

@plouc
Copy link
Owner Author

plouc commented Aug 9, 2018

You can try the actual implementation with the master branch, using the following commands:

make init
make demo-install
make demo-start-ui
# another session
make demo-start-server

you have several configs available, you can try another config using:

demo-start-server CONF=conf/config-json.yml

for example

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants