As its name suggests, the website builder should be a desktop application that will allow users to easily create websites. Basically, the program will have to provide the users with a simple website layout, such as the one which can be seen here . After they have completed editing all the desired sections, they can simply save and create the website/html version for publishing.
The users will be allowed to edit the content or images of the website by simply working on the basic structure which is provided as a template. One or more templates can be provided, and they should at least contain the following editable sections:
Logo (with link to homepage)
Header, which can be customized for each menu item. Can contain both text and images.
Left or right menu
The content section of the page
A contact page
Will contain a form for contacting the owner which will send an email to a customizable email address.
Will also allow integrating an interactive map, by simply using the Google Maps API and allowing the user to set the coordinates for their desired location.
The program will have to allow the users to edit the content in two separate views:
Design view (in which you can arrange the visual elements)
Code view (where you can actually see and edit the HTML code directly)
Optionally, a split view can be created as well, in which half the screen is in design view and the other half in code view.
Additionally, it will have to define a set of predefined modules which can be used to easily create new web pages. These modules can be:
Form elements, such as
The software can be written in any language of choice as long as it provides the above mentioned functionalities. Any additional features that you think of and may help users bring their ideas to life through an easy workflow are more than welcome.
 [url removed, login to view]