Hi - I've recently started using IHP for a personal blog and am finding it a real pleasure so far. One thing that slightly surprises me is that it seems storing the blog posts in the database seems to be the only way to go. This feels a little cumbersome, because I then have to write them via the front-end, and maintain a Controller for doing so (I haven't yet figured out how to hide this from the users). Ideally I would like to just write markdown files using vim and then somehow put them up as blog posts. I realize that at the moment the database is the only storage mechanism, but is there an idiomatic approach you'd take to facilitate a workflow like that? Obviously I can write them as markdown files and then copy/paste them into newly created posts on the front-end, so it's not exactly a huge deal, but if there's an obvious work-around I'd like to know.
Thanks for a great piece of software!
Chris
Hi Marc - thanks - that's helpful. Scanning and reading file would involve the IO monad so I'm a bit wary about that route, but I might check it out and see if it's viable. Either way appreciate the response.
Do not fear the monads Chris! I would say that it is a perfectly suitable reason to use the IO monad in this case. Come and join the IHP slack if you need some help with that :)
hey, you could manually write some haskell code that finds all
.md
files in e.g.static/posts
and then try to serve it from there.The more-IHP way is to use the controller setup as you mentioned already. You have multiple options to hide the backend part from the user:
Admin
app). Check an example in the docu here: https://ihp.digitallyinduced.com/Guide/authentication.html