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

Minimal required features for the Project Pythia landing page #1

Open
7 of 9 tasks
brian-rose opened this issue Jun 25, 2024 · 15 comments
Open
7 of 9 tasks

Minimal required features for the Project Pythia landing page #1

brian-rose opened this issue Jun 25, 2024 · 15 comments
Assignees

Comments

@brian-rose
Copy link

brian-rose commented Jun 25, 2024

Since this repo houses the experimental source for a potential new landing page / web site for Project Pythia, let's track here the missing features from our existing Sphinx-based home page that are considered essential before migrating to MyST-MD.

We are comparing this new landing page to the existing landing page.

I'll take a first stab at a minimal feature list:

What else? What did I miss?

There is some overlap here with the checklist over at jupyter-book/mystmd#1320 (comment), but I'm trying to keep this list specific to the main "portal" site and landing page.

@clyne
Copy link

clyne commented Jun 27, 2024

Looks pretty complete to me, @brian-rose

@agoose77
Copy link

@brian-rose what constitutes "branded banner image" to you?

Does this come close?

Image

@agoose77
Copy link

@jukent I see that you authored ProjectPythia#412, which added metrics to the landing page! Before seeing the existing implementation, my first thought was to implement the metrics page as an executable file and build the figures inline. Is there a particular reason that you chose to do this via a dedicated job in CI?

@jukent
Copy link

jukent commented Mar 25, 2025

@agoose77 can you clarify how you would have done it? I did it in CI because that's how I knew to make sure the metrics were updated and populated before the book build and publish actions. I'm definitely open to a different method in the MyST version and would love to learn more.

@agoose77
Copy link

agoose77 commented Mar 25, 2025

@jukent yes of course! I should have clarified that part of my original message, apologies!

If the goal is to generate content dynamically, you can use the Jupyter integration with Jupyter Book 1 (and JB2 / MyST-MD) to run e.g. Python code in a notebook at build time.

In MyST Markdown, you can add details about the kernel that should run the document, and then use code cells to build outputs like figures. I can make a PR that implements this approach, and perhaps pull you in to review it?

@jukent
Copy link

jukent commented Mar 25, 2025

That sounds interesting I'd love to see it and iterate on it with you. That would remove the need for artifact passing.

Are you able to pass GitHub secrets (needed to access the GA4 API) into the code? I'm sure that was the piece that sent me down the GitHub actions direction.

@agoose77
Copy link

Are you able to pass GitHub secrets [...] into the code

My thought would be to do this through the environment. There is a risk there if someone commits a notebook that dumps the environment variables to stdout, but you already maintain control over the repository contents, so that should be fine?

@brian-rose
Copy link
Author

@brian-rose what constitutes "branded banner image" to you?

Does this come close?

Image

Yes!

I think I was just broadly referring to the need to have a "landing page" look with some imagery. I think we can check off this box.

@jukent
Copy link

jukent commented Mar 25, 2025

@agoose77 This reminded me that we were talking about adding an automatic metrics page to each Cookbook, so that Cookbook authors could see the reach of their work. If you'd like to look at one with me (say for the cookbook-template in MyST) that could be a smaller push than the portal metrics.

@agoose77
Copy link

Julia and I looked at the /metrics page, and updated it to use the execution feature of MyST-MD!

See https://projectpythia-mystmd.github.io/metrics

@brian-rose could you help me to refine the meaning of

blog posts are easily findable

?

Is simply having them in the navigation sufficient for now?

Image

@jukent
Copy link

jukent commented Mar 31, 2025

@brian-rose could you help me to refine the meaning of

blog posts are easily findable

I think having them in the navbar works, but ideally we'd like to improve upon the current portal. One idea we had was adding a mini-gallery of blog posts (sort of like in the GeoCAT website).

@brian-rose
Copy link
Author

Yes I think our current landing page only barely meets this criterion with the "Blog" link in the top-most nav bar.

I would love to a see a prominent "What's new" or "Recent news" section on the landing page that dynamically displays a few most recent blog posts. We've been compensating for the lack of this feature by manually adding banners for time-sensitive info (e.g. "Cookoff 2025"). A proper blog feed would obviate the need for these manual banners and buttons most of the time.

@brian-rose
Copy link
Author

Julia and I looked at the /metrics page, and updated it to use the execution feature of MyST-MD!

See https://projectpythia-mystmd.github.io/metrics

This is very cool! I love how the metrics code is now in notebook form and tied to the book build. I think this is likely to significantly reduce the maintenance burden going forward.

@agoose77
Copy link

agoose77 commented Apr 1, 2025

I'm hoping to start working on the concept of a gallery that embeds card-like previews of resources (like MyST sites, or opengraph-enabled links). It sounds like that would fit the requirements of the resource and cookbook galleries, as well as a latest-blog-posts feature.

I need to touch base with the MyST team to discuss some of this, but I'll return here to update and iterate for the next sprint (later this week).

@jukent
Copy link

jukent commented Apr 1, 2025

Thanks @agoose77, I am currently editing the MyST Cookbook gallery (locally) to attempt to ad filtering. I've added HTML/CSS classes to the cards, but am working on creating a dropdown menu that is populated with all of the tags (first stab in #9). Will touch base with you when you work on the gallery.

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

No branches or pull requests

5 participants