Skip to content

Script and GitHub Action to maintain a Wiki frontend#303

Merged
rodham merged 140 commits intosoftwareconstruction240:mainfrom
TheDavSmasher:main
Jul 18, 2025
Merged

Script and GitHub Action to maintain a Wiki frontend#303
rodham merged 140 commits intosoftwareconstruction240:mainfrom
TheDavSmasher:main

Conversation

@TheDavSmasher
Copy link
Copy Markdown
Contributor

The Script provided takes all markdown files and edits them such that they are fitting for being Wiki pages, maintaining all navigation links functional (or as functional as they'd be in the base repository in the first place), keeping all embeds, and referencing back to the actual repository when desired, such as links to code files or folders.
Closes #294

Currently, all pages maintain their title as given by the markdown page's H1 header (except for the README, which becomes the home page). The only exception is the Getting Started pages as all of them are named pretty much the same with no variation and it would lead to name conflicts, so the script currently appends " - Phase #" to the Getting Started pages to keep them unique and functional but the links to and from them still work.

This also provides a static "Sidebar" for navigation within the wiki. This is a markdown page stored within the .github folder as it's only needed for the Wiki. The current Sidebar (as of making this PR) is incomplete and has comments until I know what the professors want it to contain and in what order.

The script updates the wiki whenever there's a push to main, so it'll only change the wiki when the content the students would see changes.

The script is structured in such a way that to update any base cases or how it handles titles is all contained within a second file designed to hold this information so it's not necessary to edit the main script to maintain functionality if it were to change. Currently, there's no need to change it, but the option exists.

To work, the repo will need a single PAT with only repo access (only to this one, so fine-grained would work) stored as a repository secret, since the GitHub action relies on another built action that does the wiki update with the files the script prepares.

@softwareconstruction240/tas @softwareconstruction240/professors

For a proof of it working, see my fork of this repo and its wiki with the same script.

@TheDavSmasher
Copy link
Copy Markdown
Contributor Author

Also, should this be merge to next-fall or main? I'll leave the question here for discussion, but there's still subtasks to do before it's "ready" ready

@TheDavSmasher TheDavSmasher marked this pull request as ready for review July 18, 2025 20:30
@TheDavSmasher TheDavSmasher requested review from a team and rodham July 18, 2025 20:31
Copy link
Copy Markdown
Contributor

@mewilker mewilker left a comment

Choose a reason for hiding this comment

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

This looks good to me!

@ZakkeryDaRebel
Copy link
Copy Markdown
Contributor

I think it looks really good. Schedule technically doesn't open the schedule, but goes to home where the students can click the schedule link. Was this done because the schedule updates every semester?

@ZakkeryDaRebel
Copy link
Copy Markdown
Contributor

As for when to merge it, I can see either immediately or next fall. Since it doesn't fundamentally change any requirements, we can merge it immediately, unless the professors would prefer it to be merged next fall to not have any changes.

Copy link
Copy Markdown
Contributor

@Maillman Maillman left a comment

Choose a reason for hiding this comment

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

This looks pretty good! I appreciate the link to the help queue and the autograder on the sidebar as well.

@rodham
Copy link
Copy Markdown
Contributor

rodham commented Jul 18, 2025

This looks good. Nice job.

@rodham rodham merged commit 9d5a540 into softwareconstruction240:main Jul 18, 2025
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.

Move instruction and other markdown files to Wiki

5 participants