It would be great if there would be a button to start multiple tasks at once e.g. start test in watch mode & start dev server.
I'm not sure if this is what beginners are needing but I think it's good to have the tests and the devServer running with a single click.
This is a large task as there are many thing required so it makes sense to have a batch start:
Change test to interactive mode so it watches the test and the user can re-run tests with buttons - I'll create a separate issue for this. (see #328)
A overview of currently running tasks. This is probably optional but it would be great to have it. I think something like an icon bar with lights about the current status of the task including indicating of test errors (if any). No separate issue as we can track/add this here.
Describe the solution you'd like
Default button that will run or stop a set of tasks that are pre-defined by Guppy e.g. test, devServer (& maybe later linting, flow,... which we don't have right now - linting/flow could be added as addon/plugin)
Configurable task button instead of the pre-defined that renders a second button
If we're having addons/plugins for linting/flow... we could add a setting so the user can decide if the plugin should start with the default button click. (future idea - can't be added at the moment)
I think we can add the configurable task to the script to the package.json. I imagine something like guppy:launchDev. The first part is required as guppy so we can pick it and the second so we can map it to a user defined string if the user modified it in Guppy.
I would start with the default button and name it like Start with a tooltip to show what will be started. Not sure where the button should be. It could be in the overview to start & stop all tasks.
Todos for this issue
[ ] Add Start button to Project page (this will probably live later in the overview bar)
[ ] Create overview bar and add the start button and task indicators there. (Can be added after the core feature of starting/stopping mutliple tasks is working)
[ ] Handle start/stop of multiple tasks by adding a generator taskRunMultipe & taskAbortMultiple to task.saga. Also check if taskAbort could be modified to abort all started tasks if requested wtih the action.
[ ] Write tests for task.saga
I think this is not a top priority feature. So we should focus on other issues first.
Discussion
Is it required to customize the default button tasks? E.g. add a configuration option in package.json inside guppy key. I think we could do this later as it's OK to have this as not changeable.
How to add custom naming for the custom batch start button? Is it OK to pick the naming from the script key as default e.g. launchDev in the example above? Then the user can modify it and that will be tracked in Guppy.
Where to add the start button in ProjectPage? I think at the Open in Editor and Open folder bar it doesn't make sense as this is not related to these actions. In the overview bar it would make sense but not sure if this is the best place.
Is it OK to add the custom batch to scripts inside package.json? Or should this be inside guppy key?
It would be great if there would be a button to start multiple tasks at once e.g. start test in watch mode & start dev server. I'm not sure if this is what beginners are needing but I think it's good to have the tests and the devServer running with a single click.
This is a large task as there are many thing required so it makes sense to have a batch start:
Describe the solution you'd like
Default button that will run or stop a set of tasks that are pre-defined by Guppy e.g. test, devServer (& maybe later linting, flow,... which we don't have right now - linting/flow could be added as addon/plugin)
Configurable task button instead of the pre-defined that renders a second button
If we're having addons/plugins for linting/flow... we could add a setting so the user can decide if the plugin should start with the default button click. (future idea - can't be added at the moment)
I think we can add the configurable task to the script to the
package.json
. I imagine something likeguppy:launchDev
. The first part is required asguppy
so we can pick it and the second so we can map it to a user defined string if the user modified it in Guppy.I would start with the default button and name it like
Start
with a tooltip to show what will be started. Not sure where the button should be. It could be in the overview to start & stop all tasks.Todos for this issue
Start
button to Project page (this will probably live later in the overview bar)taskRunMultipe
&taskAbortMultiple
totask.saga
. Also check iftaskAbort
could be modified to abort all started tasks if requested wtih the action.task.saga
I think this is not a top priority feature. So we should focus on other issues first.
Discussion
package.json
inside guppy key. I think we could do this later as it's OK to have this as not changeable.custom
batch start button? Is it OK to pick the naming from the script key as default e.g.launchDev
in the example above? Then the user can modify it and that will be tracked in Guppy.ProjectPage
? I think at the Open in Editor and Open folder bar it doesn't make sense as this is not related to these actions. In the overview bar it would make sense but not sure if this is the best place.package.json
? Or should this be inside guppy key?