hscloud/devtools/hackdoc
q3k 97b5cd7b58 go: re-do the entire thing
This is a mega-change, but attempting to split this up further is
probably not worth the effort.

Summary:

1. Bump up bazel, rules_go, and others.
2. Switch to new go target naming (bye bye go_default_library)
3. Move go deps to go.mod/go.sum, use make gazelle generate from that
4. Bump up Python deps a bit

And also whatever was required to actually get things to work - loads of
small useless changes.

Tested to work on NixOS and Ubuntu 20.04:

   $ bazel build //...
   $ bazel test //...

Change-Id: I8364bdaa1406b9ae4d0385a6b607f3e7989f98a9
Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1583
Reviewed-by: q3k <q3k@hackerspace.pl>
2023-09-22 21:50:19 +00:00
..
config go: re-do the entire thing 2023-09-22 21:50:19 +00:00
source go: re-do the entire thing 2023-09-22 21:50:19 +00:00
tpl devtools/hackdoc: fixup rendering on mobile 2021-09-18 20:23:34 +00:00
BUILD.bazel go: re-do the entire thing 2023-09-22 21:50:19 +00:00
README.md go: re-do the entire thing 2023-09-22 21:50:19 +00:00
helpers.go devtools/{depotview,hackdoc}: tie both together 2020-04-10 19:24:48 +02:00
main.go hackdoc: when redirecting, skip ref if default 2021-03-06 22:16:54 +00:00
markdown.go go: re-do the entire thing 2023-09-22 21:50:19 +00:00

README.md

Hackdoc

Hackdoc is a tool to automatically serve documentation based on a checkout of the hscloud source.

Usage

Any Markdown submitted to hscloud is visible via hackdoc. Simply go to https://hackdoc.hackerspace.pl/path/to/markdown.md to see it rendered.

You can pass a ?ref=foo URL parameter to a hackdoc URL to get it to render a particular vesrion of the hscloud monorepo. For example:

Special Markdown

We should be accepting a Somewhat Standard Subset Of Markdown. For reference, we're using the blackfriday library with CommonExtensions enabled.

In addition, we also support Table of Contents autorendering, just place the following anywhere in your document to render a TOC:

[TOC]

Local Rendering

To run hackdoc locally on a filesystem checkout (ie. when working on docs, templates, or hackdoc itself), run:

 bazel run //devtools/hackdoc  -- -hspki_disable -docroot /path/to/hscloud

The output log should tell you where hackdoc just started listening at. Currently this is 127.0.0.1:8080 by default. You can change this by passing a -pub_listen flag, eg. -pub_listen 127.0.0.1:4242.