doc/index.html in masterview-0.2.5 vs doc/index.html in masterview-0.3.0

- old
+ new

@@ -1,14 +1,14 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!DOCTYPE html +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> - <title>MasterView - Rails-optimized (x)html friendly template engine</title> + <title>MasterView&trade; - Rails-optimized (x)html friendly template engine</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta http-equiv="Content-Script-Type" content="text/javascript" /> <link href="./stylesheets/masterview.css" rel="stylesheet" type="text/css" /> @@ -23,333 +23,199 @@ <div id="headerNav"> <div> &middot;&nbsp; <a href="./index.html">Doc Home</a> &nbsp;|&nbsp; +<a href="./about.html">About</a> +&nbsp;|&nbsp; <a href="./installation.html">Installation</a> &nbsp;|&nbsp; <a href="./configuration.html">Configuration</a> &nbsp;|&nbsp; <a href="./guide.html">Usage</a> &nbsp;|&nbsp; <a href="./directives.html">Directives</a> -&nbsp;&nbsp; -<a href="./media_list.html">Media (Videos/Illustrations)</a> +&nbsp;|&nbsp; +<a href="./developer.html">Developers</a> +&nbsp;|&nbsp; +<a href="./media_list.html">Screencasts</a> &nbsp;&middot; </div> </div> <div id="pageBody"> <div id="bodyContent"> -<h1>MasterView - Rails-optimized (x)html friendly template engine</h1> +<h1>MasterView&trade; - Rails-optimized (x)html friendly template engine</h1> <p> -MasterView is a ruby/rails +MasterView&trade; is a ruby/rails optimized HTML/XHTML friendly template engine. It is designed to use the <b>full power and productivity of rails including layouts, partials, and rails html helpers</b> while still being editable/styleable in a <b>WYSIWYG</b> HTML editor. </p> -<p> -MasterView is distributed as a gem -or a plugin. You may install it as a gem and then generate a lightweight -plugin which mainly refers to the gem <b>or</b> you can simply install as a -plugin which is self contained. I personally prefer installing as a gem for -ease of management, however if you are running at a shared hosting -environment you might not have authority to install this gem so you may -install as a self contained plugin. -</p> -<p> -If you are interested in the background story behind all this, it is at the -end of this page. -</p> <p> <table summary="project location and author information"> <tr> <td>Author:</td> - <td>Jeff Barczewski (jeff.barczewski <span class="class"> @ </span> gmail.com)</td> + <td style="padding-right: 10px;">Jeff Barczewski (jeff.barczewski <span class="class"> (at) </span> gmail (dot) com)</td> + <td colspan="2">&nbsp;</td> </tr> -<tr><td>Primary developers:</td><td>Jeff Barczewski, Deb Lewis</td></tr> <tr> + <td>Primary developers:</td><td>Jeff Barczewski, Deb Lewis</td> + <td colspan="2">&nbsp;</td> +<tr> + <td>License:</td> + <td>MIT open source license (like Rails)</td> + <td rowspan="4">Mailing lists:</td> + <td rowspan="4">Join mailing lists at <a href="http://rubyforge.org/mail/?group_id=1290">rubyforge.org</a> + <div style="margin-left: 10px;"><code>masterview-announce</code> - MasterView release announcements</div> + <div style="margin-left: 10px;"><code>masterview-users</code> - Discussion, problems, ideas, suggestions for MasterView</div> + <div style="margin-left: 10px;"><code>masterview-devel</code> - MasterView project developer list</div> + </td> +</tr> +<tr> <td>Website:</td> <td><a href="http://masterview.org">masterview.org</a></td> </tr> <tr> <td>Rubyforge project:</td> <td><a href="http://rubyforge.org/projects/masterview/">masterview</a></td> </tr> -<tr><td>License:</td><td>MIT open source license (like Rails) -</td></tr> -<tr> -<td>Mailing lists:</td> -<td>Join mailing lists at <a href="http://rubyforge.org/mail/?group_id=1290">rubyforge.org</a></td> -</tr> -<tr> -<td>&nbsp;</td> -<td>masterview-announce - MasterView release announcements</td> -</tr> -<tr> -<td>&nbsp;</td> -<td>masterview-users - Discussion, problems, ideas, suggestions for MasterView</td> -</tr> -<tr> -<td>&nbsp;</td> -<td>masterview-devel - MasterView project developer list</td> -</tr> +<tr><td colspan="2">&nbsp;</td></tr> </table> + +<hr /> +<p>Why invent another templating engine? +In short, to be able to use standard web design tools such as WYSIWYG editors to design and lay out pages for a rails site, without giving up the power and productivity of layouts, partials, and rails helpers. +As programmers, we want to be able to create rails view templates which can also be worked on by web designers with their own tools for complex graphics and styling. +If you are interested in the background story and the goals of the MasterView project, +visit the <a href="about.html">About</a> page to learn more. </p> -<h2>Illustrations/Diagrams</h2> -<ul> -<li><a href="simple_diagram.html" alt="MasterView rhtml Rendering Illustration">MasterView rendering illustration</a> - showing how MasterView renders rhtml internally<br/><br/> -<a href="simple_diagram.html" alt="MasterView rhtml Rendering Illustration"><img src="images/masterview_rhtml_rendering_thumbnail_smaller.png"/></a><br/><br/> -</li> -<li><a href="media_list.html" alt="MasterView Screenshots and other media">MasterView screenshots - showing some generated MasterView templates and MasterView Admin page</a><br/><br/> -<a href="media_list.html" alt="MasterView Screenshots and other media"><img src="screenshots/generated_new_thumbnail.png"/></a><br/><br/> -</li> -</ul> +<h2>Quick Start and Roadmap</h2> -<h2>Videos</h2> -<ul> -<li><a href="http://masterview.org/videos/demo_short.html">MasterView Short Video</a> - demonstrating basic usage of MasterView (no audio, ~5 minutes, uses flash)<br/><br/> -<a href="http://masterview.org/videos/demo_short.html"><img src="screenshots/generated_list_thumbnail.png"/></a><br/><br/> +<p> +MasterView is distributed as a gem +or a plugin. You may install it as a gem and then generate a lightweight +plugin which mainly refers to the gem <b>or</b> you can simply install as a +plugin which is self contained. I personally prefer installing as a gem for +ease of management, however if you are running at a shared hosting +environment you might not have authority to install this gem so you may +install as a self contained plugin. +</p> -</li> -<li><a href="http://masterview.org/videos/masterview_quick_start.html">MasterView Quick Start Video</a> - longer video detailing basic configuration and operation of MasterView (no audio, ~25 minutes, uses flash)<br/><br/> -<a href="http://masterview.org/videos/masterview_quick_start.html"><img src="screenshots/masterview_admin_thumbnail.png"/></a><br/><br/> -</li> -</ul> - <h2>Usage Scenarios</h2> <ul> <li><b>New project</b> - use MasterView to generate view to get your CRUD up quickly. Edit files in WYSIWYG editor to achieve layout and style you like for your project. Re-edit as needed throughout project</li> <li><b>Existing html prototype</b> - sprinkle MasterView attribute directives into existing html prototype to bring prototype alive. Re-edit prototype as needed</li> <li><b>Hybrid of legacy and new</b> - MasterView will coexist nicely with existing rhtml being able to utilize it in new templates or even bring the rhtml into a MasterView template to drive it from there. Build your new MasterView templates with the generator or by augmenting html prototypes.</li> </ul> -<h2>Why another templating engine?</h2> -<p>In short, I needed a way to be able to use a WYSIWYG editor to design/layout my rails pages and didn't want to give up the power and productivity of layouts, partials, and rails helpers. I needed to be able to create html templates quickly that could be handed off to a graphic designer for complex styling, and then use those html templates directly in the project. I also needed to be able to take existing html prototypes and easily make them real. I wanted to be able to give these html templates back to the designer at anytime throughout the project if the style or layout needs to be updated. The existing templating solutions did not meet all my goals or desired operation. For more information, read the background story below. +<p>See the <a href="guide.html">MasterView User's Guide</a> for information on using MasterView templates and supporting services. +View the <a href="simple_diagram.html">MasterView rendering illustration</a> to understand how a MasterView template renders rhtml </p> -<h2>Goals</h2> -<ul> -<li>Create/extend a template engine for rails that would be XHTML friendly and -thus could be edited/styled with a WYSIWYG HTML editor even late in -development without breaking template. +<p>See the <a href="directives.html">MasterView Directives Reference</a> for complete descriptions of all the standard built-in MasterView directives.</p> -</li> -<li>Keep it simple. DRY. No extra config files, simple syntax with ruby flavor. +<h2>Diagrams, Screenshots, and Videos</h2> -</li> -<li>Design it specifically for ruby and rails. Use the full power and not be -limited in its capabilities over what can be done with ERb +<p>The <a href="media_list.html">Screencasts</a> section includes a variety of +diagrams, illustrations, screencasts, and other media which provide an introduction +and overview of MasterView. +</p> +<table summary="layout area for screencasts info"> +<tbody> +<tr> +<td> +<h3>Illustrations/Diagrams</h3> +<ul> +<li><a href="simple_diagram.html">MasterView rendering illustration</a> - showing how MasterView renders rhtml internally<br/><br/> +<a href="simple_diagram.html"><img src="images/masterview_rhtml_rendering_thumbnail_smaller.png" title="MasterView rhtml Rendering Illustration" alt="MasterView rhtml Rendering Illustration" /></a><br/><br/> </li> -<li>Utilize layouts, partials, and rails html helpers. - +</ul> +<h3>Screenshots</h3> +<ul> +<li><a href="media_list.html">MasterView screenshots</a> - showing some generated MasterView templates and MasterView Admin page<br/><br/> +<a href="media_list.html"><img src="screenshots/generated_new_thumbnail.png" title="MasterView Screenshots and other media" alt="MasterView Screenshots and other media" /></a><br/><br/> </li> -<li>Reduce complexity, work with existing rails code, no extra view logic or -hashes than what is used by ERb. Scaffold generate initial templates or -work from existing html prototype. - +</ul> +</td> +<td> +<h3>Videos</h3> +<ul> +<li><a href="http://masterview.org/videos/demo_short.html">MasterView Short Video</a> - demonstrating basic usage of MasterView (no audio, ~5 minutes, uses flash)<br/><br/> +<a href="http://masterview.org/videos/demo_short.html"><img src="screenshots/generated_list_thumbnail.png" title="MasterView short video" alt="MasterView short video" /></a><br/><br/> </li> -<li>Production ready generated templates - Make generated scaffolding templates -useable for production. Build in proper structure and style hooks. Provide simple -CSS for style and color usage. Fully generate labels and fields so that -it will be simple to reorder or remove things from views there by eliminating much -of the re-work necessary to build out real-world views. - +<li><a href="http://masterview.org/videos/masterview_quick_start.html">MasterView Quick Start Video</a> - longer video detailing basic configuration and operation of MasterView (no audio, ~25 minutes, uses flash)<br/><br/> +<a href="http://masterview.org/videos/masterview_quick_start.html"><img src="screenshots/masterview_admin_thumbnail.png" title="MasterView quick-start video" alt="MasterView quick-start video" /></a><br/><br/> </li> -<li>Reduce the numbers of files, simplifying editing. Define partials and -layouts naturally right in the template, no need to go to another file. - -</li> -<li>Preview in browser without running an app. Allow for dummy data in the -template so that the page can be viewed and styled independently of the -application. - -</li> -<li>Performance equal to ERb - -</li> </ul> +</td> +</tr> +</tbody> +</table> + <h2>Prerequisites</h2> <table summary="prerequisites summary"> <tr><td valign="top">Requires:</td><td>No external dependencies - </td></tr> <tr><td valign="top">Optional:</td><td>tidy, log4r</td></tr> </table> <p>See the <a href="installation.html">MasterView Installation Guide</a> for details.</p> - <h2>Installation and Configuration</h2> <p>See the <a href="installation.html">MasterView Installation Guide</a> for complete installation instructions.</p> -<p>Briefly installation/launching is as follows: +<p>Briefly installation/launching is as follows:</p> <pre style="background-color: #eeeeee"> &gt; gem install masterview_gem_pack &gt; rails demo; cd demo &gt; script/generate masterview_plugin &gt; script/generate masterview YOURMODEL YOURCONTROLLERNAME &gt; script/server </pre> -</p> -<p>See the <a href="configuration.html">MasterView Configuration Guide</a> for informatino about customizing the MasterView configuration settings for your application.</p> -<h2>Usage</h2> +<p>See the <a href="configuration.html">MasterView Configuration Guide</a> for information about customizing the MasterView configuration settings for your application.</p> -<p>See the <a href="guide.html">MasterView User's Guide</a> for information on using MasterView templates and supporting services. -View the <a href="simple_diagram.html" alt="MasterView rhtml rendering illustration">MasterView rendering illustration</a> to understand how a MasterView template renders rhtml -</p> - - -<h2>MasterView attribute directive syntax</h2> - -<p>See the <a href="directives.html">MasterView Directives Reference</a> for complete descriptions of all the standard built-in MasterView directives.</p> - - -<h2>Background story</h2> -<p> -I came from a Java Struts environment when I was introduced to Ruby. I was -just in the process of evaluating Tapestry and JSF when I learned about -Rails. Ruby and Rails changed my world forever. I had to however drop many -of my bad habits aquired from years of Java and C++ work. I had to embrace -the new ideas and approach things now with a different mindset. (If you -ever have a chance to hear Dave Thomas speak, you will know what I mean. He -has a wonderfully entertaining yet enlightening way of illustrating this.) -</p> -<p> -After learning the Ruby and Rails way, (Thank you Matz and DHH for such -wonderful gifts to the world) I was amazed at how productive this -environment is. Programming was fun once again, and everything you do in -Ruby or Rails is easier than any other language or framework I have ever -seen. Even taking into account having to learn something new, I was still -far more productive than ever before. The only thing that I felt that could -be done better, was to have a nice html friendly templating engine so that -designers and developers could work collaboratively together on a project. -The designers could style and layout the pages with their WYSIWYG HTML -editors and developers would have the full power of Ruby and Rails without -having to jump through extra hoops to use them. I looked at the available -html template engines to see if anything fit with my style. I was -disappointed with each of them, mainly because they all made it harder than -straight ERb (rhtml) and were not able to use layouts and partials easily. -</p> -<p> -After all the hard work so many people have put into Ruby and Rails, I -wanted to see if there was anyway I could contribute as well, maybe -extending one of the existing template projects to have the ideal -functionality I was striving for. I wanted something to make my own web -development even more productive. However after reviewing each of them and -even getting into the source code, the closest ones seemed to be Amrita2, -Liquid, and Kwartz. Unfortunately it was not going to be easy to add the -functionality and usability I desired. -</p> -<p> -During my research I learned that many of the rails gurus were putting down -html template engines because they felt that they handicapped the developer -severely, namely by not taking advantage of rails layouts, partials, and -html helpers. After doing some projects with ERb (rhtml) I realized that -they were right. I too did not want to give up any of that power either. I -also didn&#8217;t want to create a bunch of extra code or config to use the -templates (extra view code, or data structures to pass to the templates) as -so many of the other engines relied on. -</p> -<p> -I expanded my search outside of Ruby for the best html template technology -I could find. After reviewing all the front runners I still didn&#8217;t -find anything that quite met with my goals for developing with ruby and -rails. I also didn&#8217;t find any technology that was close enough that I -could adapt it. However I did come across features in a variety of systems -that inspired me, and helped me shape the ideas that are presented here. A few -of those systems were Tapestry, Zope/PHP TAL, Kwartz, Amrita 2, Liquid, -and Web Objects. -</p> -<p> -After putting much thought into all the possible options I could not see -extending an existing template engine to meet my needs. And since I wanted -this engine to have all the power of ruby and rails, it seemed that I would -be best served by developing a html template syntax that was a thin layer -above ERb. That way it would be intuitive to use (not having to learn yet -another syntax) yet very powerful. Once I was able to come up with the -desired syntax and approach it became apparent that this would also be -fairly straightforward to build. -</p> -<p> -I ran the concept by the guys at the St. Louis Ruby Group <a -href="http://stlruby.org">stlruby.org</a> and they were excited about the -project. With their help I was able to simply some of the confusing or -complicated areas before beginning development. They also sparked some -ideas about how to make this infinitely extensible such that developers -could easily add their own attribute directives. This would give them the -power to create custom extensions that would encapsulate some of their -development work. This would serve a couple needs, it would not only make -this engine extensible, it would also allow this engine to grow easily -being composed of small pluggable attribute directives. Many thanks to the -members of this group, I continue to enjoy discussing the power of Ruby and -learning from each of them on a monthly basis. -</p> -<p> -While I am on the subject of thanks, I would like to thank my wife and -daughter for their support as I took time away from them to work on this -project and I want to thank God for bringing the right people into my life -just when I needed them and for bringing me on this wonderful journey, I am -so very blessed. May I be able to give back some of what has been given to -me. -</p> -<p> -And one more mention of tremendous thanks to Deb Lewis, the other core developer on the -team, she has spent countless hours reviewing, revising, and improving the codebase, -configuration, and documentation. The project wouldn't be half of what it is today -without all her help, inspiration, and hard work. I thoroughly enjoy working and -debating the finer points of the project with her each step of the way. -</p> -<p> -So that&#8217;s the story, I hope that many of you will find MasterView to be a useful tool for -your development. I am continuing to refine MasterView by using it daily for -Genesis Ministry sites and all my web projects. I know that there is much -more work needed in documentation, examples, test cases, additional -directives, etc., so I would appreciate any feedback and ideas that you -have. Thanks for taking the time to review MasterView! -</p> -<p> -Jeff Barczewski -(jeff.barczewski -<span class="class"> @ </span> -gmail.com) -</p> - </div> <!-- bodyContent --> </div> <div id="pageFooter"> <div> &middot;&nbsp; <a href="./index.html">Doc Home</a> &nbsp;|&nbsp; +<a href="./about.html">About</a> +&nbsp;|&nbsp; <a href="./installation.html">Installation</a> &nbsp;|&nbsp; <a href="./configuration.html">Configuration</a> &nbsp;|&nbsp; <a href="./guide.html">Usage</a> &nbsp;|&nbsp; <a href="./directives.html">Directives</a> -&nbsp;&nbsp; -<a href="./media_list.html">Media (Videos/Illustrations)</a> +&nbsp;|&nbsp; +<a href="./developer.html">Developers</a> +&nbsp;|&nbsp; +<a href="./media_list.html">Screencasts</a> &nbsp;&middot; </div> <table summary="layout area"> <tbody> <tr> -<td class="copyright">&copy;&nbsp;Copyright MasterView 2006</td> +<td class="copyright">&copy;&nbsp;Copyright MasterView 2006. MasterView&trade; is a trademark of the MasterView Project.</td> <td class="validators"> - <a href="http://validator.w3.org/check/referer">[Valid XHTML]</a> + <a href="http://validator.w3.org/check/referer"><img + src="http://www.w3.org/Icons/valid-xhtml10" class="w3c_validator" + title="Valid XHTML 1.0!" alt="Valid XHTML 1.0!" /></a> </td> </tr> </tbody> </table> </div> \ No newline at end of file