Lanyon, a Markdown web server in Go
github.com
github.com
Isn't the point of a static site generator to generate a static site and deploy the output to a simple file server? I'm not quite sure if I understand the use-case of this project. Also, if you're looking for generating binaries across multiple OSes try http://gobuild.io/
PS: Thanks for this! The source code will surely be invaluable to a Go noob like me!
Later in the README, the author suggests to put a reverse cache in front of the server, which seems to me far more elaborate than avoiding to put a bunch of files on a server.
It has a built-in server with watch mode and regenerates the entire site upon file changes. It’s blazingly fast (as long as you don’t use the syntax-highlighting plugin which calles out to pygments and is rather slow).
Aside: I have been using highlight.js[1] instead of pygments lately.
The cache server definitely adds complexity and more so than a static site. However the complexity is setup and done once on initial server setup. On-going, the multi-process of a site generator adds up. Granted its one small step which as you say most already have scripted tasks.
Answering the first comment, the use case was something to play with for my personal site which I wanted to share if others found useful.
Considering that most programming languages ship with a good webserver for serving static content already, I don't see how it makes the product that much more complex. Coming from another angle: now I have a webserver that renders markdown ;).
It appears, before the rebuild, you had a feed @ http://mkaz.com/rss.xml — which is gone. I guess the Lanyon web server doesn’t generate atom or RSS feeds out-of-the-box?
That’d be a pity, while a Web based on Markdown+Git+WebSocket (or something alike) still is a long shot…
https://github.com/aybabtme/brog
I wanted to play with fsnotify, so not only will it compile your Markdown, it will also watch the blog path and reload/recompile the Markdown + Templates when they change.
Thus you can start the server once, make it watch a folder and then simply rsync/push your changes in that folder to see the change live. The deployment of a blog looks like this:
https://github.com/aybabtme/antoine.im
It's surprisingly fast; I've been working on a load generation tool at work and I use my blog [1] to try it out. It can handle quite a bit of traffic on a little 5$ droplet[2]!
[2]: I do the load testing on the IP of the machine, since [1] is behind Cloudflare.
That's one thing, it currently does not recompile the templates if there is a change.
http://www.thoughtworks.com/products/go-continuous-delivery
(although it came later)
There is a character called Dr. Hastie Lanyon which is were I grabbed the name for both my projects.