mirror of
https://github.com/ChrisTitusTech/winutil.git
synced 2026-10-21 04:21:04 +00:00
* Scaffold Astro + Starlight docs site
Bootstraps a new docs-astro project to replace the Hugo-based docs,
using Astro's Starlight framework with the content collection schema
and sidebar navigation configured for WinUtil's docs structure.
* Add WinUtil-branded Starlight theme
Restyles Starlight's default look with a dark-by-default grayscale
palette and WinUtil's brand blue (#0567ff, from the app logo) as the
single accent, Geist for UI text, and JetBrains Mono for code. Also
overrides the default theme provider so first-time visitors land on
dark mode instead of following OS preference.
* Add custom Hero and CornerCard components
Hero overrides Starlight's default hero with a full-bleed grid/glow
background, a browser-chrome-framed screenshot, and a badge row driven
by frontmatter data. CornerCard is a bordered feature card with corner
brackets, used for the landing page's feature grid.
* Migrate docs content from Hugo to Astro/Starlight
Ports the landing page, user guide sections, FAQ, known issues,
contributing guide, and a sample generated tweak reference page from
the Hugo site, converting Hugo shortcodes and GFM alert syntax to
their Starlight/MDX equivalents.
* Use Windows-style caption buttons in hero window chrome
Swap the macOS traffic-light dots for a minimize/maximize/close
button group, since WinUtil is a Windows tool.
* Use Windows-style caption glyph for terminal code blocks
Replace Expressive Code's default macOS dots on terminal-framed code
blocks with a right-aligned Windows minimize/maximize/close icon,
matching the hero window chrome.
* Archive the Hugo docs site as docs-old
* Promote Astro/Starlight docs from docs-astro to docs
* Show the launch command as a copyable code block on the docs homepage
* Add docs codeowner for seanh1995
* Register custom Header component for Starlight docs site
* Add custom navbar links to Astro docs, matching the old Hugo site's top nav
* Point dev docs generator at the Astro/Starlight docs site
Output moves from docs/content/dev (Hugo) to
docs/src/content/docs/code-reference (Astro/Starlight): .mdx instead
of .md, Starlight-style title="..." code fence labels instead of
Hugo's filename/linenos shortcode, and a ":::note" aside linking back
to each entry's source file. Frontmatter description is now pulled
from the JSON Description field. Also fixes a pre-existing bug where
the embedded JSON snippets were always missing their own closing
brace.
* Add seanh1995 as codeowner for the dev docs generator
* Wire up Code Reference section in docs sidebar
Adds an Architecture & Design page plus autogenerated Tweaks/Features
Reference groups pointing at docs/src/content/docs/code-reference, and
fixes the editLink base URL to the promoted docs/ path.
* Port architecture doc to code-reference and drop stale hyperv sample
Moves the Hugo-era architecture doc into
docs/src/content/docs/code-reference/architecture.mdx: drops the
Hugo-only weight/toc frontmatter, converts the embedded code fences to
Starlight's title="..." syntax, and repoints the "Related
Documentation" links at this site's actual slugs. Also removes the
hand-written reference/tweaks/hyperv.mdx placeholder now that the
generator produces the real page under code-reference/features.
* Keep pre-conversion backup of devdocs-generator.ps1
Snapshot of the script before it was pointed at the Astro/Starlight
docs site, for reference.
* updated workflow
* Update CODEOWNERS
* Hide edit-page link on the docs landing page
The splash-template landing page isn't a source doc meant to be edited
via GitHub like the rest of the guides, so skip showing the link.
* Add site footer with copyright line, matching the old Hugo docs
The Hugo site rendered "© {year} Chris Titus Tech. All rights
reserved." in its footer; Starlight's default footer had no
equivalent. Override it to append the same copyright line below the
existing edit-link/pagination row, and collapse that row entirely
when it has nothing in it (e.g. pages with editUrl disabled and no
prev/next) instead of leaving an empty gap.
* Fix vertical alignment and size of the arrow icon in hero/CTA buttons
The right-arrow icon read as floating above the button label's
baseline. Root cause was partly a genuine optical mismatch (fixed with
a small position nudge scoped to just the arrow icon, so it doesn't
also shift the unaffected GitHub icon) and partly the final CTA's copy
getting wrapped in a <p> by MDX's markdown parser, which behaved
slightly differently under the flex layout than the Hero component's
plain text node. Switching the CTA button's label to a JS string
expression avoids the wrapper and keeps both buttons' markup, and
rendering, identical.
* Use the dark fork-button screenshot in the contributing guide
Drop the unused light-mode variant and point the guide at
Fork-Button-Dark.png instead.
* Remove old Hugo docs site and pre-conversion backup files
The docs have moved to the Astro/Starlight site; the Hugo site
(docs-old/), its workflow backup, and the devdocs-generator.ps1
pre-conversion snapshot are no longer needed.
* keeping ai happy
* Bump sharp to 0.35.3 in docs site
88 lines
2.1 KiB
Plaintext
88 lines
2.1 KiB
Plaintext
---
|
|
import EditLink from 'virtual:starlight/components/EditLink';
|
|
import LastUpdated from 'virtual:starlight/components/LastUpdated';
|
|
import Pagination from 'virtual:starlight/components/Pagination';
|
|
import config from 'virtual:starlight/user-config';
|
|
import { Icon } from '@astrojs/starlight/components';
|
|
|
|
const year = new Date().getFullYear();
|
|
---
|
|
|
|
<footer class="sl-flex">
|
|
<div class="meta sl-flex">
|
|
<EditLink />
|
|
<LastUpdated />
|
|
</div>
|
|
<Pagination />
|
|
|
|
{
|
|
config.credits && (
|
|
<a class="kudos sl-flex" href="https://starlight.astro.build">
|
|
<Icon name={'starlight'} /> {Astro.locals.t('builtWithStarlight.label')}
|
|
</a>
|
|
)
|
|
}
|
|
|
|
<div class="site-footer-copyright">© {year} <a href="https://christitus.com">Chris Titus Tech</a>. All rights reserved.</div>
|
|
</footer>
|
|
|
|
<style>
|
|
@layer starlight.core {
|
|
footer {
|
|
flex-direction: column;
|
|
gap: 1.5rem;
|
|
}
|
|
.meta {
|
|
gap: 0.75rem 3rem;
|
|
justify-content: space-between;
|
|
flex-wrap: wrap;
|
|
margin-top: 3rem;
|
|
font-size: var(--sl-text-sm);
|
|
color: var(--sl-color-gray-3);
|
|
}
|
|
.meta > :global(p:only-child) {
|
|
margin-inline-start: auto;
|
|
}
|
|
|
|
.kudos {
|
|
align-items: center;
|
|
gap: 0.5em;
|
|
margin: 1.5rem auto;
|
|
font-size: var(--sl-text-xs);
|
|
text-decoration: none;
|
|
color: var(--sl-color-gray-3);
|
|
}
|
|
.kudos:hover {
|
|
color: var(--sl-color-white);
|
|
}
|
|
}
|
|
|
|
@layer starlight.components {
|
|
.kudos :global(svg) {
|
|
color: var(--sl-color-orange);
|
|
}
|
|
}
|
|
|
|
/* Collapse the meta/pagination rows entirely when they have nothing in them
|
|
(e.g. editUrl: false and no prev/next), instead of leaving an empty gap. */
|
|
footer .meta:empty,
|
|
footer :global(.pagination-links):empty {
|
|
display: none;
|
|
margin: 0;
|
|
}
|
|
|
|
/* Site-wide copyright line, matching the previous Hugo docs site's footer.
|
|
The divider above it comes from Starlight's own .content-panel border. */
|
|
.site-footer-copyright {
|
|
font-size: var(--sl-text-xs);
|
|
color: var(--sl-color-gray-3);
|
|
}
|
|
.site-footer-copyright a {
|
|
color: inherit;
|
|
text-decoration: underline;
|
|
}
|
|
.site-footer-copyright a:hover {
|
|
color: var(--sl-color-white);
|
|
}
|
|
</style>
|