# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 8
# self = https://watcher.sour.is/conv/woh24pa
I wonder how go-gopher actually renders gophermaps into html
@akoizumi It doesn't, but gopherproxy does. It just uses a template and iterates over the gophermap
@akoizumi It doesn't, but gopherproxy does. It just uses a template and iterates over the gophermap
heh https://git.mills.io/prologic/gopherproxy/src/branch/master/template.go
@akoizumi Yup it's basically just this:


<pre>
{{range .Lines}} {{if .Link}}({{.Type}}) <a class="{{ .Type }}" href="{{.Link}}">{{.Text}}</a>{{else}}      {{.Text}}{{end}}
{{end}}</pre>
@akoizumi Yup it's basically just this:


<pre>
{{range .Lines}} {{if .Link}}({{.Type}}) <a class="{{ .Type }}" href="{{.Link}}">{{.Text}}</a>{{else}}      {{.Text}}{{end}}
{{end}}</pre>
In fact the gopherclient basically embeds the gopherproxy.
In fact the gopherclient basically embeds the gopherproxy.