Frontpage and Documentation overhaul

hi @ahopkins I am very excited that Sanic’s document will usher in a new change.
I have already fork sanic-guide project. And I hope there will be more Chinese developer to know and use Sanic Framework. So I have started my translation work now.

I hope I can make a contribution to the forums.

Although my English is not very good, at least it makes the document look smoother than Google translation.

Can the community reserve an entrance for Chinese documents? We will be very grateful.

If this is allowed, I will do my best to maintain this Chinese document in the future until you find a professional translator.

Looking forward to your reply!

This is awesome. I opened an issue for this. There are some useful plug-ins for translation support.

I am very glad to hear from you.

But I don’t agree with using translation plug-ins because of vuepress supports multiple languages.

I think we should arrange the files under src/guide in the following like this:

src/guide
├─advanced
├─basics
├─best-practices
├─deployment
├─how-to
└─zh    # Chinese document folder
    ├─advanced
    ├─basics
    ├─best-practices
    ├─deployment
    └─how-to

I will translate these documents and place them as new files in src/guide/zh folder

After that, we just need to modify .vuepress/config.js to add some config in sidebar:

    sidebar: {
      "/guide/zh/": [{
          title: "概览",
          sidebarDepth: 1,
          children: ["/guide/zh/", "/guide/zh/getting-started.md"],
        },
     ...
      ],
      "/guide/": [{
          title: "General",
          sidebarDepth: 1,
          children: ["/guide/", "/guide/getting-started.md"],
        },
       ...
      ]
    }

Maybe you will ask what to do if the document is updated. Don’t worry. I think that since we are going to make a formal document, this document will definitely not be changed frequently. It is enough for me to modify it manually with minor changes.

Why should I insist on this deployment?

Because I think if you use translation plug-in, what’s the difference between it and Google Translation?

In order to ensure the accuracy of expressing meaning and the fluency of documents,

I think it’s better to support multiple languages in my way.

What do you think?


I just thought about it carefully, maybe I misunderstood what you said.

I have always thought that you want to implement localization operations by using third-party translation plugins, but after I carefully figured it out, I think you are referring to the use of vuepress to implement multilingual sites.

I am sorry that I said the above without thinking carefully.

Let’s implement sanic’s multi-language support together. Come on!


Now I have completed the multilingual support of menu and homepage, and I am still translating the document part. When I finish translating, I will do PR operation.

:sunglasses: Yes, this is what I meant.

There may be some pain keeping in sync the next couple months because there is still a lot to add. After initial launch, we should probably add some system around PRs to have your approval and additional commits when there are changes. So, if someone adds a new section or makes a change, you can push a commit as well.

The same for any other languages we decide to suppoort.

I can’t agree with you more.

Let us work hard to make the community better

1 Like

Great! I have translated some of theses .md files, how to participate in this project? Did you have a Github repository?

Hope we don’t already translate the same document. :upside_down_face:

This is my translation project. Some contents are not translated well and need polishing. You can check whether there are duplicate documents first.
https://github.com/miss85246/sanic-guide

@ahopkins @misss85246 Thanks ahopkins, I had forked the repo. should we have a translation branch so that others can fork and PR?

So did you read the documents I translated? Is there duplicated with yours ?

Yes. I will add you both to the repo so you can more easily push changes. @ZinkLu what is your GitHub username?

No, I translated backwards . I have done class-based-views.md and part of proxy-headers.md. I will push to the branch later.

I have replied under the issue. Language support · Issue #4 · sanic-org/sanic-guide · GitHub

well, I have finished the translation of class-based-view too, we can see how to translate more smoothly.

OK :ok_hand:, Let’s more 信达雅 if we could :stuck_out_tongue_winking_eye:

Hey there — just saw this — I came here coz I saw the new docs — super sweet.

I don’t actually have a ton of experience with vuepress, so I can’t claim to have any expertise. What I do have is the experience of seeing how poorly docsify performs in terms of SEO (because it can’t), and how quickly Google indexes my docs that are published on vuepress.

Looking at the site, I think that you have done a great job — so kudos!

… Separate topic:

Btw, have you considered adding a Discord server for sanic? I thought that I would suggest that because it makes for easier conversation and quick helps. I am on Discord 24/7 and very generally have found that libraries that have Discord tend to be easier to use because I can ask for advice quickly in topical channels. Sometimes, there is a small cost in writing messages on forums. They are great for longer question but often it’s better to build communities on Discord servers.

Please consider it!

1 Like

We have a gitter room. Seems it would just be another channel for conversation. :man_shrugging:

Yes, I see. Discord can grow a community a lot further than having a chat go on gitter. It’s a bit difficult to explain the benefits unless you are also on Discord.

There is also a very active Discord API library on Python that would enable anyone to write custom function at ease with lots of power for features and functionalities — e.g. integrating with things like Github, websites and apps. I am very active on Discord, but probably because also I am in the gaming space and Discord is a natural fit.

That said, I also spend time on quite a few library-specific Discord where they have been very useful to me (including one of sanic’s competing library). This is why I urge that you consider.

It’s so much more than just having a chat. You can create channels for:

  • best practices
  • showcase
  • help

In Discord communities where I have received substantial help from their maintainers, I am more inclined to donate to the project. It may sound strange but relationships are often built in more casual settings and less from emails and official forum posts.

Interesting :thinking: Anyone else have an opinion? @core-devs ?