Description
In https://github.com/orgs/plotly/projects/3, many of our issues involve Dash's front-end: Front-end error handling, front-end live-DAG, front-end hot-reload.
I'd like to open this issue to discuss an architecture for handling these requirements.
Some framing:
JavaScript Error Handling
- We should expose Dash's front-end errors to the users. Currently, they are only available in the browser's dev tools, which is too hidden for our community.
For example, consider Atom's plugins:
Python Error Handling
Could we use the same architecture that we use for JavaScript errors to display python errors? That way, the user never needs to look at the terminal for errors, they only need to focus on their app.
For example, consider create-react-app:
Hot Reloading
If we had hot-reloading, could we build a nice little "control bar" that users could use to configure hot reloading? For example, it could:
- Tell the user if hot-reloading is on or off
- Users could turn hot-reloading on and off
- It could provide build times or "last updated" times
Displaying the DAG
If we wanted to display the DAG to the user, could we place this in the Dash Dev Tools container as well?
cc @plotly/dash