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

PROBLEM STATEMENT: Find a way to have rusEFI documentation indexed #138

Open
rusefillc opened this issue May 17, 2021 · 39 comments
Open

PROBLEM STATEMENT: Find a way to have rusEFI documentation indexed #138

rusefillc opened this issue May 17, 2021 · 39 comments

Comments

@rusefillc
Copy link
Contributor

rusefillc commented May 17, 2021

https://github.com/nelsonjchen/github-wiki-see-rs

need a box where we can drop a docker and park rusefi subdomain

See also isaacs/github#1683
See also github/docs#4115

@rusefillc
Copy link
Contributor Author

@chuckwagoncomputing would you like root access to

image

@rusefillc
Copy link
Contributor Author

https://github.com/djacquel/WikiToJekyll is an alternative

@chuckwagoncomputing
Copy link
Member

@rusefillc I think we should do the Github Pages option. If you're on board with that, you should create a repo and set up a .rusefi.com subdomain to point to it.

https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/managing-a-custom-domain-for-your-github-pages-site

@rusefillc
Copy link
Contributor Author

rusefillc commented May 18, 2021

@rusefillc
Copy link
Contributor Author

Now I am confused why does http://rusefi.github.io redirect me to http://wiki.rusefi.com?

@rusefillc
Copy link
Contributor Author

image

@rusefillc
Copy link
Contributor Author

rusefillc commented May 18, 2021

certificate drama next?

image

@rusefillc
Copy link
Contributor Author

is TL,DR to wait an hour?
It has been a few and still

image

@chuckwagoncomputing
Copy link
Member

Try removing and re-adding the custom domain in the repo settings.

@rusefillc
Copy link
Contributor Author

image

will give it a couple of hours and re-add

@rusefillc
Copy link
Contributor Author

IT HAS WORKED?!

image

@rusefillc
Copy link
Contributor Author

image

@rusefillc rusefillc changed the title Deploy GH wiki Rust proxy Find a way to have wiki indexed May 19, 2021
rusefillc pushed a commit to rusefi/rusefi.github.io that referenced this issue May 19, 2021
@rusefillc
Copy link
Contributor Author

@chuckwagoncomputing
Copy link
Member

So it turns out that Github Pages only supports a subset of Jekyll plugins, so the WikiToJekyll plugin doesn't work. We can generate it with a Github Action though.

@chuckwagoncomputing
Copy link
Member

So basically, at this point there's no purpose to using Github Pages. In fact we'll be ahead with the configurability of our own server.
New Plan: Use a Github Action to generate static site files and FTP them to the server.

As to which static site generator to use, I'm not sure yet. Either I don't understand Jekyll infrastructure, or it's deeply crippled for non-github-pages use.

@chuckwagoncomputing
Copy link
Member

Status update:
My next idea was Readthedocs. Readthedocs has a "Github Import" feature, but it doesn't seem to know how to handle markdown properly.
So I decided to try Sphinx, which is what Readthedocs runs on. There is a markdown parser extension for it. This works reasonably well, but has a few issues I haven't figured out how to handle.

  1. If you add a file to the table of contents, all of the headers (lines starting with # in markdown) in that file are listed. For example, the Home page appears in the index as 4 items:
    Click on the image below for the latest builds and downloads!
    Features
    Get Started!
    rusEFI in action!
    The Sphinx index system has a few options that I thought might fix this, but it seems like this is how things are getting passed from the parser, and it doesn't work.

  2. Files that don't have a header aren't listed in the index. Github gets its titles from the .md file name, but this doesn't seem possible with Sphinx. However, adding headers to files would be an improvement in Github as well, so I don't see this as a big problem. If we need to modify the markdown parser to fix 1 though, we could probably fix this too.

  3. I noticed that with sphinx-rtd-theme, table cells don't wrap, and on the Hardware table, you have to scroll horizontally to see more than a few columns, at least on my 1366x768 laptop screen. This is a downgrade from the Github wiki.

@chuckwagoncomputing
Copy link
Member

Now I have tried using Pandocs to convert all the .md files to .rst first. This fixes problem 1, but breaks tables in a new and interesting way. Pandoc makes large cells multiple lines high, and Sphinx doesn't handle that properly.

@chuckwagoncomputing
Copy link
Member

Now I have tried Gollum, which is what Github Wikis use behind the scenes. It has problems too.

  1. Tables don't work, and I don't know why.
  2. Links to pages in a directory don't work. Gollum docs say you can use --lenient-tag-lookup to make this work, but it doesn't.

Besides these, it's fairly nice.

@chuckwagoncomputing
Copy link
Member

I have found MkDocs and it is beautiful.

@chuckwagoncomputing
Copy link
Member

We still need to add "title" headers, but otherwise I'm happy with this. Demo at https://rusefi.chuckwagoncomputing.com/wiki/Home/

@chuckwagoncomputing
Copy link
Member

OK, so I'm happy with how things have worked out with MkDocs, and am ready to PR it. I have one question though. Do we want to keep the Github Wiki? Both are compatible with the current state of the wiki, but if we take advantage of things MkDocs can do (Youtube embeds!) then the Github Wiki will be broken.
My vote is to drop it like a hot potato. :)

