IDE
This page is very old and very out of date!
Designs for a GNOME application development IDE.
Contents
Involved Parties
Goals
- Reduce the amount of work required to produce an app
- Reduce the amount of specialist knowledge required to produce an app
- Reinforce the recommended workflow for creating an app
- Help to avoid errors
- Cater to individuals and small teams
Features:
- Project creation / templates
- Set GNOME version
- Handle dependencies (particularly relevant for application bundles)
- GUI editing
- Code editing
- Code autocompletion
- Automatic testing for common errors
- View files side by side
- Debugging / testing
- Version control
- Building
- Integrated documentation
Relevant Art
Visual Studio
See also the GitHub integration with Visual Studio for an example of a simplified repository checkout workflow.
Android Layout Editor
Xcode
MonoDevelop
SublimeText2
QtCreator
LightTable
See also the website, the original blog post and this video.
Discussion
- Templates not directly part of the IDE, usable in a strictly commandline workflow. Can come before the IDE is ready.
Anjuta already has its own project template format. The template are described in XML and GNU autogen is used to generate the files. There is a description here https://developer.gnome.org/libanjuta/3.9/project-wizard-format.html. I think it can be used here perhaps with some improvements. Currently, it doesn't work outside Anjuta because it needs some answers from the user but we could ask this in a terminal without changing the format. -- SebastienGranjoux
- I think it should also include integrated translation to other languages, integrated GSettings schema editor, integrated data directory editor (what to put into /usr/share/appname), integrated application help editor.
- Wouldn't these abbreviations (UI, VCS, Docs) become way too long for titlebar in some translations? Wouldn't it be better to use a sidebar?
Tentative Design
Very old designs:
Comments
Providing a tool that fits in the GNOME app development workflow is a great idea, but the workflow is not clear in the mockups. For example, the name of the VCS tab tells me about the tool I'm using, not the task I'm trying to accomplish.
The name may reflect what is being produced... something like "Application Projects"?
Regarding the "UI" tab, what would go there? Something like Glade? Replacement or integration?
Last, isn't Jhbuild the biggest amount of work required to produce an app? Couldn't the app set it up for the developer?
Cheers -- SebastienNicouleaud 2013-11-24 07:34:28