Skip to content

x/pkgsite: redesign - the documentation section #41587

Closed

Description

@julieqiu

We'll be redesigning pkg.go.dev based on feedback received over the last year. This is the second in a series of issues about plans for the pkgsite/design-2020 milestone. Comment below with any feedback or suggestions related to this issue!

Overview

The documentation section of the pkg.go.dev/<path> page will have the following changes:

  • Documentation index section will be added back
  • Top level heading for each section will always be present
  • New features for copying and viewing source code

Design

Here's a preview of what the documentation section will look like:

Issue2-maybesmaller

Note: The images shown in this issue are mocks, so the data may not accurately represent the exact contents of a given package.

Documentation Index

Based on feedback that we've received, we understand that users find viewing the full package API useful, so the documentation index will be added back.

image

At the same time, we’ve heard that having a sidenav is useful for navigating the documentation, especially when the documentation is very long. We plan to keep this feature as well. In the new design, the function and type sections will be closed by default, since having everything expanded can be overwhelming. When a user clicks on a function or type from the index, that section will auto-expand.

image

Empty Sections

We want to create a consistent structure across different packages in the documentation section. Therefore, when a section in the documentation is empty, we will still display the section header (for example, "Variables"), along with a message indicating it is empty ("There are no variables in this pacakge."):

image

We believe that doing so allows users to become familiar with the structure of this section over time. More importantly, UX research has shown that consistent documentation is important for accessibility. For screen reader users, having a consistent documentation structure allows them to predict the page structure. This means, for instance, if they know “Variables” is the fourth header, and they’re looking for variables, they can bounce to the fourth header without listening to each of the first three.

New Features

image

Copy
Next to each code block, we will be adding a copy button, so that users can easily copy and paste the code in that block.

View Source Code
We also want to make jumping to the source identifier a more discoverable feature. To do so, if a block of code corresponds to a function, type or method, we will also include a source code widget. Clicking on that link will take users to the source code.

Related Issues

Activity

  1. added this to the Unreleased milestone on Sep 23, 2020
  2. changed the title [-]x/pkgsite: <this issue is a placeholder for a future issue> [/-] [+]x/pkgsite: redesign - the documentation section[/+] on Sep 23, 2020
  3. added
    NeedsFixThe path to resolution is known, but the work has not been done.
    on Sep 23, 2020
  4. tooolbox commented on Sep 24, 2020

    @tooolbox

    Thanks for posting, @julieqiu, my 2 cents:

    Based on feedback that we've received, we understand that users find viewing the full package API useful, so the documentation index will be added back.

    Great!! 🎉

    At the same time, we’ve heard that having a sidenav is useful for navigating the documentation, especially when the documentation is very long. We plan to keep this feature as well. In the new design, the function and type sections will be closed by default, since having everything expanded can be overwhelming. When a user clicks on a function or type from the index, that section will auto-expand.

    This sounds good and the mock GIF looks good as well. Initial reaction is that it's cool that the README is in the sidebar as well, and I feel like the header (with package version, refresh date, license, etc.) seems improved.

    We want to create a consistent structure across different packages in the documentation section. Therefore, when a section in the documentation is empty, we will still display the section header (for example, "Variables"), along with a message indicating it is empty ("There are no variables in this pacakge.")

    I think this is a great idea.

    Next to each code block, we will be adding a copy button, so that users can easily copy and paste the code in that block.

    Sounds neat; not major, but neat.

    We also want to make jumping to the source identifier a more discoverable feature. To do so, if a block of code corresponds to a function, type or method, we will also include a source code widget. Clicking on that link will take users to the source code.

    Sounds good; it would be cool to have an example as well. Linking into appropriate source locations is a very useful aspect of the docs, so expanding this is capability sounds like a move in the right direction, although it could perhaps be overdone with links in every nook and cranny.

    Thanks again!

  5. julieqiu commented on Sep 24, 2020

    @julieqiu
    MemberAuthor

    Thanks @tooolbox! That's great to hear :)

    Sounds good; it would be cool to have an example as well. Linking into appropriate source locations is a very useful aspect of the docs, so expanding this is capability sounds like a move in the right direction, although it could perhaps be overdone with links in every nook and cranny.

    Clicking on <> in screenshot under New Features would take you to the source code. On hover, both <> and copy icon will display a tooltip that provides context on what that icon does.

  6. Delta456 commented on Oct 3, 2020

    @Delta456

    The redesign looks amazing! Can we also show how many downloads or go gets were there for the module as NPM, PIP etc also show it? I most of the time have to see git clones.

    PS: I didn't want to open a separate issue for this.

  7. julieqiu commented on Oct 6, 2020

    @julieqiu
    MemberAuthor

    @Delta456, glad to hear! If you don't mind, could you please raise a separate issue for this? While the feature you suggest sounds interesting, it doesn't fit under the umbrella of this design issue.

  8. julieqiu commented on Oct 28, 2020

    @julieqiu
    MemberAuthor

    A preview of the redesign is now available on beta.pkg.go.dev! Give it a try, and please file an issue for any bugs.

    See #41585 (comment) also for instructions on how to run the beta site locally.

  9. julieqiu commented on Nov 10, 2020

    @julieqiu
    MemberAuthor

    This is now live on pkg.go.dev! See #41585 (comment) for details.

  10. locked and limited conversation to collaborators on Nov 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrozenDueToAgeNeedsFixThe path to resolution is known, but the work has not been done.pkgsite

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions