ghubstan cffbfcf481
Split API examples & doc generator into separate modules
This might give Python devs an easier time than if all the sample
code lived deep inside a gradle project.  This means there is
no root project gradle build file;  the reference-doc-builder and
java-examples modules are separate java projects, with their own
build files.
2022-03-16 17:21:25 -03:00
2022-03-16 16:59:54 -03:00

Bisq API Reference Doc Generator

Produces Bisq API Reference Doc.

What is bisq-api-reference?

This application script consumes Bisq .proto files (pb.proto and grpc.proto), and produces index.html.md -- a Slate compatible Markdown file.

Note: For Python proto generation to work properly, the .proto files must be copied to the project's proto directory from the remote or local GitHub repo. They are not versioned in this project repo.

The Markdown file is then manually deployed to a developer's or bisq-network's fork of the Slate repository, where the slate fork transforms it to a single html file describing Bisq gRPC API services, with example code.

Usage

  1. Fork Slate

  2. Run BisqApiDocMain:

BisqApiDocMain --protosIn=<path-to-bisq-protub-files>/proto 
            \ --markdownOut=<path-to-slate-home>/source 
            \ --failOnMissingDocumentation=false
  1. Commit changes in your local slate/source file (index.html.md) to your forked slate repo.
git commit -a -m "Update index.html.md"
  1. Run slate's deploy.sh script

  2. After a few minutes, see changes on in your forked slate's github pages site. For example,
    if your index.html.md file was deployed to bisq-network, the URL will be https://bisq-network.github.io/slate.

Credits

Credit to Juntao Han for making his markdown4j API available for use in this project. His source code is included in this project, modified in ways to make generated markdown blocks compatible with Slate/GitHub style markdown.

Lombok annotations are also replaced by the implementations they would generate if that had worked in my gradle development setup.

Description
Bisq API Reference Doc Generator
Readme AGPL-3.0
Languages
Java 81.5%
Python 15.6%
Shell 2.9%