Skip to content

docs: add DocFX documentation with GitHub Pages - #62

Merged
Kukks merged 1 commit into
masterfrom
docs/docfx-ghpages
Apr 4, 2026
Merged

Kukks merged 1 commit into
masterfrom
docs/docfx-ghpages

Conversation

@Kukks

@Kukks Kukks commented Apr 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

Adds comprehensive documentation infrastructure for the NArk .NET SDK using DocFX, with automatic deployment to GitHub Pages.

Documentation Infrastructure

  • docfx.json — Generates API reference from all 4 SDK libraries (Abstractions, Core, Swaps, Storage.EfCore)
  • GitHub Actions workflow — Builds and deploys docs on every push to master
  • 538 pages generated (523 API reference + 11 conceptual articles)

Conceptual Articles

Article Content
Getting Started Install packages, Generic Host + IServiceCollection setup, network config
Architecture Package layering, dependency direction, extensibility points, transport layer
Wallets HD (BIP-39) and SingleKey wallet management, contracts
Spending Automatic/manual coin selection, sub-dust, collaborative exit
Assets Issuance, transfer, controlled issuance, querying, binary format
Swaps Boltz submarine/reverse/chain swaps, lifecycle states
Storage EF Core setup, entity reference, provider-agnostic config
Development Building, testing, project structure, publishing

After Merge

  • Enable GitHub Pages (Actions source) in repo settings
  • Update repo homepage to https://arkade-os.github.io/dotnet-sdk/

Test plan

  • DocFX builds locally with 0 errors, 0 warnings
  • CI build passes
  • Documentation deploys to GitHub Pages after merge

- Set up DocFX for auto-generated API reference from all SDK libraries
  (Abstractions, Core, Swaps, Storage.EfCore)
- Add conceptual articles: getting started, architecture, wallets,
  spending, assets, swaps, storage, and development guide
- Create GitHub Actions workflow for automatic deployment to GitHub
  Pages on push to master
- 538 pages generated (523 API reference + 11 conceptual + TOCs)
@ghost

ghost commented Apr 3, 2026

Copy link
Copy Markdown

🔍 Arkana PR Review — dotnet-sdk#62

Overview

Adds comprehensive DocFX documentation infrastructure with GitHub Pages deployment. 713 additions, 0 deletions across 18 files. Pure documentation — no runtime code changes.

Highlights ✅

  • Well-structured CI workflow — Proper permissions block (minimal: contents: read, pages: write, id-token: write), concurrency guard to avoid parallel deploys, separate build/deploy jobs.
  • Complete conceptual docs — 8 articles covering architecture, wallets, spending, assets, swaps, storage, and development. Good coverage of the SDK surface.
  • Correct package layering — The dependency direction diagram (Abstractions → Core → Swaps → Storage.EfCore) matches the actual codebase structure.
  • Sensible .gitignore — _site/, api/*.yml, api/.manifest excluded.

Observations

  1. docfx.json targets net8.0 only — The tests target .NET 10 per development.md. If any public API surfaces use .NET 10-only types, the metadata extraction might miss them. Likely fine since the libraries themselves target net8.0, but worth confirming.

  2. Submodule checkout in workflow — fetch-depth: 0 with submodules: true pulls full history including the arkade-regtest submodule (from feat: add arkade-regtest submodule for shared regtest env #56 if merged). This is correct for DocFX git features but may slow builds slightly.

  3. Code samples in articles — The spending.md example appears truncated (ends mid-code-block at walletId,). Verify the file is complete before merge.

  4. filterConfig.yml — Not shown in diff but referenced in docfx.json. Presumably filters out internal types from API docs. Worth confirming it exists and excludes test/internal namespaces.

  5. Post-merge steps — PR body correctly notes that GitHub Pages must be enabled in repo settings (Actions source). Consider adding this to a CONTRIBUTING.md or repo wiki so the step isn't lost.

Security

  • No secrets in code, no credential exposure.
  • Workflow uses id-token: write for GitHub Pages OIDC — standard and appropriate.
  • No third-party actions beyond official GitHub/Microsoft actions.

Verdict

Clean documentation PR. No blocking issues. The truncated spending.md sample should be verified before merge.

@Kukks
Kukks merged commit fd9f388 into master Apr 4, 2026
8 checks passed
@Kukks
Kukks deleted the docs/docfx-ghpages branch April 4, 2026 05:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant