add about page
This commit is contained in:
parent
9c669b4afa
commit
068e206226
5 changed files with 86 additions and 19 deletions
|
@ -1,8 +1,8 @@
|
|||
---
|
||||
export interface Props {
|
||||
currentRoute: string;
|
||||
currentModule: string;
|
||||
currentClass: string;
|
||||
currentRoute?: string;
|
||||
currentModule?: string;
|
||||
currentClass?: string;
|
||||
}
|
||||
|
||||
const { currentRoute, currentModule, currentClass } = Astro.props;
|
||||
|
@ -36,14 +36,14 @@ function genGuideNav(base: string): TreeEntry[] | undefined {
|
|||
const guide = {
|
||||
title: "Usage Guide",
|
||||
link: "/docs/guide",
|
||||
current: currentRoute.startsWith("guide"),
|
||||
current: currentRoute?.startsWith("guide") ?? false,
|
||||
entries: genGuideNav(""),
|
||||
}
|
||||
|
||||
const types = {
|
||||
title: "Quickshell Types",
|
||||
link: "/docs/types",
|
||||
current: currentRoute.startsWith("types"),
|
||||
current: currentRoute?.startsWith("types") ?? false,
|
||||
entries: Object.entries(groupedRoutes.types).map(
|
||||
([module, items]) => ({
|
||||
title: module,
|
||||
|
@ -59,6 +59,11 @@ const types = {
|
|||
};
|
||||
---
|
||||
<nav class="navtree">
|
||||
<Link
|
||||
title="About Quickshell"
|
||||
link="/docs/about"
|
||||
current={currentRoute === "about"}
|
||||
/>
|
||||
<Tree {...guide}/>
|
||||
<Tree {...types}/>
|
||||
<Link
|
||||
|
|
25
src/layouts/GuideLayout.astro
Normal file
25
src/layouts/GuideLayout.astro
Normal file
|
@ -0,0 +1,25 @@
|
|||
---
|
||||
import DocsLayout from "@layouts/DocsLayout.astro";
|
||||
import TOC from "@components/navigation/sidebars/TOC.astro";
|
||||
import TOCIntersectionObserver from "@src/components/hooks/TOCIntersectionObserver.astro";
|
||||
import type { ConfigHeading } from "@src/components/navigation/sidebars/types";
|
||||
|
||||
export interface Props {
|
||||
headings: ConfigHeading[];
|
||||
title: string;
|
||||
description: string;
|
||||
}
|
||||
|
||||
const { title, description, headings } = Astro.props;
|
||||
---
|
||||
<DocsLayout title={title} description={description} headings={headings}>
|
||||
<div class="docs">
|
||||
<div class="docs-content">
|
||||
<hr>
|
||||
<slot/>
|
||||
</div>
|
||||
<TOC mobile={false} headings={headings} data-pagefind-ignore/>
|
||||
</div>
|
||||
</DocsLayout>
|
||||
|
||||
<TOCIntersectionObserver/>
|
17
src/layouts/GuideMdLayout.astro
Normal file
17
src/layouts/GuideMdLayout.astro
Normal file
|
@ -0,0 +1,17 @@
|
|||
---
|
||||
import GuideLayout from "@layouts/GuideLayout.astro";
|
||||
import type { ConfigHeading } from "@src/components/navigation/sidebars/types";
|
||||
|
||||
export interface Props {
|
||||
headings: ConfigHeading[];
|
||||
frontmatter: {
|
||||
title: string;
|
||||
description?: string;
|
||||
}
|
||||
}
|
||||
|
||||
const { headings, frontmatter: { title, description } } = Astro.props;
|
||||
---
|
||||
<GuideLayout title={title} description={description ?? ""} headings={headings}>
|
||||
<slot/>
|
||||
</GuideLayout>
|
30
src/pages/docs/about.mdx
Normal file
30
src/pages/docs/about.mdx
Normal file
|
@ -0,0 +1,30 @@
|
|||
---
|
||||
layout: "@layouts/GuideMdLayout.astro"
|
||||
title: "About Quickshell"
|
||||
---
|
||||
# {frontmatter.title}
|
||||
Quickshell is a toolkit for building a desktop shell, which is to say components
|
||||
of your desktop like bars, widgets, lock screens, display managers, and the like.
|
||||
|
||||
Quickshell is based on QtQuick and configured with QML, the QtQuick interface
|
||||
description language. It provides integrations for common shell functionality,
|
||||
as well as support for hot reloading and tools to work with processes,
|
||||
sockets, files, and more.
|
||||
|
||||
Built-in integrations are currently provided for:
|
||||
- Wayland and X11 for windowing
|
||||
- Wayland for window management and screen recording
|
||||
- Workspace management in Hyprland, I3, and Sway
|
||||
- Pipewire for audio controls
|
||||
- Pam for authentication and building lockscreens
|
||||
- Greetd for building a display manager
|
||||
- UPower for monitoring battery statistics
|
||||
- Power Profiles Daemon
|
||||
- MPRIS compatible media players
|
||||
- StatusNotifierItem compatible system tray clients
|
||||
|
||||
Quickshell is actively developed and will still receive breaking changes.
|
||||
A tagged release is planned soon, however there will be breakage before
|
||||
that point.
|
||||
|
||||
See the [Usage Guide](/docs/guide) to learn how to set up and use Quickshell
|
|
@ -1,7 +1,5 @@
|
|||
---
|
||||
import DocsLayout from "@layouts/DocsLayout.astro";
|
||||
import TOC from "@components/navigation/sidebars/TOC.astro";
|
||||
import TOCIntersectionObserver from "@src/components/hooks/TOCIntersectionObserver.astro";
|
||||
import GuideLayout from "@layouts/GuideLayout.astro";
|
||||
|
||||
import { getCollection, render } from "astro:content";
|
||||
|
||||
|
@ -17,14 +15,6 @@ export async function getStaticPaths() {
|
|||
const { page } = Astro.props;
|
||||
const { Content, headings } = await render(page);
|
||||
---
|
||||
<DocsLayout title={page.data.title} description="" headings={headings}>
|
||||
<div class="docs">
|
||||
<div class="docs-content">
|
||||
<hr>
|
||||
<Content/>
|
||||
</div>
|
||||
<TOC mobile={false} headings={headings} data-pagefind-ignore/>
|
||||
</div>
|
||||
</DocsLayout>
|
||||
|
||||
<TOCIntersectionObserver/>
|
||||
<GuideLayout title={page.data.title} description="" headings={headings}>
|
||||
<Content/>
|
||||
</GuideLayout>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue