Linkerd2: "community" navbar section

Created on 19 Feb 2019  路  7Comments  路  Source: linkerd/linkerd2

I'd like to add a "Community" navbar item, above the help section, that loads a linkerd.io page (possibly as an iframe, ugh) and displays a notification bubble when this page has changed since the last view by this user.

cc @grampelberg

areweb prioritP0

Most helpful comment

https://versioncheck.linkerd.io/community.json

If we do something like https://linkerd.io/dashboard.json, hugo can generate the whole thing via template. There's some question in my mind about sticking CORS headers in there (we can do it now at least). Push comes to shove we can just get around it by going old-school JSONP.

I think this could probably be done in two parts, so that we can make incremental progress here:

I'd like for this to just be an embedded iframe to start with.

All 7 comments

@wmorgan When you say "loads a linkerd.io" page, do you mean the navbar item would load the "Community" page on linkerd.io (screenshot attached)?

community

Not a bad idea, but my sense is that page might look a little funky if we
just iframe it. I鈥檇 prefer having a dedicated page for this that doesn鈥檛
have all the header/footer stuff and feels like part of the dashboard.

I'm envisioning something a little more news/blog style than the community page.

Sounds good! Some clarifying questions:

  • What is the overall purpose of the Community page? To highlight Linkerd news/opportunities to users who use the CLI/dashboard but might not visit our main webpage?
  • Will this be a dashboard-specific Community page, accessible only through a link on the dashboard (or the direct URL)? Or will this be a new page publicly linked on linkerd.io?
  • @grampelberg, you are envisioning news/blog style - will these updates be separate from the existing blog.linkerd.io content and if so, where would the content come from and who would 'own' the page? Would this be updated manually?
  • What type of updates to the page would flag a notification bubble to the user -- I'm guessing new content updates, but not new CSS styling/layout changes/etc.
  • What is the overall purpose of the Community page? To highlight Linkerd news/opportunities to users who use the CLI/dashboard but might not visit our main webpage?
  • Announce new versions
  • Warn of security issues or bugs
  • Solicit the community for information such as surveys, who's running in production, ...
  • Will this be a dashboard-specific Community page, accessible only through a link on the dashboard (or the direct URL)? Or will this be a new page publicly linked on linkerd.io?

I'd start off making it direct for now. We can decide if it is valuable as a replacement for blog.linkerd.io later.

  • @grampelberg, you are envisioning news/blog style - will these updates be separate from the existing blog.linkerd.io content and if so, where would the content come from and who would 'own' the page? Would this be updated manually?

As the unofficial website owner, I guess I'd own the page. It'd be manual and should fit in with the standard hugo methods of content and updates.

  • What type of updates to the page would flag a notification bubble to the user -- I'm guessing new content updates, but not new CSS styling/layout changes/etc.

How about a JSON feed of everything on the page? Each item can have a last-updated field. That way it'd be easy to count the number of new items and save when a user clicked there last.

Yeah! I think a JSON feed for things on the page would make a lot of sense.

I'm assuming we'll do something similar to how we do version checks; maybe issuing a call to something like https://versioncheck.linkerd.io/community.json, which would return json, and then on the dashboard, just rendering each section as usual.

I think this could probably be done in two parts, so that we can make incremental progress here:

  • wiring up the call to the external site, and rendering the community page in the dashboard
  • making use of the last-updated field, noting when the user clicked last, and showing a notification (red bubble, etc) on the tab

We should probably figure out how we'll monitor when the user clicked last, since we currently don't persist any user state for the dashboard (e.g. using localstorage).

https://versioncheck.linkerd.io/community.json

If we do something like https://linkerd.io/dashboard.json, hugo can generate the whole thing via template. There's some question in my mind about sticking CORS headers in there (we can do it now at least). Push comes to shove we can just get around it by going old-school JSONP.

I think this could probably be done in two parts, so that we can make incremental progress here:

I'd like for this to just be an embedded iframe to start with.

Was this page helpful?
0 / 5 - 0 ratings