Ikiwiki user roles
Working with this website isseparated into some distinct roles.
Besides the technician setting up the system, there is the content author,
the web graphics and interface designer and the normal reader of the site.
The author can write content before the shaping and visual enhancing is ready. And
the site can be live readable while evolving both content and style.
The system builds two websites in parallel - one presented for normal reading, and
another one with edit links, only offered to designer and author (secured by
individual passwords).
[[graph height=8 width=8 src="""
{
// rankdir=LR
// rotate=90
center=1
{rank=same; user author designer}
// {rank=same; search_query txt tmpl media}
subgraph cluster_clitools {
label="Commandline editing"
style=dashed
txt
tmpl
media
}
subgraph cluster_webtools {
label="Web editing"
style=dashed
txt
search_query
}
// {rank=same; txt_stored media_stored tmpl_stored}
subgraph cluster_storage {
label="Server storage"
style=dashed
search_db
txt_stored
tmpl_stored
media_stored
}
{rank=same; webpages webpages_admin webpages_searchresult}
/* roles */
user [shape=house, label="Reader"]
author [shape=house, label="Text author"]
designer [shape=house, label="Web designer"]
/* input data types */
search_query [shape=plaintext, label="Search query"]
txt [shape=plaintext, label="Markdown text"]
media [shape=plaintext, label="Graphics files"]
tmpl [shape=plaintext, label="Html templates"]
search_db [shape=egg, label="Search index"]
/* stored data types */
txt_stored [shape=plaintext, label="Version-controlled Markdown text"]
media_stored [shape=plaintext, label="Graphics files"]
tmpl_stored [shape=plaintext, label="Version-controlled html templates"]
webpages [label="Static website"]
webpages_admin [label="(Admin-)editable website"]
webpages_searchresult [label="Search results", style=dotted]
user -> search_query -> search_db -> webpages_searchresult
author -> txt -> txt_stored -> webpages
txt_stored -> webpages_admin
designer -> txt
designer -> tmpl -> tmpl_stored -> webpages
tmpl_stored -> webpages_admin
designer -> media -> media_stored -> webpages
media_stored -> webpages_admin
}
"""]]
See also the graphs on Ikiwiki [[roles|ikiroles]] and on the [[system|ikidesign]].