Thanks Ethan for the initiative. +1 for the proposal.

And +1 for Docusaurus. I've played with this doc framework a few months
back. It is fine overall with decent community support as far as I can
tell. Versioning is great, as well as i18n. Docusaurus v2 generates an SPA
<https://en.wikipedia.org/wiki/Single-page_application> (super responsive)
with React. When JavaScript is disabled it is still somewhat
<https://github.com/facebook/docusaurus/issues/3030> usable.

We might even be able to integrate full-text search
<https://docusaurus.io/docs/search> (e.g. Algolia) later on.

-Siyao

On Aug 29, 2023 at 1:34:48 PM, Ethan Rose <er...@cloudera.com.invalid>
wrote:

> I cannot seem to send the doc on this email thread, sorry for the
> confusion. I have instead filed HDDS-9225
> <https://issues.apache.org/jira/browse/HDDS-9225> as a parent Jira for
> this
> task and attached the doc there. The link is here
> <
> https://issues.apache.org/jira/secure/attachment/13062569/Improving%20the%20Apache%20Ozone%20Website.pdf
> >
> as well. The proposal includes details for improving both the site layout
> and its content.
>
> Ethan
>
> On Tue, Aug 29, 2023 at 11:17 AM Ethan Rose <er...@cloudera.com> wrote:
>
> Thanks for the responses, it seems the PDF document did not attach
>
> correctly. I have re-attached it to this email. If it is still not visible
>
> I will post it on Jira and share the link.
>
>
> Ethan
>
>
> On Tue, Aug 29, 2023 at 1:45 AM Zita Dombi <zitado...@apache.org> wrote:
>
>
> > +1, this is a really good idea, I think many people will benefit from it.
>
> > I
>
> > started working on Ozone freshly graduated, as my first job, so I felt
> the
>
> > disadvantages of the current website and documentation while learning
>
> > about
>
> > Ozone. The document you shared on the community sync is very detailed,
> you
>
> > also mentioned that you attached it in the email above, but I can't find
>
> > it
>
> > there, maybe I'm missing something :)
>
> >
>
> > thanks,
>
> > Zita
>
> >
>
> > Dinesh Chitlangia <dine...@apache.org> ezt írta (időpont: 2023. aug.
> 29.,
>
> > K, 4:44):
>
> >
>
> > > +1 , this is a much needed improvement.
>
> > >
>
> > >
>
> > > Thanks,
>
> > > Dinesh
>
> > >
>
> > > On Mon, Aug 28, 2023 at 8:25 PM Ethan Rose <er...@cloudera.com.invalid
> >
>
> > > wrote:
>
> > >
>
> > > > Hello Ozone Community,
>
> > > >
>
> > > > As many of you are aware, Ozone's website and documentation has
>
> > remained
>
> > > > somewhat disorganized and lacking in content for a while. I would
>
> > like to
>
> > > > kick start an initiative to change that. I have attached a document
>
> > > > outlining a plan to redo Ozone's website and documentation so that it
>
> > > will
>
> > > > not be a barrier for new adopters and can be easily updated to hold
>
> > all
>
> > > > content we wish to publish. The document outlines a high level plan
>
> > that
>
> > > > will be broken into multiple parent jiras with subtasks to follow
>
> > while
>
> > > the
>
> > > > new website is under construction. I would encourage everyone to read
>
> > it
>
> > > > and give feedback on this initiative. I also presented this content
> in
>
> > > this
>
> > > > week's U.S time zone community sync.
>
> > > >
>
> > > > As part of "Phase 1" in the document, I would like to make the
>
> > following
>
> > > > proposals:
>
> > > >
>
> > > > 1. Migrate Ozone's static site generator from Hugo to Docusaurus.
>
> > > >
>
> > > > Docusaurus <https://docusaurus.io/> is an MIT licensed static site
>
> > > > generator maintained by Meta/Facebook open source. While there are
>
> > many
>
> > > > examples <https://docusaurus.io/showcase> of sites using Docusaurus,
>
> > > > including the Docusaurus site itself, YuniKorn
>
> > > > <https://yunikorn.apache.org/> is another Apache project that is
>
> > > > successfully using the framework for their website. I have discussed
>
> > this
>
> > > > with two Yunikorn PMC members who work on the site and they said the
>
> > > > experience has been positive.
>
> > > >
>
> > > > What does Docusaurus provide us that Hugo does not? Hugo's advantage
>
> > is
>
> > > > that it is written in Go, so in theory the site can be built from
> just
>
> > > one
>
> > > > easy to install binary.  Docusaurus is written in Javascript, so it
>
> > needs
>
> > > > to be installed from a package manager like npm. However, if we want
>
> > to
>
> > > > make the site more robust with things like collapsable menus, minimap
>
> > > side
>
> > > > bar, header linking, search, breadcrumbs, and more, we would probably
>
> > > need
>
> > > > to depend on a Hugo theme rather than build all these things from
>
> > > scratch.
>
> > > > Hugo themes with these features, like Doks <https://getdoks.org>,
> are
>
> > > > also javascript packages that require node to build, but have the
>
> > > following
>
> > > > disadvantages:
>
> > > > - Configuration becomes split between the theme and Hugo itself. It
> is
>
> > > not
>
> > > > intuitive for new developers whether a config belongs to Hugo or the
>
> > > theme,
>
> > > > or whose documentation to read to make changes.
>
> > > > - The site is now highly dependent on another library that may not
> get
>
> > > the
>
> > > > same amount of updates or support as the main Hugo project.
>
> > > >
>
> > > > Since Docusaurus is built specifically for project documentation, it
>
> > > > provides all these features with its default theme, and configuration
>
> > > > happens in a centralized docusaurus.config.js file. I have tested it
>
> > and
>
> > > > can confirm that it is just as easy to spin up the site locally and
>
> > view
>
> > > > edits in real time as Hugo. It also has a built in versioning
>
> > > > <https://docusaurus.io/docs/versioning> framework that we can use
>
> > > instead
>
> > > > of our manual process of copying over docs from the main Ozone repo,
>
> > > which
>
> > > > brings me to my next proposal.
>
> > > >
>
> > > > 2. Move our docs out of the ozone repo and into the ozone-site repo.
>
> > > >
>
> > > > In theory, having docs tracked and versioned in the same repo as the
>
> > code
>
> > > > sounds like a good idea, but in practice, we do not use any of the
>
> > > > potential benefits:
>
> > > > - We always use separate PRs to update docs and code, and I think
> this
>
> > > > actually makes reviews easier.
>
> > > > - The existence of the docs in the same repo as the code does not
>
> > seem to
>
> > > > "remind" anyone to update the docs if something relevant changes.
> Zita
>
> > > > suggested at the community sync that adding a reminder to update docs
>
> > to
>
> > > > our PR template would probably be more effective.
>
> > > > - Relations between code and doc changes can already be created with
>
> > > > existing Jira and Github linking features, even across repos.
>
> > > >
>
> > > > This split model does cause us problems:
>
> > > > - It is challenging to automatically publish incremental updates to
>
> > the
>
> > > > versioned portion of the docs. In order to update the versioned docs,
>
> > we
>
> > > > need to build the docs within Ozone, and manually copy the built
>
> > > artifacts
>
> > > > into the asf-site branch of the ozone-site repo. This is a confusing
>
> > > > process, since most doc updates to ozone-site are supposed to happen
>
> > on
>
> > > the
>
> > > > master branch which is automatically built into the asf-site branch.
>
> > > > Because of this, content updates to our docs are rarely published
>
> > outside
>
> > > > of a release, even if they are committed earlier.
>
> > > > - The most up to date docs are built from the ozone master branch and
>
> > > must
>
> > > > live on a separate site
>
> > > > <
>
> > >
>
> >
> https://ci-hadoop.apache.org/view/Hadoop%20Ozone/job/ozone-doc-master/lastSuccessfulBuild/artifact/hadoop-hdds/docs/public/index.html
>
> > > >
>
> > > > from ozone.apache.org because there is no integration between the
>
> > main
>
> > > > ozone repo and the automatic doc publishing in the ozone-site repo.
>
> > > > - We must manually version our documentation instead of letting our
>
> > site
>
> > > > generator do it for us. This can be error prone. For example, see the
>
> > > > comments on the 1.3.0 doc update PR
>
> > > > <https://github.com/apache/ozone-site/pull/28>.
>
> > > >
>
> > > > For these reasons, I propose moving the docs out of the main Ozone
>
> > repo
>
> > > > and into the ozone-site repo. Work on the improved website and docs
>
> > can
>
> > > > happen on a branch in the ozone-site repo until it is ready to be
>
> > > published.
>
> > > >
>
> > > > The attached document outlines a detailed and incremental plan to
> push
>
> > > > Ozone's website and documentation to its full potential. Please
> review
>
> > > the
>
> > > > plan and let me know your thoughts. I plan for this to be my primary
>
> > > > project for the next few months, with the goal of getting the new
> site
>
> > > to a
>
> > > > publishable state by the end of this year. A few other engineers at
>
> > > > Cloudera have agreed to help part time, but we would greatly
>
> > appreciate
>
> > > > help from the open source community of developers and users as we
>
> > work on
>
> > > > this. Even if you do not have the time or ability to contribute
>
> > content,
>
> > > > reviews from a wide audience will improve the quality of the new site
>
> > and
>
> > > > docs.
>
> > > >
>
> > > > Thanks,
>
> > > > Ethan
>
> > > >
>
> > > > ---------------------------------------------------------------------
>
> > > > To unsubscribe, e-mail: dev-unsubscr...@ozone.apache.org
>
> > > > For additional commands, e-mail: dev-h...@ozone.apache.org
>
> > >
>
> >
>
>
>

Reply via email to