-
Notifications
You must be signed in to change notification settings - Fork 224
Description
Hello! I would like to debate with you the idea of evolving the coala-html project into a true GUI for coala. At the moment, we use coala-html only to see the result of running coala on a directory and that's all. We could do so much better than that.
My idea is to combine all other projects in a nice and simple interface, one could start using right away. My first experience with coala was quite the opposite of what I was expecting...not so intuitive and natural. It took me an hour to get comfortable with the environment. My honest opinion is that I can't be the only one to face those problems. Imagine that I had some trouble by understanding how it works, and I have a lot of technical backgrounds. How about the common user? We need to improve the user's experience so that it will feel as intuitive as it should.
I would like give coala a proper GUI, similar to what git has. It took me about two weeks before finding that we have a coala-quickstart project that generates a coafile for your projects. Why not put a button to do that, the first time you open a project that does not have one? We could facilitate installation of bears and coafile writing too. Hovering a bear could show up their description as well.
What I am thinking of is an interface that combines the existing projects, not rewriting what already exists. So when someone tries to use a feature he has not previously installed, an install prompt would ask him of he want it installed automatically. This project is aiming mostly at beginners, not advanced users of coala. We can still show the CLI commands we are executing, to let the user learn what he is actually doing.
Going technical now. Firstly, I would like to port the coala-html project to a framework like electron, keeping the current functionality. Other projects don't really need modifications to work with this, as I am calling their CLI commands and catch their output. Or another better approach would be to import their modules and call them, I am wait for a suggestion on this. A possible approach to combine python and electron I found here: https://www.fyears.org/2017/02/electron-as-gui-of-python-apps-updated.html
Firstly, adding the coala-quickstart support and a coafile editor are a must. Good for a beginner would be to add a panel with all bears and a small description on what they do and need, and also their optional parameters. For globbing files, I would like to show what files will be used when coala is run and what files are not, or even let the user check what files should be used and try to generate a glob for him. Next up is a bear management panel that uses the cib project and allows you to install or remove bears and their dependencies very easy.
I would also add a terminal-like window that displays the commands runned, to give the user an idea of what is going on behind, so he can still learn something.
What do you say about this? Would you consider this useful? @Udayan12167 @sils @sims1253
I am posting here as i am not able to write on coala-html, because i am not respecting it's issue template. I would like to help coala evolve, it's not necessarely a project for GSoC, but to improve the user experience.