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

New 'Repos' page and consolidation of 'Apps' page #3510

Merged
merged 5 commits into from
May 11, 2022

Conversation

ChrisBAshton
Copy link
Contributor

@ChrisBAshton ChrisBAshton commented May 3, 2022

Alongside the refactoring in #3509, there are some related visual improvements. Here is a summary of the changes:

Addition of a 'Repos' page

#3481 saw the addition of a 'repos.json' alongside the longstanding 'apps.json' functionality. So it seems only natural that we should also want a summary page of Repos alongside our summary page of Apps.

repos page screenshot

Addition of 'Repos' link in header

See above.

Changes to 'Apps' page

The addition of the 'Repos' page led to some duplication etc, which got consolidated and visually reviewed, and eventually led to the following improvements to the Apps page. It removed the need for a separate 'by team' page.

Before:

before

After:

after

Removal of the 'apps by team' page

The existing page is no longer required once these changes are merged.

Trello: https://trello.com/c/oUsgzZnk/247-standardise-how-we-represent-repositories-in-the-dev-docs

Base automatically changed from remove-references-to-apps to main May 4, 2022 11:24
@ChrisBAshton ChrisBAshton force-pushed the new-apps-repos-pages branch 2 times, most recently from 6550429 to 6af8246 Compare May 4, 2022 11:36
Copy link
Contributor

@benthorner benthorner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works locally for me ✅.

Great to see the emerging focus on repos vs. apps 🚀.

Do we really need the "apps" page anymore? All the info that's on it can be seen on the new "repos" page. Seeing both of them, I half expected the links on the "apps" page to go to the live app, but what we really mean by "app" is "app repository", not the running version of it. I don't feel strongly about this, though. What are your thoughts?

Looking at the code itself, do you think it's worth adding some tests for the new / updated pages? There's some precedent for it but I also get that this isn't that much of a change from what was there before. Otherwise, all my comments are just some ideas for how to polish the new layout / content a bit.

source/apps.html.md.erb Outdated Show resolved Hide resolved
source/apps.html.md.erb Outdated Show resolved Hide resolved
source/apps.html.md.erb Outdated Show resolved Hide resolved
source/apps.html.md.erb Outdated Show resolved Hide resolved
source/repos.html.md.erb Outdated Show resolved Hide resolved
source/apps.html.md.erb Outdated Show resolved Hide resolved
@ChrisBAshton ChrisBAshton force-pushed the new-apps-repos-pages branch 2 times, most recently from 47a8216 to 2455953 Compare May 10, 2022 10:59
ChrisBAshton and others added 4 commits May 10, 2022 12:00
This creates a new 'repos.html' page, which is intended to be a
catch-all page similar to the 'apps.html' page, listing all known
GOV.UK repositories:

![repos page screenshot](https://user-images.githubusercontent.com/5111927/166255289-07212299-65d5-43f4-8178-0455c14699ff.png)

The previous implementation of the apps.html page was not a great
design; it added many links to the sidebar, which had to be
scrolled to see all the available apps. Better to put this
information on the main page itself, and default to the `layout`
layout, which automatically parses page headings:
https://tdt-documentation.london.cloudapps.digital/configure_project/frontmatter/#layout

Before:

![before](https://user-images.githubusercontent.com/5111927/166255046-8042ab9d-4065-4f02-9479-6d16b86dcd99.png)

After:

![after](https://user-images.githubusercontent.com/5111927/167613943-dbdd3d89-9e86-44ed-8528-422cd4a394f1.png)

Now, all 'grouped' information is available in one place (teams,
types, hosting), and the sidebar is used for an arguably better
purpose: anchor links to the relevant parts of the page.
This also removes the need for a redundant 'by-teams.html' page,
as the info is already captured on the apps.html page.

The result is a simpler codebase and more easily findable
information.
Co-authored-by: Ben Thorner <benthorner@users.noreply.github.com>
Co-authored-by: Ben Thorner <benthorner@users.noreply.github.com>
@ChrisBAshton ChrisBAshton force-pushed the new-apps-repos-pages branch from 2455953 to 6aa48fe Compare May 10, 2022 11:01
@ChrisBAshton
Copy link
Contributor Author

ChrisBAshton commented May 10, 2022

Thanks for the review, @benthorner! I've addressed all the individual comments if you'd like to re-review 👀

Do we really need the "apps" page anymore? All the info that's on it can be seen on the new "repos" page.

Part of the reason to properly support the concept of 'repos' rather than just 'apps' was the confusion some teams were facing when looking at what used to be applications.yaml, and seeing non-apps in there. We wanted to include non-apps so that we could surface all relevant documentation via search, but it led to confusion with stakeholders, particularly around things like Rails upgrades. Think "we've only updated 7 apps, but I see we're responsible for 10, why haven't we done the other 3 yet?", when the other 3 are gems etc.

So for that reason, I think it's still worth having a distinct grouping of 'apps' vs 'repos'.

Seeing both of them, I half expected the links on the "apps" page to go to the live app, but what we really mean by "app" is "app repository", not the running version of it.

Yes, that's a good point. I think once this is merged we could look at making the app and app-overview pages a bit more tailored to apps. Don't think it's a blocker for this PR though.

Looking at the code itself, do you think it's worth adding some tests for the new / updated pages? There's some precedent for it but I also get that this isn't that much of a change from what was there before.

The existing tests are really just linting: redirect_spec.rb checks that redirects aren't missing their .html suffix, and manual_page_spec.rb checks that every page's frontmatter has an owner, a title, etc. I don't think we really have a precedent for testing the contents of pages.
More tests in general would probably be a good thing, but I agree that the changes in this PR aren't very different to what was there before and so doesn't introduce any new risks.

@ChrisBAshton ChrisBAshton requested a review from benthorner May 10, 2022 11:14
Copy link
Contributor

@benthorner benthorner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ready to 🚢.

I like the argument of keeping the page with a view to tailoring it in future. And in the meantime the mysterious "stakeholders" can still benefit from it 😜.

It improves the introduction and makes the section that follows
cleaner and more consistent with the other 'grouped by' sections.
See
#3510 (comment)
@ChrisBAshton ChrisBAshton merged commit e20e7c3 into main May 11, 2022
@ChrisBAshton ChrisBAshton deleted the new-apps-repos-pages branch May 11, 2022 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants