Oz (in addition to being a dataviz tookit) has evolved into the realm of static
site generation <https://github.com/metasoarous/oz#static-site-generation>,
complete with live code reloading. Simply
(require '[oz.core :as oz])
(oz/build! [{:from "site-src/pages" :to "build"}])
This will set up a filesystem watch on the site-src/pages directory (of
markdown, or edn/clj files with hiccup), and every time the file changes
will output compiled html to the build directory, as well as update a live
view of the most recently edited page.
Note that you can specify multiple such build specifications, in case
different pages need to be rendered differently (e.g. different
template/layout/styling).
(defn blog-template [hiccup]
[:div {:style {:extra :styles}}
[blog-sidebar]
hiccup])
(oz/build!
[{:from "site-src/pages" :to "build"}
{:from "site-src/blog" :to "build/blog" :template-fn blog-template}])
There’s plenty more to say, but I’ll leave it for the docs:
https://github.com/metasoarous/oz#static-site-generation
To my knowledge, this is the only static site rendering framework in
Clojure with live-code reloading. I’ve been thinking about extracting this
functionality into a standalone library without all of the data
visualization business, but it’s a bit of an invasive operation. As it
stands, it’s a bit hard to discover these features amidst everything else
Oz provides, so I would appreciate feedback on this.
I you try it out, please let me know how it goes for you.
Thanks
Chris
On Saturday, December 12, 2020 at 8:31:19 PM UTC-8 Sean Corfield wrote:
> I think a lot of people use Cryogen: Simple static sites (cryogenweb.org)
> <https://cryogenweb.org/> -- I used to use Octopress, based on Jekyll,
> and switched to Cryogen recently. For the commenting system, I've used
> Disqus for a long time. And I host on GitHub (via seancorfield.github.io
> and a custom corfield.org domain).
>
> On Sat, Dec 12, 2020 at 1:53 AM [email protected] <
> [email protected]> wrote:
>
>> Hello everyone. I've been away from the Clojure community for the last 2
>> years (nowadays I do more managing than programming) but I'm starting a new
>> blog. I tried to use Wordpress on the theory that it is "easy" and also
>> because I've been told they fixed their old security flaws, but I installed
>> the latest version and it was hacked in less than a day, so now I'm feeling
>> unkindly towards Wordpress.
>>
>> I'm looking for a blog engine, which can use a database or flat files, I
>> don't care.
>>
>> The main thing I need is a working comment system, with an ability on my
>> side to whitelist particular commenters. Does anything like that exist
>> written in Clojure?
>>
>> I'm very grateful, if anyone can point me to something that works, and is
>> reasonably maintained.
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to [email protected]
>> Note that posts from new members are moderated - please be patient with
>> your first post.
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/clojure/3cb3a068-a916-4bd4-925f-cd71744908dcn%40googlegroups.com
>>
>> <https://groups.google.com/d/msgid/clojure/3cb3a068-a916-4bd4-925f-cd71744908dcn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>
>
> --
> Sean A Corfield -- (904) 302-SEAN
> An Architect's View -- https://corfield.org/
> World Singles Networks, LLC. -- https://worldsinglesnetworks.com/
>
> "Perfection is the enemy of the good."
> -- Gustave Flaubert, French realist novelist (1821-1880)
>
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/clojure/45b2e71e-cbe3-486d-a074-37b608103613n%40googlegroups.com.