angrykoala / gaucho Goto Github PK
View Code? Open in Web Editor NEWMinimalist task launcher
Home Page: https://angrykoala.github.io/gaucho/
License: GNU General Public License v3.0
Minimalist task launcher
Home Page: https://angrykoala.github.io/gaucho/
License: GNU General Public License v3.0
The menu should allow the current actions, but also rename suite (#17) and any other future action
Currently, tabs will have a different size depending on the name, and sometimes will not adapt properly to the screen.
Adapt the tabs so they have a fixed width, and use Truncation if texts are too long
A default tasks could be added with a couple of examples to use when no tasks.json is present (on first use)
UserConfig (main thread) should communicate with rendering threads, updating config values if needed
Electron allows editing the window menu, improve that menu with all necessary options
There should be a way to check all tasks currently running
If no tasks.json is present, create a new one with default data (related to #16 ).
Gaucho must not crash if not tasks.json exists
Add some instructions and screenshots
task output may look bad depending on the task and the OS.
right-click button should display a context menu with options
An optional suite could be created with all recently used tasks. This suite should only link to the original tasks (running/stopped recently used will run/stop original task)
Allow moving tasks so it is possible to change the order or change the suite of the task
A page with information about Gaucho and links to download latest version
To avoid unnecessary calls to events, navbar menu should have an output (selected) and navbar should handle the action or event
Use .html files for the template field on vue.js components
Either reverting to the non-executing icon or using a new one.
Stop all tasks when closing so background tasks are not left opened
using https://github.com/electron-userland/electron-packager or https://github.com/electron-userland/electron-builder provide a build mechanism to generate platform-specific executables for the releases
Each task should need a title, command, and path
Check if it would be better to have "close" or something similar instead of kill when stopping tasks.
It could also be useful to have both options
Tools such as pm2, and load/process/resources loggers could be added to gaucho as options to provide real time metrics of executed tasks
It should be possible to add/remove and modify tasks at runtime (while are stopped) updating tasks.json in the process
Due to the need of jQuery and javascript dependencies of materializecss, it may be convenient to change to a simpler framework without dependencies
Changelog file must be added as part of the documentation
The task log should always be scrolled to the bottom unless the user scrolls up.
Related question in SO:
http://stackoverflow.com/questions/40730116/scroll-to-bottom-of-div-with-vue-js
Use tabs to have multiple task suites
Remove the default system frame so Gaucho has a more material-ish appearance. This will require adding the controls (remove, minimize, drag etc..) to other place
All the relevant info: https://github.com/electron/electron/blob/master/docs/api/frameless-window.md
Maybe it could be possible to simply change the frame style or use a plugin or something
Limit the size of the output (and the speed) to avoid extreme memory consumption (for example, the command yes yes
blocks gaucho
Allow user to create and remove tabs
Add and info menu with links, version, etc..
A nice mate would make a good icon
Currently, yerbamate is executed on the view threads of electron. Maybe this should be executed on the main thread, leaving the view threads only to send and receive messages/events
The building process should clean, build and compile if necessary.
To do a proper building process, probably gulp will be required
Add a start/finish/duration time to the main bar (with some kind of gray color text)
Currently, suites names can only be changed editing tasks.json
A task should accept env and arguments, those may be added as part of the edit menu of as a separate menu
This task includes the following:
Load script or exe (instead of executing command) as a task
A tool (preferably as part of gaucho) to update gaucho.
This should get the latest release from github (or npm?) and update all app code
Using https://www.npmjs.com/package/ansi-to-html parse the output of a task to html before showing it into the task output viewer. This should provide colors among other display improvements
Keep in mind that this should be done as the last step. text stored in the task itself should still be the raw output.
Things to add to the readme:
While editing a task, when save is pressed, something should show that the changes where saved.
For example, close the edit menu automatically
Some classes/modules should be working on main thread, not in rendering thread to avoid bottlenecks and have a better structure:
When editing a tab text, it moves down, fix the style of edit tab to avoid this
Export the tasks.json (as a gtask.json file or something like that) to be able to import/load into a different gaucho instance ( #20 )
The screen should start with the same size as the last time. Store the current screensize as part of the configuration
Add an option to import a gtask.json file.
Importing the file will (for now) override the current suites and tasks, so an alert ( #162 ) should be used to let the user know and confirm if that's what he wants.
Remember to stop all executing tasks when doing this, as they will be removed, this must be done after the user confirmed the alert
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.