summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorubq323 <ubq323@ubq323.website>2022-07-20 19:27:03 +0100
committerubq323 <ubq323@ubq323.website>2022-07-20 19:27:03 +0100
commite7249762d0d90ce9028e633482b8976eec06e86b (patch)
treef1659af4a54423a8d2b49b0f8bd9f4f33eafb1f4
parentf9fe76a083a1d3f5a62e5e569b3794679da5cfb8 (diff)
add documentation for api and things
-rw-r--r--doc.txt39
-rw-r--r--oldindex.html1
2 files changed, 40 insertions, 0 deletions
diff --git a/doc.txt b/doc.txt
new file mode 100644
index 0000000..32f9ad9
--- /dev/null
+++ b/doc.txt
@@ -0,0 +1,39 @@
+GEORGE documentation
+last updated 2022-07-20
+
+GET https://george.gh0.pw/data.cgi
+returns a json array of current GEORGE members.
+the order of members in the array is the order used for calculating NEXT and PREV links.
+each item in the array is an object with name, link, colour, and is_council fields. the meaning of these should be obvious.
+
+---
+
+GET https://george.gh0.pw/embed.cgi?membername
+GET https://george.gh0.pw/embed.cgi?membername&key1=val1[&...]
+returns the GEORGE navigation widget, suitable for being embedded as an iframe on the page of the GEORGE member with name membername.
+addional options may be provided as key-value pairs. currently these are used for changing some style values. the presently supported options are:
+key default description
+c_bg white background colour of the widget
+c_george #3d3db8 text colour of the word "GEORGE"
+c_links blue text colour of the NEXT and PREV links
+c_underline blue underline colour of the word "GEORGE"
+c_fg black text colour of all other text
+
+it is recommended that you embed the widget using an iframe tag like this:
+<iframe height="50" src="https://george.gh0.pw/embed.cgi?membername" style="border:none;width:100%" sandbox="allow-top-navigation"></iframe>
+the sandbox attribute is strictly speaking not required, since we set a CSP header with the same value on the server as well. it probably doesn't hurt to include it anyway, though.
+
+on the serverside we check the http Referer header, if one is present, to ensure that the embed widget for a given member can only be embedded on that member's site. we also set a CSP frame-ancestors directive, with a similar effect.
+
+the pulsating animation on the word "GEORGE" is disabled if the CSS prefers-reduced-motion media query is active.
+
+---
+
+GET https://coral.shoes/george-status/george-status-json
+returns current status information about the GEORGE webring, including which members currently haven't correctly embedded the GEORGE widget onto their page.
+
+===
+
+the GEORGE source code is at https://g.gh0.pw/george.site/
+the GEORGE status source code is at https://github.com/loovjo/shoe-router/tree/master/george-status
+
diff --git a/oldindex.html b/oldindex.html
index e24bad6..2f920a7 100644
--- a/oldindex.html
+++ b/oldindex.html
@@ -87,6 +87,7 @@ a{color:cyan}
<li><a href="https://a.gh0.pw/3"><span class="george">GEORGE</span> forum</a> on apioforum</li>
<li><a href="irc://ubq323.website/g"><span class="george">GEORGE</span> irc channel</a> (#g on apionet)</li>
<li><a href="xmpp://george@conference.ubq323.website/join"><span class="george">GEORGE</span> xmpp MUC</a> (george@conference.ubq323.website)</li>
+ <li><a href="/doc.txt"><span class="george">GEORGE</span> api and embedding documentation</a></li>
</ul>
<iframe src="https://john.mondecitronne.com/embed?ref=george.gh0.pw" style="margin-left:auto;display:block;margin-right:auto;max-width:732px;width:100%;height:94px;border:none;"></iframe>
<canvas id=canvas style="position:fixed"></canvas>