diff --git a/todolist/architecture.puml b/todolist/architecture.puml
new file mode 100644
index 0000000000000000000000000000000000000000..ba5384bf596e89359798417f4ae3b4f6db09aee3
--- /dev/null
+++ b/todolist/architecture.puml
@@ -0,0 +1,73 @@
+@startuml architecture
+
+component core {
+	package todolist.core
+	package todolist.json
+}
+
+component jackson {
+}
+
+todolist.json ..> jackson
+
+component fxutil {
+}
+
+component fxui {
+	package todolist.ui
+}
+
+
+todolist.ui ..> todolist.core
+todolist.ui ..> todolist.json
+
+component javafx {
+	component fxml {
+	}
+}
+
+fxui ..> javafx
+fxui ..> fxml
+fxui ..> fxutil
+
+component restapi {
+	package todolist.restapi
+}
+
+todolist.restapi ..> todolist.core
+
+component jaxrs {
+}
+
+restapi ..> jaxrs
+
+component restserver {
+	package todolist.restserver
+}
+
+todolist.restserver ..> todolist.core
+todolist.restserver ..> todolist.json
+todolist.restserver ..> todolist.restapi
+
+component jersey {
+}
+
+component grizzly2 {
+}
+
+restserver ..> jersey
+restserver ..> grizzly2
+
+component "springboot/restserver" as springboot.restserver {
+	package todolist.springboot.restserver
+}
+
+todolist.springboot.restserver ..> todolist.core
+todolist.springboot.restserver ..> todolist.json
+
+component "spring boot" as springboot {
+}
+
+springboot.restserver ..> springboot
+
+@enduml
\ No newline at end of file
diff --git a/todolist/asciidocs/docs/README.adoc b/todolist/asciidocs/docs/README.adoc
index 9c852229fdc53f51a339e0cad721d4a7874d987f..9bf7f791092584e6d31b438a21654400c4b0867e 100644
--- a/todolist/asciidocs/docs/README.adoc
+++ b/todolist/asciidocs/docs/README.adoc
@@ -3,13 +3,31 @@
 == Forord
 
 Denne modulen i todo-list-eksemplet inneholder dokumentasjon tenkt brukt som læringsmateriell,
-ikke vanlig doumentasjon rettet mot utviklere av den typen en forventer i tilsvarende prosjekter.
+ikke vanlig dokumentasjon rettet mot utviklere av den typen en forventer i tilsvarende prosjekter.
 
 Dokumentasjonen er skrevet med https://asciidoctor.org/[Asciidoctor] og
 bygget med image:maven-logo-black-on-white.png[Maven logo,60,link="https://maven.apache.org/"]
 
 == Introduksjon
 
+Todo-list er en applikasjon for håndtering av todo-lister.
+Den er implementert som en kombinasjon av en JavaFX-app og et REST API som appen bruker for håndtering av data.
+Med et REST API adskilt fra appen, så er det lett å utvide med andre klienter,
+f.eks. en "native"-app for Android eller web-klient basert på React.
+
+== Modularisering
+
+Todolist er strukturert i et sett _moduler_. Domenelogikken ligger i core-modulen, appen i fxui (og fxutil),
+mens REST API-et er fordelt over to moduler, restapi og restserver (og en alternativ implementasjon i springboot/restserver):
+
+- <<core.adoc#, core>> - domenelogikken med alle klassene for å representeree todo-lister og -elementer, og støtte for serialisering og derialisering som JSON med Jackson-biblioteket
+- <<fxui.adoc#, fxui (og fxutil)>> - app-brukergrensesnitt basert på JavaFX og FXML
+- <<restapi.adoc#, restapi og restserver>> - REST API og server basert på JAX-RS-standarden og Jersey-implementasjonen
+- <<springboot-restapi.adoc#, springboot/restserver>> - _alternativ_ REST API og server basert på spring boot-rammeverket
+- <<integrationtests.adoc#, integrationtests>> - (integrasjons)test for app koblet til REST-serveren
+
+Disse forklares i hver sine kapitler. Under viser et _pakkediagram_ strukturen av moduler og pakker og deres avhengigheter.
+
 [plantuml]
 ....
 component core {
@@ -23,7 +41,6 @@ component jackson {
 todolist.json ..> jackson
 
 component fxutil {
-	package todolist.ui
 }
 
 component fxui {
@@ -44,7 +61,7 @@ fxui ..> fxml
 fxui ..> fxutil
 
 component restapi {
-	package simpleex.restapi
+	package todolist.restapi
 }
 
 todolist.restapi ..> todolist.core
diff --git a/todolist/asciidocs/docs/core.adoc b/todolist/asciidocs/docs/core.adoc
new file mode 100644
index 0000000000000000000000000000000000000000..ef8f1bbaa17fe8187ae129b0c1306fb62f4f86e8
--- /dev/null
+++ b/todolist/asciidocs/docs/core.adoc
@@ -0,0 +1 @@
+== Kjernelogikken
diff --git a/todolist/asciidocs/docs/fxui.adoc b/todolist/asciidocs/docs/fxui.adoc
new file mode 100644
index 0000000000000000000000000000000000000000..4e9fe4eab1ff79b0cff18d60878fea1beccf388f
--- /dev/null
+++ b/todolist/asciidocs/docs/fxui.adoc
@@ -0,0 +1 @@
+== Appen
diff --git a/todolist/asciidocs/docs/integrationtests.adoc b/todolist/asciidocs/docs/integrationtests.adoc
new file mode 100644
index 0000000000000000000000000000000000000000..4e79efe077eda2c4ee68d545e369bd3efe487758
--- /dev/null
+++ b/todolist/asciidocs/docs/integrationtests.adoc
@@ -0,0 +1 @@
+== Integrasjonstest for app og REST API
diff --git a/todolist/asciidocs/docs/restapi.adoc b/todolist/asciidocs/docs/restapi.adoc
new file mode 100644
index 0000000000000000000000000000000000000000..5ab8cfd40defd86404a3a2fa96a75616b3d58a75
--- /dev/null
+++ b/todolist/asciidocs/docs/restapi.adoc
@@ -0,0 +1 @@
+== REST API
diff --git a/todolist/asciidocs/docs/springboot-restapi.adoc b/todolist/asciidocs/docs/springboot-restapi.adoc
new file mode 100644
index 0000000000000000000000000000000000000000..5c4a05065c7238b11f4310b9ef128cab7ca5492f
--- /dev/null
+++ b/todolist/asciidocs/docs/springboot-restapi.adoc
@@ -0,0 +1 @@
+== REST API med Spring boot-rammeverket