@rusefillc
Copy link
Contributor Author

I vote for one wiki whichever is best

@chuckwagoncomputing
Copy link
Member

Noting this here so you don't forget:
The main page of the wiki is https://rusefi.com/docs/wiki/Home/
Whatever URL you want to use will need to be redirected to that.
e.g.
https://rusefi.com/docs/wiki
https://rusefi.com/wiki
https://wiki.rusefi.com
Or as many as you like, though we should probably pick one as "official".

@rusefillc
Copy link
Contributor Author

definitely not https://rusefi.com/docs/wiki :) I will add/fix secrets once we are closer to production

@rusefillc
Copy link
Contributor Author

rusefillc commented May 24, 2021

Depends on #144 legacy wiki

@rusefillc
Copy link
Contributor Author

rusefillc commented May 24, 2021

Depends on #145 home redirect

@rusefillc
Copy link
Contributor Author

rusefillc commented May 24, 2021

Depends on #146 self-links

@rusefillc rusefillc changed the title Find a way to have wiki indexed Find a way to have wiki indexed - turning into complete wiki migration May 24, 2021
@rusefillc
Copy link
Contributor Author

Depends on #149

@nelsonjchen
Copy link

😅 , my terrible web app hack wasn't meant to be an instance'd thing (https://github-wiki-see.page/). I'm glad you guys are sorting that out though!

@chuckwagoncomputing
Copy link
Member

I saw another option today that may be worth considering: Docusaurus.
facebook/docusaurus#2725

@rusefillc
Copy link
Contributor Author

As of today https://github.com/robots.txt does not mention wiki. it looks like this issue is no longer an issue.

We now need to clean-up wiki1 and consider hiding rusefi_documentation

@rusefillc rusefillc changed the title Find a way to have wiki indexed - turning into complete wiki migration Find a way to have wiki indexed - OMG it has just resolved itself! Oct 7, 2021
@rusefillc rusefillc changed the title Find a way to have wiki indexed - OMG it has just resolved itself! Find a way to have wiki indexed - yes, we sill need it :( Oct 8, 2021
@rusefillc
Copy link
Contributor Author

community/community#4992 :( anyway let me make progress

@rusefillc rusefillc reopened this Oct 8, 2021
@rusefillc
Copy link
Contributor Author

@chuckwagoncomputing do you still have the scripts which made https://rusefi.com/docs/wiki/Home/ happen? where can I see those?

i am happy to handle #148

@chuckwagoncomputing
Copy link
Member

Here's my branch where I was testing it. I'll get it up to date and ready to PR when I have time.
https://github.com/chuckwagoncomputing/rusefi_documentation/tree/external-wiki-2

Also, I want to punch someone.

@rusefillc rusefillc changed the title Find a way to have wiki indexed - yes, we sill need it :( PROBLEM STATEMENT: Find a way to have rusEFI documentation indexed Nov 8, 2022
@chuckwagoncomputing
Copy link
Member

Current status is that Google indexing of Wiki3 still sucks, but Bing and DuckDuckGo indexing is great.

@mi-hol
Copy link
Contributor

mi-hol commented Jan 12, 2023

Google indexing of Wiki3 still sucks

@chuckwagoncomputing I seem to remember a hint in SiteChecker about "duplicated content" and a note to configure a corresponding hint for Google. Should I dig for this info?

@chuckwagoncomputing
Copy link
Member

I made a sitechecker account, and these are the issues listed under Indexability:
image
I'm not sure how big of issues these actually are. From my research, I don't think that not having a robots.txt is an issue.
Other tags in H1 and H2 are because of how MkDocs generates the header hotlinks. That could be turned off, but it's nice to have. If turned off, hotlinks would still work, they just wouldn't be discoverable.

@chuckwagoncomputing
Copy link
Member

Here is the Duplicate Content section
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants