I am working on a very similar type of system now and I have settled on HTML::Template (thanks to the advice of some fellow monks). Besides being relatively fast and simple, it allows you to filter a template before variables are replaced in case you need to do some extra style changes. Although, depending on your system, you could leave a placeholder for javascript and either "include" the file or build up your javascript as a string and replace the "var" with it. Another thing I am doing that might help is build your system as an object-oriented system with an abstract base class. Then you can override functions for specific uses. For example, you can override a default "OutputStyle" routine with a package that inherits from the base module if you need to show palm trees, snow, etc. If your derived class doesn't have its own specific "OutputStyle" routine, the user still gets the default output. Hope that helps.

In reply to Re: Creating Stylized Perl Applications With Uniformity (code) by DBX
in thread Creating Stylized Perl Applications With Uniformity (code) by deprecated

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.