aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/tutorial-achat.md100
-rw-r--r--tests.nix1
2 files changed, 101 insertions, 0 deletions
diff --git a/docs/tutorial-achat.md b/docs/tutorial-achat.md
new file mode 100644
index 0000000..82a2bcf
--- /dev/null
+++ b/docs/tutorial-achat.md
@@ -0,0 +1,100 @@
+## authentication
+
+TODO
+
+## create user
+
+```console
+acms collection add user <<'EOF'
+{
+ "username": "joe"
+}
+EOF
+```
+
+```json
+{
+ "$id": "9474f0eb-06d7-4fd8-b89e-0ce996962508",
+ "username": "joe"
+}
+```
+
+## create chat
+
+```console
+acms collection add chat <<'EOF'
+{
+ "title": "how does acms work?"
+}
+EOF
+```
+
+## list chats
+
+```console
+acms collection list chat
+```
+
+```json
+{
+ "$id": "ccccc18c-f3dc-4f98-b4d2-290ef76adb6b",
+ "title": "how does acms work?"
+}
+```
+
+## create chat message
+
+```console
+acms collection add chat-message <<'EOF'
+{
+ "chat": {
+ "$ref": "chat/ccccc18c-f3dc-4f98-b4d2-290ef76adb6b"
+ },
+ "message": "please see the [docs]()",
+ "user": {
+ "$ref": "user/9474f0eb-06d7-4fd8-b89e-0ce996962508"
+ }
+}
+EOF
+```
+
+```json
+{
+ "$id": "6dc0bf04-b453-4396-9efc-0b8b8f338d9c",
+ "chat": {
+ "$ref": "chat/ccccc18c-f3dc-4f98-b4d2-290ef76adb6b"
+ },
+ "message": "please see the [docs]()",
+ "user": {
+ "$ref": "user/9474f0eb-06d7-4fd8-b89e-0ce996962508"
+ }
+}
+```
+
+## list chat messages
+
+```console
+acms query <<'EOF'
+SELECT
+ chat-message
+FROM
+ chat-message
+WHERE
+ chat-message.chat.$ref == "chat/ccccc18c-f3dc-4f98-b4d2-290ef76adb6b"
+EOF
+```
+
+```json
+[
+ {
+ "$id": "6dc0bf04-b453-4396-9efc-0b8b8f338d9c",
+ "chat": {
+ "$ref": "chat/ccccc18c-f3dc-4f98-b4d2-290ef76adb6b"
+ },
+ "message": "please see the [docs]()",
+ "user": {
+ "$ref": "user/9474f0eb-06d7-4fd8-b89e-0ce996962508"
+ }
+ }
+]
+```
diff --git a/tests.nix b/tests.nix
index f442a54..b62bd7f 100644
--- a/tests.nix
+++ b/tests.nix
@@ -81,4 +81,5 @@ in
{
api-reference = makeDocTest "api-reference" ./docs/api-reference.md;
get-started-cli = makeDocTest "get-started-cli" ./docs/get-started-cli.md;
+ tutorial-achat = makeDocTest "tutorial-achat" ./docs/tutorial-achat.md;
}