codebude / QRCoder

A pure C# Open Source QR Code implementation
MIT License
4.66k stars 1.1k forks source link

[WIP/QRCoder2] Documentation and wiki #543

Open codebude opened 6 months ago

codebude commented 6 months ago

Note: This issue is part of the planning of version 2 of the QRCoder. The meta-issue can be found here. These comments have been copied into this issue here, with the comments marked as such. If comments on the topic of this issue already exist in the meta thread, they have been copied here, naming the authors.

Topic

So far, the documentation is centralized in the wiki of this repository. In case we have several packages/repositories in the future, do we distribute the wiki over several repos (each with the information about the package) or should we better switch to an external wiki solution? (e.g. mkdocs + Github pages). The advantage of an external solution would be that we could implement versioning in the documentation. (Unfortunately, the current wiki only displays the latest version of the QRCoder, which can be confusing for users of older versions). Are there any recommendations/experiences here?

codebude commented 6 months ago

I don't have a great suggestion here. At GraphQL.NET the documentation is stored within the main repository, and published automatically upon merge to a separate website; we do not use the wiki. It allows any contributor to suggest a change via PR, while providing for review by maintainers. It also keeps the documentation tied to a specific version/commit. It's most beneficial when working on new versions or features, as it allows contributors to update the documentation alongside their feature changes. Maintainers can request that contributors update the necessary documentation before merging the PR. However, we currently have no way of allowing users to view old documentation (besides browsing the repository at a old version).

I would suggest that the readme file be maintained and the same file be published in the NuGet package, rather than two separate readme. For the GraphQL.NET Server repository, all the documentation is in the readme file, and as such it is all available on NuGet for any version. If the amount of documentation in aggregate is sufficiently small, then this works well, I believe.

Originally posted by @Shane32 here.

codebude commented 6 months ago

4. Documentation and wiki: I would love to have a documentation site that is interactive. A Blazor wasm project that could be in this repo or seperate if wanted. I would be happy to contribute towards this. I have made a few webites/pages that allow for QR code customization using Blazor. I personally find Github's wiki a little lacking.

MudBlazor as an example: https://mudblazor.com/components/slider https://github.com/MudBlazor/MudBlazor

Depending on how 2.0 shapes out some documentation maybe could not be interactive but could still be in the same docs project.

Here is a rough idea for a demo (This is using MudBlazor, ImageSharp, QRCoder): InteractiveQRDemo.webm

Originally posted by @digitaldirk here.