The Flippi package

[Tags: bsd3, program]

Flippi is a Wiki clone written in Haskell


[Skip to ReadMe]

Properties

Versions0.0.3, 0.0.4, 0.0.5
Change logNone available
Dependenciesbase, cgi, directory, FiniteMap, haskell98, html, old-time, parsec, xhtml [details]
LicenseBSD3
AuthorPhilippa Cowderoy
MaintainerPhilippa Cowderoy <flippa@flippac.org>
CategoryText
Home pagehttp://www.flippac.org/projects/flippi/
Executablesflippi
UploadedSun Feb 17 04:55:31 UTC 2008 by GwernBranwen
DistributionsNixOS:0.0.5
Downloads664 total (32 in last 30 days)
Votes
0 []
StatusDocs not available [build log]
All reported builds failed [all 1 reports]

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for Flippi-0.0.3

Flippi v0.03: A Wiki clone written in Haskell
=============================================

As the title suggests, Flippi is a Wiki clone - a fairly basic one at 
present, written in Haskell by Philippa Cowderoy and released under the BSD
license. There's an installation of Flippi running at 
http://www.scannedinavian.org/cgi-bin/flippi/flippi - hopefully, details of
user modifications, new releases etc will be kept there.

Requirements: Flippi is written in plain Haskell 98 using a recent version
              of the hierarchical libraries - it builds fine under 
              GHC 6.21, doesn't build under 5.02, hasn't been tested anywhere
              else.

To configure: Edit the source a little. The only really critical thing is
              where the data files go - this can be changed by editing the
              function dataDirectory in the PageIO module. The default is a
              directory data under the directory Flippi is run from.
              
              To change how the pages look on screen, edit PageTemplates.hs.
              
              To change the wiki markup, edit DeWikify.hs.
              
              Scripts are ordinary functions of type 
              [(String,String)] -> IO Html - to make one available, add an
              entry to the list "scripts" in Scripts.hs. It's probably a
              good idea if anybody distributing scripts they've written
              includes a fuller description of how to do this in the 
              documentation so as to make things easier for users who don't
              know Haskell.

Installation: Should be pretty simple: either compile the lot (a GHC --make 
              works fine) and set it up as a CGI executable or run it via 
              your preferred Haskell interpreter like any other script.
              
              GHC users should find some variant on this works:
              "ghc --make Flippi.hs -o <foo>" where <foo> is the name of 
              the resulting executable.
              
              Optionally, copy the files found under data\ in the 
              distribution to wherever the CGI will be looking for page
              data - these initial pages document the markup syntax and tell 
              users you're running Flippi. If you don't want to do this, 
              you'll want to create a FrontPage - point a browser at the CGI
              and follow the link to create it.

History:
--------

v0.03: * Added scripting API and corresponding syntax 
          (see Script.hs, ScriptSyntax.hs)
       * Added RecentChanges script
       * Added HelloWorld example script in Script.hs
       * Added getPagenames to PageIO
       * Restricted page requests to valid pagenames as defined by a
         pattern in DeWikify (an isPagename function is exported by
         PageIO)
       * hopefully removed DOS/UNIX data issue - all data files are now 
         written out in binary format, all input is done in text mode and
         then has CRLFs forcibly converted to LFs. The parser will read 
         both LF and CRLF as new lines, though this should never be 
         needed now.
       * Data files now go in a specified directory rather than having
         a specified prefix
       * A couple more bugfixes

v0.02: * Added proper (first edit wins) edit conflict resolution
       * Fixed some potential holes such as editing the page ""
       * Better page templates
       * Enough markup to just about be usable (paragraphs, escapes)

v0.01: * Early version shown to a few friends
       * Missing just about everything! But it does page IO

Credits:
--------

Thanks to Shae Erisson for encouragement, discussion, a test server and above
all else naming Flippi - if you don't like the name, blame it on him!

-- 
Philippa Cowderoy
flippa@flippac.org