Zelphir Kaltstahl f2854dc075 prefer cond over unless in this case 9 months ago
..
base64-encode-decode f2854dc075 prefer cond over unless in this case 9 months ago
example-00-using-guile-webserver 439979d2b3 reorganize examples for Guile web development 3 years ago
example-01-using-fibers-webserver 439979d2b3 reorganize examples for Guile web development 3 years ago
example-02-basic-routing 439979d2b3 reorganize examples for Guile web development 3 years ago
example-03-serve-static-assets edb280308c add another todo item about reading files as bytevectors 3 years ago
README.org 439979d2b3 reorganize examples for Guile web development 3 years ago
notes.org dd3f769c6a extract only the sendfile relevant part 3 years ago

README.org

General information

This is not a complete project yet. It is very much work in progress (WIP). There is no markdown parsing or anything like that yet. It is only basic workings of the Guile web server. In the future however, I hope to extend the implementation to make it a real markdown based blog.

Dependencies

  1. guile-fibers >= 1.0.0 (available on Guix packge manager)
  2. guile-commonmark >= 0.1.1 (available on Guix packge manager)
  3. I wish I could rely on something else than Commonmark, as I do not find some of their conventions intuitive, especially with regard to parts of headings, but I also do not want to rely on https://github.com/greghull/sundown-guile, as it is a wrapper around a C library. So I guess for now Commonmark will have to be sufficient.

Running

Refer to the notes or guides in the separate examples.

TODO Challenges [1/3]

This section addresses open questions, which need to be answered in order to build a markdown based blog.

  • [ ] A more comfortable way of defining routes should be implemented. I imagine some kind of tree structure, which the web server walks, to find the most matching branch of URI patterns and use the associated handler procedure.
  • [ ] In rendered markdown (rendered as HTML), how will code snippets be code highlighted?
  • [ ] Is there an easy way to make use of Python's pygments? Greg Hendershott did so in his static blogging tool Frog, which is written in Racket.