Thread Programmierende für "Modern Blosxom" gesucht (79 answers)
Opened by GwenDragon at 2011-04-11 16:04

moritz
 2011-09-01 19:04
#152034 #152034
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
Wie es der Zufall so will, hatte ich diese Woche ein bisschen Zeit, um an einem neuen Blog-System zu hacken.

Dabei habe ich mit einer API fürs Backend angefangen, die unabhänging vom Speicherformat ist. Zum Testen habe ich ein Speicher-Backend geschrieben, das jedes Post als JSON-Datei speichert -- lahm und einfallslos, aber einfach zu schreiben (update: habe jetzt eine Index-Datei dazugeschrieben, jetzt ist es nicht mehr ganz so lahm).

Ideen für tatsächlich einsetzbare Backends: SQL backend, 2-Dateien-Backend (eine für source + meta data, eines für das gerenderte Post).

Folgendes funktioniert im JSONFile backend:

  • Abfragen der $n neuestens Posts (für die Startseite)
  • Abfagen von Posts nach URL
  • Anlegen von neuen Posts
  • Rendern von Posts


Unabhängig vom Backend gibt es "Renderer", die es einem erlauben, den Post in verschiedenen Formaten zu schreiben. Bisher gibt es

  • Rawhtml -- man schreibt das Post in HTML, das wird genau so zum Browser gegeben
  • Text -- man schreibt plain text, das wird in Paragraphen aufgesplittet, HTML-escaped un <p>...</p> gewrapped
  • Pod -- basierend of Pod::Simple::HTML (core-Modul seit 5.9.irgendwas)


Da ich nicht wusste, ob ihr den Code in BlogZen wollt, habe ich das ganze in einem anderen Namespace entwickelt: Chalice (Englisch für (Blüten)kelch). Wenn ihr den Code wollt, kann ich das ganze gerne umbenennen, und in das BlogZen-Repo reinladen.

Nach dem ganzen Gelaber kommt jetzt das wichtigste, der Link zum Code: https://github.com/moritz/Chalice-Model

Ein paar Bemerkungen zum Code:

  • Die API sieht man am besten in der SYNOPSIS von Chalice::Model
  • Was implementiert ist, sieht man am besten in t/jsonfile.t, t/render-pod.t, t/render-text.t
  • Im Moment benutze ich Mojo::JSON für das JSONFile storage backend, sonst hängt das Backend nicht von Mojolicious ab.


Über Kommentare und Meinungen freue ich mich.

Editiert von moritz: Index-Datei erwähnt
Last edited: 2011-09-02 09:03:57 +0200 (CEST)

View full thread Programmierende für "Modern Blosxom" gesucht