Static Site Publisher
Creates static web sites from raw html, markdown, generic wiki markup, tomboy notes, images and other resources.
A generated site can have an RSS feed and a basic blog, an image feed and slideshow, and analytics support.
Deprecated in Favour of Soapbox
The most useful features of SPublisher have now been migrated to the sbt environment in Soapbox. i Some things, such as RSS, were dropped. Markdown replaces the tomcat notes utility for authoring content.
- SPublisher has gained Markdown support. The pegdown markdown parser is a dependency.
- Now compiles with scala 2.9.x or even recent 2.10 milestones abeit with warnings. The previous version needed scala 2.7 which seems antique now.
- Builds with sbt. (Run
sbt eclipseto generate an eclipse project.)
Rationale and Alternatives
SPublisher represents the particular text transformations and tools needed by the author.
It was a first scala project or at least an early one. I think the code is pretty clean but it is not really approved scala style. It is something like python in scala.
A site generated with this software and hosted on S3 can be seen here: http://wiki.cimtool.org/index.html
Peruse the examples directory tree and
ExampleSite.scala for another.
The output is in example/distrib while the inputs are in example/resource
example/tomboy and example/sitestyle .
You can edit the inputs and regenerate the output by running
sbt run au.com.langdale.publisher.ExampleSite .
An example slideshow and image feed generator
can be seen in
- Copy the example directory tree and
- Customise the site generation object.
- Add content.
The site is configured by combining
Publisher traits into
a site generation object.
Publishertrait is responsible for some aspect of site generation. See the trait comment for a synopsis.
A trait will declare abstract members that it expects others to implement (dependancies).
A trait will implement members used by other traits (dependents).
Some abstract members represent configuration constants that should be defined in the site object.