Sat 06 Oct 2018 11:16:53 PM -03
Current practice
Currently ikiwiki is adopted by the following reasons:
- There is a Debian package.
- It's flexible enough to support both local or remote side static compilation:
- Local compilation by calling the
ikiwiki
command directly. - Remotelly by using a git hook.
- Local compilation by calling the
When it's said both it means that you don't need to choose either of the two options: you can choose or both simultaneously.
Static site example
Here comes the mandadoty "Hello world" example from the statically generated site realm:
mkdir blog && cd blog
echo "Hello world..." > index.mdwn
ikiwiki --rebuild --exclude www . www
That's it! You have a generated site sitting at your www
subfolder which can be copied remotelly using rsync
.
Version control
It's a good pratice to keep your work under version control:
git init
echo "/.ikiwiki" > .gitignore
echo "/recentchanges" >> .gitignore
echo "/www" >> .gitignore
git add .
git commit -m "Initial import"
Add a bit of sofistication
- Use this Makefile as an starting point to refresh and publish your wiki by simply running
make web
. - Use a complete ikiwiki template and change to your needs.
- If you're a automation junkie, try the puppet-ikiwiki module.
Theming
Currently using Ikiwiki with Bootstrap:
- Templates.
- Bootswatch themes.
Deployment
You can create passwordless SSH keys and use rrsync (2) to restrict access. Then add an entry into your ~/.ssh/config
:
Host blog.example.org blog
HostName blog.example.org
User blog
IdentityFile ~/.ssh/blog@blog.example.org
Now simply run make web_deploy
with the above mentioned Makefile
do sync your static site!
MathJax
- Setup Instructions for MathJax on Ikiwiki.
- GitHub - bk/ikiwiki-plugin-mathjax: MathJax plugin for IkiWiki.
- GitHub - mathjax/MathJax: Beautiful and accessible math in all browsers.
- MathJax documentation.
Ikiwiki references
- Ikiwiki.
- Improving Ikiwiki style with Bootstrap.
- How to have a nice design for ikiwiki.
- gsliepen/ikistrap: Bootstrap 4 theme for ikiwiki.
Alternatives
- Static Site Generators.
- Top Open-Source Static Site Generators - StaticGen.
- The updated big list of static website generators for your site, blog or wiki.
- Static Site Generators at GitHub.
- Replacing Jekyll with Pandoc and a Makefile.
- Brane Dump: Static Comments in Jekyll.
- Hyde (package).
- Gollum.
- Hugo (pacote).
- Amber.
- Grav.
- Hakyll (package).
- Jekyll (package).
- MkDocs
- Sphinx (package).
- Lektor (package).
- Static site generators for building web sites.
- Pelican Static Site Generator, Powered by Python (package).
- Middleman: Hand-crafted frontend development.
- Juvia: a commenting server similar to Disqus and IntenseDebate.
- gitit.
- Utterson: a minimal static blog generator written using old-school unix tools (make, ksh, m4, awk, procmail and a pinch of elisp).
- werc - A sane web anti-framework.
- cfenollosa/bashblog: A single Bash script to create blogs. Download, run, write, done!.
- blogofile
- tkluysk/yaml-to-html: transform a folder of markdown files with yaml frontmatter to html
- maxhoffmann/yaml-markdown-to-html: transform a folder of markdown files with yaml frontmatter to html
- brunobord/static-markdown: A static HTTP server, with markdown rendering mechanism