summaryrefslogtreecommitdiff
path: root/ikiwiki/website.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'ikiwiki/website.mdwn')
-rw-r--r--ikiwiki/website.mdwn78
1 files changed, 38 insertions, 40 deletions
diff --git a/ikiwiki/website.mdwn b/ikiwiki/website.mdwn
index 5321240..d1c3e69 100644
--- a/ikiwiki/website.mdwn
+++ b/ikiwiki/website.mdwn
@@ -21,9 +21,9 @@ all readers of the website:
{
reader [shape=house, label="Reader"]
- webpages_static [label="static pages"]
+ webpages [label="static pages"]
- reader -> webpages_static
+ reader -> webpages [dir=back]
}
"""]]
@@ -41,29 +41,20 @@ each search:
reader [shape=house, label="Reader"]
/* targets */
- webpages_static [label="static pages"]
+ webpages [label="static pages"]
webpages_searchresult [label="search results", style=dotted]
- {rank=same; webpages_static webpages_searchresult}
+ {rank=same; webpages webpages_searchresult}
search_query [shape=plaintext, label="search query"]
search_db [shape=box, label="search index"]
/* paths */
- reader -> webpages_static
+ reader -> webpages [dir=back]
reader -> search_query -> search_db -> webpages_searchresult
}
"""]]
-## Administration access
-
-Websites are normally meant to be published to the whole world, but only
-edited by a select few.
-
-ikiwiki-based websites have a separate address (typically replacing the
-leading "www" with "admin") with administration access added on top of
-all pages.
-
## Administration roles
Often the website owner writes the text content themselves, but hire
@@ -83,9 +74,7 @@ ikiwiki-based websites are setup to reflect that:
{rank=same; reader editor designer}
/* targets */
- webpages_static [label="website"]
- webpages_wiki [label="admin website"]
- {rank=same; webpages_static webpages_wiki}
+ webpages [label="website"]
/* input data */
txt [shape=plaintext, label="text"]
@@ -96,26 +85,34 @@ ikiwiki-based websites are setup to reflect that:
iki_engine [shape=box, label="web engine"]
/* paths */
- reader -> webpages_static [dir=back]
- editor -> txt -> iki_engine -> webpages_wiki
+ reader -> webpages [dir=back]
+ editor -> txt -> iki_engine
designer -> media -> iki_engine
designer -> tmpl -> iki_engine
- iki_engine -> webpages_static
+ iki_engine -> webpages
}
"""]]
## Editing
-In addition to the main website, an additional website is generated,
-with the main feature of Ikiwiki - [[wiki]]-like text editing - enabled:
+Text content can be edited using a simple web interface.
+
+The static website is navigated to locate the page to edit, a dynamic
+web-based edititing form is started for that page, and saving the form
+causes the static web page to be regenerated.
[[graph height=8 width=8 src="""
{
+ /* roles */
editor [shape=house, label="Editor"]
- webpages_wiki [label="wiki pages"]
+ /* targets */
+ webpages [label="static pages"]
+ webpage_new [label="new static pages"]
+ {rank=same; webpages webpage_new}
- content_form [shape=plaintext, label="edit form"]
+ /* input data */
+ content_form [label="dynamic edit form", style=dotted]
/* stored data */
txt_stored [shape=box, label="text content"]
@@ -124,27 +121,30 @@ with the main feature of Ikiwiki - [[wiki]]-like text editing - enabled:
{rank=same; txt_stored media_stored tmpl_stored}
/* paths */
- editor -> webpages_wiki
- editor -> content_form -> txt_stored -> webpages_wiki
- media_stored -> webpages_wiki
- tmpl_stored -> webpages_wiki
+ editor -> webpages [dir=back]
+ editor -> content_form -> txt_stored -> webpage_new
+ media_stored -> webpage_new
+ tmpl_stored -> webpage_new
}
"""]]
-Whenever the wiki pages are edited, the static pages are also rebuilt:
+Designer may prefer the more powerful git interface.
+
+Exact same processing, but editing the files directly on the desktop,
+maybe even while offline.
[[graph height=8 width=8 src="""
{
/* roles */
- editor [shape=house, label="Editor"]
+ designer [shape=house, label="Designer"]
/* targets */
- webpages_static [label="static pages"]
- webpages_wiki [label="wiki pages"]
- {rank=same; webpages_static webpages_wiki}
+ webpages [label="static pages"]
+ webpage_new [label="new static page"]
+ {rank=same; webpages webpage_new}
/* input data */
- content_form [shape=plaintext, label="edit form"]
+ git [shape=plaintext]
/* stored data */
txt_stored [shape=box, label="text content"]
@@ -152,12 +152,10 @@ Whenever the wiki pages are edited, the static pages are also rebuilt:
tmpl_stored [shape=box, label="html templates"]
{rank=same; txt_stored media_stored tmpl_stored}
- iki_engine [shape=box, label="html renderer (ikiwiki)"]
-
/* paths */
- editor -> content_form -> txt_stored -> iki_engine -> webpages_wiki
- media_stored -> iki_engine
- tmpl_stored -> iki_engine
- iki_engine -> webpages_static
+ designer -> webpages [dir=back]
+ designer -> git -> txt_stored -> webpage_new
+ media_stored -> webpage_new
+ tmpl_stored -> webpage_new
}
"""]]