commit f3816f7ba13269a1bca7cfdf111f36a91b84e046
parent f5ad287c14125d8cec237c71a3dad1878e67e7cd
Author: Tomas Hlavaty <tom@logand.com>
Date: Wed, 28 Aug 2019 14:19:07 +0200
README updated from html
Diffstat:
M | README | | | 91 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- |
1 file changed, 88 insertions(+), 3 deletions(-)
diff --git a/README b/README
@@ -1,4 +1,89 @@
-webglade -- JavaScript library to dynamically create XUL GUI from
-Glade XML files.
+# webglade: JavaScript library to dynamically create XUL GUI from Glade XML files
-Written by Tomas Hlavaty <tom at logand.com>
+webglade is a JavaScript library to dynamically
+create <a href="http://www.mozilla.org/projects/xul/">XUL</a> GUI from
+<a href="http://glade.gnome.org/">Glade</a> XML files. It is a Rapid
+Application Development tool for developing Rich Internet
+Applications.
+
+## Download
+
+The latest webglade tarball release can be
+downloaded <a href="webglade.tar.gz">here</a>.
+
+## Examples
+
+<a href="//logand.com/sw/webglade/hw/">hw</a> is a minimal 'hello
+world' example.
+Open <a href="//logand.com/sw/webglade/hw/hw.xul">hw.xul</a> to see it
+in action.
+
+<a href="//logand.com/sw/webglade/hw2/">hw2</a> is another trivial
+example.
+Open <a href="//logand.com/sw/webglade/hw2/hw2.xul">hw2.xul</a> to see
+it in action.
+
+<a href="//logand.com/sw/webglade/htv3/">htv3</a> shows simple
+callback handler.
+Open <a href="//logand.com/sw/webglade/htv3/htv3.xul">htv3.xul</a> to
+see it in action.
+
+<a href="//logand.com/sw/webglade/mab/">mab</a> is an example based on
+the excellent <a href="http://www.faser.net/mab/">MAB</a> (Mozilla
+Amazon Browser).
+Open <a href="//logand.com/sw/webglade/mab/xul/mab.xul">mab.xul</a> to
+see it in action. The XUL part of MAB is replaced by a Glade XML
+file. Unfortunately, MAB has been discontinued since Amazon changed
+their web service so this example always shows the same data.
+
+## Usage
+
+- Create user interface using Glade UI designer.
+
+- Write your JavaScript application and Glade/XUL initialization code.
+
+- Create a XUL file which loads all necessary JavaScript files, sets
+ up CSS style and calls your initialization function.
+
+- Open your XUL file in a XUL enabled web browser.
+
+See <a href="//logand.com/sw/webglade/hw/">hw</a> for a simple 'hello
+world' application.
+Open <a href="http://logand.com/sw/webglade/hw/hw.xul">hw.xul</a> file
+to run it in your web browser. Note that JavaScript must be enabled.
+
+## Goals
+
+- Load Glade XML file(s) containing description of (Gtk) widgets into
+ a XUL enabled web browser and create similar XUL widgets.
+
+- Connect callbacks specified in the Glade XML file(s) to user's
+ JavaScript code.
+
+Allow users to implement and use their own custom widgets.
+
+## Why XUL?
+
+Ideally, webglade would support all web browsers with DOM scripting,
+DHTML and AJAX. There are many web toolkits webglade could use for
+backend. However, after experimenting with HTML, XUL and XAML, I
+settled for XUL which works best and requires little involvement with
+a specific web toolkit.
+
+## Development
+
+The code was written
+using <a href="http://common-lisp.net/project/parenscript/">ParenScript</a>
+and compiled to JavaScript using
+Emacs <a href="//logand.com/repo/ls-mode/">ls-mode</a>.
+
+## License
+
+webglade is licensed under the terms of the GPL license. Details are
+contained within
+the <a href="//logand.com/sw/webglade/COPYING">COPYING</a> file,
+included with the distribution.
+
+## Feedback
+
+Please send <a href="../../contact.html">me</a> an email.