Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a mdBook for qmetaobject #248

Open
8 tasks
Ayush1325 opened this issue Feb 16, 2022 · 8 comments
Open
8 tasks

Create a mdBook for qmetaobject #248

Ayush1325 opened this issue Feb 16, 2022 · 8 comments
Labels
A-docs Area: documentation for any part of the projects C-enhancement Category: An issue proposing an enhancement or a PR with one. E-help-wanted Call for participation: Help is requested to fix this issue. P-medium Medium priority

Comments

@Ayush1325
Copy link
Collaborator

Ayush1325 commented Feb 16, 2022

We need to have a mdBook that makes getting started with qmetaobject easier.

Goals:

  • Steps to setup development for all platforms supported by qmetaobject
  • Beginner-friendly application walkthrough
  • Tutorials about doing some commonly required stuff in qmetobject.
  • Tutorial for Adding Rust wrappers for Qt C++ API (Already present in Readme)
  • Getting Help section (maybe a matrix or zulip room)
  • Getting Involved section

Optional Goals:

  • An advanced section containing information about using async Rust with qmetaobject
  • Information about inner workings of qmetaobject

This should also help in cleaning up and updating the examples present in qmetaobject and attracting new people and contributors. Currently, the lack of documentation makes it feel not ready for serious projects.

@Ayush1325 Ayush1325 added C-enhancement Category: An issue proposing an enhancement or a PR with one. P-medium Medium priority A-docs Area: documentation for any part of the projects E-help-wanted Call for participation: Help is requested to fix this issue. labels Feb 16, 2022
@ogoffart
Copy link
Member

Sounds good.
I could enable the wiki.

But I believe the best would be to have markdown files in a docs/ folder in the repository.
They could also be added in a #[cfg(doc)] mod docs modules or so, so it is shown in docs.rs

Should I enable the wiki in this repository?

@Ayush1325
Copy link
Collaborator Author

Ayush1325 commented Feb 16, 2022

Sounds good. I could enable the wiki.

But I believe the best would be to have markdown files in a docs/ folder in the repository. They could also be added in a #[cfg(doc)] mod docs modules or so, so it is shown in docs.rs

Should I enable the wiki in this repository?

I am not well versed in how this should be done either. The options I know about are the following:

  1. Github Wiki: Seems to be used pretty less for some reason. Not a bad option but might not be best, especially for discoverability.
  2. Github Pages: Used by serde and many other rust crates. Seems a little more work than wiki to get started but a lot more flexible and discoverable.

As far as showing it in docs.rs, I don't think that is necessary. I mainly want the things that cannot be present in the docs.rs to be show in the manual. Things like tutorials and walkthroughs. Adding them to docs.rs might generate more noise in docs than helping.

The main thing I want to tackle is to improve awareness about this project. Currently, most people don't really know about it's existence and state. After messing around with the source code in the past few months, I have found a lot of things that I didn't even consider to be possible when I initially started contributing. Having manual should help bring in newbies.

@ogoffart
Copy link
Member

I think having the .md files in a folder in git is exactly like a wiki. The github web interface renders them properly, and they can be edited from there too.
The advantage of the .md files is that they are part of the git history and versioned with the rest of the project.

@Ayush1325
Copy link
Collaborator Author

Ayush1325 commented Feb 16, 2022

I think having the .md files in a folder in git is exactly like a wiki. The github web interface renders them properly, and they can be edited from there too. The advantage of the .md files is that they are part of the git history and versioned with the rest of the project.

Hmm. Do you think they will show up on search results though? It would be great if the manual could be discovered without needing prerequisite knowledge about the existence of this project.
For example, on searching for serde, the first result I get is Overview Serde.

@ogoffart
Copy link
Member

It seems that neither wiki, nor file in repository other than the readme, are indexed by google.
So i guess the easier would be to add them to docs.rs (they can be included with #[doc = include_str!("docs/foobar")] pub mod foobar {} ) because docs.rs is indexed

@Ayush1325
Copy link
Collaborator Author

Ayush1325 commented Feb 16, 2022

@ogoffart How about using something like GitBook or mdBook?
I think we can use mdBook + Github Pages in a docs folder.

@ogoffart
Copy link
Member

Yeah, mdbook makes sense

@Ayush1325
Copy link
Collaborator Author

Yeah, mdbook makes sense

Ok, there is also a Github Action for mdbook which just needs the mdbook stuff to be present under a folder so it should be pretty similar to just having md files in the docs folder in terms of maintenance.

@Ayush1325 Ayush1325 changed the title Create a Wiki/Manual for qmetaobject Create a mdBook for qmetaobject Feb 16, 2022
@Ayush1325 Ayush1325 mentioned this issue Mar 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-docs Area: documentation for any part of the projects C-enhancement Category: An issue proposing an enhancement or a PR with one. E-help-wanted Call for participation: Help is requested to fix this issue. P-medium Medium priority
Projects
None yet
Development

No branches or pull requests

2 participants