minimal: refactor directories and add README.md
diff --git a/minimal-examples/README.md b/minimal-examples/README.md
new file mode 100644
index 0000000..84e17de
--- /dev/null
+++ b/minimal-examples/README.md
@@ -0,0 +1,5 @@
+|name|demonstrates|
+---|---
+server|Minimal examples providing a server
+client|Minimal examples providing a client
+client-server|Minimal examples providing client and server connections simultaneously
diff --git a/minimal-examples/client-server/README.md b/minimal-examples/client-server/README.md
new file mode 100644
index 0000000..7339c61
--- /dev/null
+++ b/minimal-examples/client-server/README.md
@@ -0,0 +1,3 @@
+|name|demonstrates|
+---|---
+minimal-ws-proxy|Serves an index.html over http that connects back to the ws server, and maintains a ws client connection of its own at the same time to https://libwebsockets.org dumb-increment-protocol to feed a ringbuffer that is sent to all connected browsers.
diff --git a/minimal-examples/minimal-ws-proxy/CMakeLists.txt b/minimal-examples/client-server/minimal-ws-proxy/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-ws-proxy/CMakeLists.txt
rename to minimal-examples/client-server/minimal-ws-proxy/CMakeLists.txt
diff --git a/minimal-examples/minimal-ws-proxy/README.md b/minimal-examples/client-server/minimal-ws-proxy/README.md
similarity index 100%
rename from minimal-examples/minimal-ws-proxy/README.md
rename to minimal-examples/client-server/minimal-ws-proxy/README.md
diff --git a/minimal-examples/minimal-ws-proxy/minimal-ws-proxy.c b/minimal-examples/client-server/minimal-ws-proxy/minimal-ws-proxy.c
similarity index 100%
rename from minimal-examples/minimal-ws-proxy/minimal-ws-proxy.c
rename to minimal-examples/client-server/minimal-ws-proxy/minimal-ws-proxy.c
diff --git a/minimal-examples/minimal-ws-proxy/mount-origin/favicon.ico b/minimal-examples/client-server/minimal-ws-proxy/mount-origin/favicon.ico
similarity index 100%
rename from minimal-examples/minimal-ws-proxy/mount-origin/favicon.ico
rename to minimal-examples/client-server/minimal-ws-proxy/mount-origin/favicon.ico
Binary files differ
diff --git a/minimal-examples/minimal-ws-proxy/mount-origin/index.html b/minimal-examples/client-server/minimal-ws-proxy/mount-origin/index.html
similarity index 100%
rename from minimal-examples/minimal-ws-proxy/mount-origin/index.html
rename to minimal-examples/client-server/minimal-ws-proxy/mount-origin/index.html
diff --git a/minimal-examples/minimal-ws-proxy/mount-origin/libwebsockets.org-logo.png b/minimal-examples/client-server/minimal-ws-proxy/mount-origin/libwebsockets.org-logo.png
similarity index 100%
rename from minimal-examples/minimal-ws-proxy/mount-origin/libwebsockets.org-logo.png
rename to minimal-examples/client-server/minimal-ws-proxy/mount-origin/libwebsockets.org-logo.png
Binary files differ
diff --git a/minimal-examples/minimal-ws-proxy/protocol_lws_minimal.c b/minimal-examples/client-server/minimal-ws-proxy/protocol_lws_minimal.c
similarity index 100%
rename from minimal-examples/minimal-ws-proxy/protocol_lws_minimal.c
rename to minimal-examples/client-server/minimal-ws-proxy/protocol_lws_minimal.c
diff --git a/minimal-examples/client/README.md b/minimal-examples/client/README.md
new file mode 100644
index 0000000..11af3e2
--- /dev/null
+++ b/minimal-examples/client/README.md
@@ -0,0 +1,4 @@
+|name|demonstrates|
+---|---
+minimal-http-client|Connects to and reads https://warmcat.com
+minimal-ws-client|Connects to the dumb-increment-protocol wss server at https://libwebsockets.org
diff --git a/minimal-examples/minimal-http-client/CMakeLists.txt b/minimal-examples/client/minimal-http-client/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-http-client/CMakeLists.txt
rename to minimal-examples/client/minimal-http-client/CMakeLists.txt
diff --git a/minimal-examples/minimal-http-client/README.md b/minimal-examples/client/minimal-http-client/README.md
similarity index 100%
rename from minimal-examples/minimal-http-client/README.md
rename to minimal-examples/client/minimal-http-client/README.md
diff --git a/minimal-examples/minimal-http-client/minimal-http-client.c b/minimal-examples/client/minimal-http-client/minimal-http-client.c
similarity index 100%
rename from minimal-examples/minimal-http-client/minimal-http-client.c
rename to minimal-examples/client/minimal-http-client/minimal-http-client.c
diff --git a/minimal-examples/minimal-ws-client/CMakeLists.txt b/minimal-examples/client/minimal-ws-client/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-ws-client/CMakeLists.txt
rename to minimal-examples/client/minimal-ws-client/CMakeLists.txt
diff --git a/minimal-examples/minimal-ws-client/README.md b/minimal-examples/client/minimal-ws-client/README.md
similarity index 100%
rename from minimal-examples/minimal-ws-client/README.md
rename to minimal-examples/client/minimal-ws-client/README.md
diff --git a/minimal-examples/minimal-ws-client/minimal-ws-client.c b/minimal-examples/client/minimal-ws-client/minimal-ws-client.c
similarity index 100%
rename from minimal-examples/minimal-ws-client/minimal-ws-client.c
rename to minimal-examples/client/minimal-ws-client/minimal-ws-client.c
diff --git a/minimal-examples/server/README.md b/minimal-examples/server/README.md
new file mode 100644
index 0000000..6e3ab91
--- /dev/null
+++ b/minimal-examples/server/README.md
@@ -0,0 +1,10 @@
+|Example|Demonstrates|
+---|---
+minimal-http-server|Serves a directory over http/1 or http/2, custom 404 handler
+minimal-http-server-smp|Multiple service threads
+minimal-ws-server|Serves an index.html over http that opens a ws shared chat client in a browser
+minimal-ws-server-pmd|Simple ws server with permessage-deflate support
+minimal-ws-server-pmd-bulk|Simple ws server showing how to pass bulk data with permessage-deflate
+minimal-ws-server-ring|Like minimal-ws-server but holds the chat in a multi-tail ringbuffer
+minimal-ws-server-threads|Simple ws server where data is produced by different threads
+
diff --git a/minimal-examples/minimal-http-server-smp/CMakeLists.txt b/minimal-examples/server/minimal-http-server-smp/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-http-server-smp/CMakeLists.txt
rename to minimal-examples/server/minimal-http-server-smp/CMakeLists.txt
diff --git a/minimal-examples/minimal-http-server-smp/README.md b/minimal-examples/server/minimal-http-server-smp/README.md
similarity index 100%
rename from minimal-examples/minimal-http-server-smp/README.md
rename to minimal-examples/server/minimal-http-server-smp/README.md
diff --git a/minimal-examples/minimal-http-server-smp/minimal-http-server-smp.c b/minimal-examples/server/minimal-http-server-smp/minimal-http-server-smp.c
similarity index 100%
rename from minimal-examples/minimal-http-server-smp/minimal-http-server-smp.c
rename to minimal-examples/server/minimal-http-server-smp/minimal-http-server-smp.c
diff --git a/minimal-examples/minimal-http-server-smp/mount-origin/favicon.ico b/minimal-examples/server/minimal-http-server-smp/mount-origin/favicon.ico
similarity index 100%
rename from minimal-examples/minimal-http-server-smp/mount-origin/favicon.ico
rename to minimal-examples/server/minimal-http-server-smp/mount-origin/favicon.ico
Binary files differ
diff --git a/minimal-examples/minimal-http-server-smp/mount-origin/index.html b/minimal-examples/server/minimal-http-server-smp/mount-origin/index.html
similarity index 100%
rename from minimal-examples/minimal-http-server-smp/mount-origin/index.html
rename to minimal-examples/server/minimal-http-server-smp/mount-origin/index.html
diff --git a/minimal-examples/minimal-http-server-smp/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-http-server-smp/mount-origin/libwebsockets.org-logo.png
similarity index 100%
rename from minimal-examples/minimal-http-server-smp/mount-origin/libwebsockets.org-logo.png
rename to minimal-examples/server/minimal-http-server-smp/mount-origin/libwebsockets.org-logo.png
Binary files differ
diff --git a/minimal-examples/minimal-http-server/CMakeLists.txt b/minimal-examples/server/minimal-http-server/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-http-server/CMakeLists.txt
rename to minimal-examples/server/minimal-http-server/CMakeLists.txt
diff --git a/minimal-examples/minimal-http-server/README.md b/minimal-examples/server/minimal-http-server/README.md
similarity index 100%
rename from minimal-examples/minimal-http-server/README.md
rename to minimal-examples/server/minimal-http-server/README.md
diff --git a/minimal-examples/minimal-http-server/minimal-http-server.c b/minimal-examples/server/minimal-http-server/minimal-http-server.c
similarity index 100%
rename from minimal-examples/minimal-http-server/minimal-http-server.c
rename to minimal-examples/server/minimal-http-server/minimal-http-server.c
diff --git a/minimal-examples/minimal-http-server/mount-origin/404.html b/minimal-examples/server/minimal-http-server/mount-origin/404.html
similarity index 100%
rename from minimal-examples/minimal-http-server/mount-origin/404.html
rename to minimal-examples/server/minimal-http-server/mount-origin/404.html
diff --git a/minimal-examples/minimal-http-server/mount-origin/favicon.ico b/minimal-examples/server/minimal-http-server/mount-origin/favicon.ico
similarity index 100%
rename from minimal-examples/minimal-http-server/mount-origin/favicon.ico
rename to minimal-examples/server/minimal-http-server/mount-origin/favicon.ico
Binary files differ
diff --git a/minimal-examples/minimal-http-server/mount-origin/index.html b/minimal-examples/server/minimal-http-server/mount-origin/index.html
similarity index 100%
rename from minimal-examples/minimal-http-server/mount-origin/index.html
rename to minimal-examples/server/minimal-http-server/mount-origin/index.html
diff --git a/minimal-examples/minimal-http-server/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-http-server/mount-origin/libwebsockets.org-logo.png
similarity index 100%
rename from minimal-examples/minimal-http-server/mount-origin/libwebsockets.org-logo.png
rename to minimal-examples/server/minimal-http-server/mount-origin/libwebsockets.org-logo.png
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/CMakeLists.txt b/minimal-examples/server/minimal-ws-server-pmd-bulk/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd-bulk/CMakeLists.txt
rename to minimal-examples/server/minimal-ws-server-pmd-bulk/CMakeLists.txt
diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/README.md b/minimal-examples/server/minimal-ws-server-pmd-bulk/README.md
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd-bulk/README.md
rename to minimal-examples/server/minimal-ws-server-pmd-bulk/README.md
diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/minimal-ws-server-pmd-bulk.c b/minimal-examples/server/minimal-ws-server-pmd-bulk/minimal-ws-server-pmd-bulk.c
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd-bulk/minimal-ws-server-pmd-bulk.c
rename to minimal-examples/server/minimal-ws-server-pmd-bulk/minimal-ws-server-pmd-bulk.c
diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/favicon.ico
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/favicon.ico
rename to minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/favicon.ico
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/index.html b/minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/index.html
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/index.html
rename to minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/index.html
diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/libwebsockets.org-logo.png
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd-bulk/mount-origin/libwebsockets.org-logo.png
rename to minimal-examples/server/minimal-ws-server-pmd-bulk/mount-origin/libwebsockets.org-logo.png
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-pmd-bulk/protocol_lws_minimal_pmd_bulk.c b/minimal-examples/server/minimal-ws-server-pmd-bulk/protocol_lws_minimal_pmd_bulk.c
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd-bulk/protocol_lws_minimal_pmd_bulk.c
rename to minimal-examples/server/minimal-ws-server-pmd-bulk/protocol_lws_minimal_pmd_bulk.c
diff --git a/minimal-examples/minimal-ws-server-pmd/CMakeLists.txt b/minimal-examples/server/minimal-ws-server-pmd/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd/CMakeLists.txt
rename to minimal-examples/server/minimal-ws-server-pmd/CMakeLists.txt
diff --git a/minimal-examples/minimal-ws-server-pmd/README.md b/minimal-examples/server/minimal-ws-server-pmd/README.md
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd/README.md
rename to minimal-examples/server/minimal-ws-server-pmd/README.md
diff --git a/minimal-examples/minimal-ws-server-pmd/minimal-ws-server-pmd.c b/minimal-examples/server/minimal-ws-server-pmd/minimal-ws-server-pmd.c
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd/minimal-ws-server-pmd.c
rename to minimal-examples/server/minimal-ws-server-pmd/minimal-ws-server-pmd.c
diff --git a/minimal-examples/minimal-ws-server-pmd/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server-pmd/mount-origin/favicon.ico
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd/mount-origin/favicon.ico
rename to minimal-examples/server/minimal-ws-server-pmd/mount-origin/favicon.ico
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-pmd/mount-origin/index.html b/minimal-examples/server/minimal-ws-server-pmd/mount-origin/index.html
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd/mount-origin/index.html
rename to minimal-examples/server/minimal-ws-server-pmd/mount-origin/index.html
diff --git a/minimal-examples/minimal-ws-server-pmd/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server-pmd/mount-origin/libwebsockets.org-logo.png
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd/mount-origin/libwebsockets.org-logo.png
rename to minimal-examples/server/minimal-ws-server-pmd/mount-origin/libwebsockets.org-logo.png
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-pmd/protocol_lws_minimal.c b/minimal-examples/server/minimal-ws-server-pmd/protocol_lws_minimal.c
similarity index 100%
rename from minimal-examples/minimal-ws-server-pmd/protocol_lws_minimal.c
rename to minimal-examples/server/minimal-ws-server-pmd/protocol_lws_minimal.c
diff --git a/minimal-examples/minimal-ws-server-ring/CMakeLists.txt b/minimal-examples/server/minimal-ws-server-ring/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-ws-server-ring/CMakeLists.txt
rename to minimal-examples/server/minimal-ws-server-ring/CMakeLists.txt
diff --git a/minimal-examples/minimal-ws-server-ring/README.md b/minimal-examples/server/minimal-ws-server-ring/README.md
similarity index 100%
rename from minimal-examples/minimal-ws-server-ring/README.md
rename to minimal-examples/server/minimal-ws-server-ring/README.md
diff --git a/minimal-examples/minimal-ws-server-ring/minimal-ws-server.c b/minimal-examples/server/minimal-ws-server-ring/minimal-ws-server.c
similarity index 100%
rename from minimal-examples/minimal-ws-server-ring/minimal-ws-server.c
rename to minimal-examples/server/minimal-ws-server-ring/minimal-ws-server.c
diff --git a/minimal-examples/minimal-ws-server-ring/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server-ring/mount-origin/favicon.ico
similarity index 100%
rename from minimal-examples/minimal-ws-server-ring/mount-origin/favicon.ico
rename to minimal-examples/server/minimal-ws-server-ring/mount-origin/favicon.ico
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-ring/mount-origin/index.html b/minimal-examples/server/minimal-ws-server-ring/mount-origin/index.html
similarity index 100%
rename from minimal-examples/minimal-ws-server-ring/mount-origin/index.html
rename to minimal-examples/server/minimal-ws-server-ring/mount-origin/index.html
diff --git a/minimal-examples/minimal-ws-server-ring/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server-ring/mount-origin/libwebsockets.org-logo.png
similarity index 100%
rename from minimal-examples/minimal-ws-server-ring/mount-origin/libwebsockets.org-logo.png
rename to minimal-examples/server/minimal-ws-server-ring/mount-origin/libwebsockets.org-logo.png
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-ring/protocol_lws_minimal.c b/minimal-examples/server/minimal-ws-server-ring/protocol_lws_minimal.c
similarity index 100%
rename from minimal-examples/minimal-ws-server-ring/protocol_lws_minimal.c
rename to minimal-examples/server/minimal-ws-server-ring/protocol_lws_minimal.c
diff --git a/minimal-examples/minimal-ws-server-threads/CMakeLists.txt b/minimal-examples/server/minimal-ws-server-threads/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-ws-server-threads/CMakeLists.txt
rename to minimal-examples/server/minimal-ws-server-threads/CMakeLists.txt
diff --git a/minimal-examples/minimal-ws-server-threads/README.md b/minimal-examples/server/minimal-ws-server-threads/README.md
similarity index 100%
rename from minimal-examples/minimal-ws-server-threads/README.md
rename to minimal-examples/server/minimal-ws-server-threads/README.md
diff --git a/minimal-examples/minimal-ws-server-threads/minimal-ws-server.c b/minimal-examples/server/minimal-ws-server-threads/minimal-ws-server.c
similarity index 100%
rename from minimal-examples/minimal-ws-server-threads/minimal-ws-server.c
rename to minimal-examples/server/minimal-ws-server-threads/minimal-ws-server.c
diff --git a/minimal-examples/minimal-ws-server-threads/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server-threads/mount-origin/favicon.ico
similarity index 100%
rename from minimal-examples/minimal-ws-server-threads/mount-origin/favicon.ico
rename to minimal-examples/server/minimal-ws-server-threads/mount-origin/favicon.ico
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-threads/mount-origin/index.html b/minimal-examples/server/minimal-ws-server-threads/mount-origin/index.html
similarity index 100%
rename from minimal-examples/minimal-ws-server-threads/mount-origin/index.html
rename to minimal-examples/server/minimal-ws-server-threads/mount-origin/index.html
diff --git a/minimal-examples/minimal-ws-server-threads/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server-threads/mount-origin/libwebsockets.org-logo.png
similarity index 100%
rename from minimal-examples/minimal-ws-server-threads/mount-origin/libwebsockets.org-logo.png
rename to minimal-examples/server/minimal-ws-server-threads/mount-origin/libwebsockets.org-logo.png
Binary files differ
diff --git a/minimal-examples/minimal-ws-server-threads/protocol_lws_minimal.c b/minimal-examples/server/minimal-ws-server-threads/protocol_lws_minimal.c
similarity index 100%
rename from minimal-examples/minimal-ws-server-threads/protocol_lws_minimal.c
rename to minimal-examples/server/minimal-ws-server-threads/protocol_lws_minimal.c
diff --git a/minimal-examples/minimal-ws-server/CMakeLists.txt b/minimal-examples/server/minimal-ws-server/CMakeLists.txt
similarity index 100%
rename from minimal-examples/minimal-ws-server/CMakeLists.txt
rename to minimal-examples/server/minimal-ws-server/CMakeLists.txt
diff --git a/minimal-examples/minimal-ws-server/README.md b/minimal-examples/server/minimal-ws-server/README.md
similarity index 100%
rename from minimal-examples/minimal-ws-server/README.md
rename to minimal-examples/server/minimal-ws-server/README.md
diff --git a/minimal-examples/minimal-ws-server/minimal-ws-server.c b/minimal-examples/server/minimal-ws-server/minimal-ws-server.c
similarity index 100%
rename from minimal-examples/minimal-ws-server/minimal-ws-server.c
rename to minimal-examples/server/minimal-ws-server/minimal-ws-server.c
diff --git a/minimal-examples/minimal-ws-server/mount-origin/favicon.ico b/minimal-examples/server/minimal-ws-server/mount-origin/favicon.ico
similarity index 100%
rename from minimal-examples/minimal-ws-server/mount-origin/favicon.ico
rename to minimal-examples/server/minimal-ws-server/mount-origin/favicon.ico
Binary files differ
diff --git a/minimal-examples/minimal-ws-server/mount-origin/index.html b/minimal-examples/server/minimal-ws-server/mount-origin/index.html
similarity index 100%
rename from minimal-examples/minimal-ws-server/mount-origin/index.html
rename to minimal-examples/server/minimal-ws-server/mount-origin/index.html
diff --git a/minimal-examples/minimal-ws-server/mount-origin/libwebsockets.org-logo.png b/minimal-examples/server/minimal-ws-server/mount-origin/libwebsockets.org-logo.png
similarity index 100%
rename from minimal-examples/minimal-ws-server/mount-origin/libwebsockets.org-logo.png
rename to minimal-examples/server/minimal-ws-server/mount-origin/libwebsockets.org-logo.png
Binary files differ
diff --git a/minimal-examples/minimal-ws-server/protocol_lws_minimal.c b/minimal-examples/server/minimal-ws-server/protocol_lws_minimal.c
similarity index 100%
rename from minimal-examples/minimal-ws-server/protocol_lws_minimal.c
rename to minimal-examples/server/minimal-ws-server/protocol_lws_minimal.c