diff options
| author | Xe Iaso <me@xeiaso.net> | 2025-03-20 15:06:58 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-03-20 15:06:58 -0400 |
| commit | c47347ff76f115f56676f5ecad0032bfcb98a03d (patch) | |
| tree | 53b17e30a83dab1f96acf64ba83655340d8e1a5f /docs/src/components/HomepageFeatures | |
| parent | 240159e921449236c79e3ae8c7160dfe8ee1b40c (diff) | |
| download | anubis-c47347ff76f115f56676f5ecad0032bfcb98a03d.tar.xz anubis-c47347ff76f115f56676f5ecad0032bfcb98a03d.zip | |
add docs site based on docusarus (#35)
* add docs site based on docusarus
Closes #2
Signed-off-by: Xe Iaso <me@xeiaso.net>
* docs: deploy to aeacus
Signed-off-by: Xe Iaso <me@xeiaso.net>
* ready for merge
Signed-off-by: Xe Iaso <me@xeiaso.net>
* docs: fix anubis port
Signed-off-by: Xe Iaso <me@xeiaso.net>
---------
Signed-off-by: Xe Iaso <me@xeiaso.net>
Diffstat (limited to 'docs/src/components/HomepageFeatures')
| -rw-r--r-- | docs/src/components/HomepageFeatures/index.tsx | 72 | ||||
| -rw-r--r-- | docs/src/components/HomepageFeatures/styles.module.css | 11 |
2 files changed, 83 insertions, 0 deletions
diff --git a/docs/src/components/HomepageFeatures/index.tsx b/docs/src/components/HomepageFeatures/index.tsx new file mode 100644 index 0000000..645f795 --- /dev/null +++ b/docs/src/components/HomepageFeatures/index.tsx @@ -0,0 +1,72 @@ +import type { ReactNode } from "react"; +import clsx from "clsx"; +import Heading from "@theme/Heading"; +import styles from "./styles.module.css"; + +type FeatureItem = { + title: string; + Svg: React.ComponentType<React.ComponentProps<"svg">>; + description: ReactNode; +}; + +const FeatureList: FeatureItem[] = [ + { + title: "Easy to Use", + Svg: require("@site/static/img/undraw_docusaurus_mountain.svg").default, + description: ( + <> + Anubis is easy to set up, lightweight, and helps get rid of the lowest + hanging fruit so you can sleep at night. + </> + ), + }, + { + title: "", + Svg: require("@site/static/img/undraw_docusaurus_tree.svg").default, + description: ( + <> + Anubis is efficient and as lightweight as possible, blocking the worst + of the bots on the internet and makes it easy to protect what you host + online. + </> + ), + }, + { + title: "Powered by React", + Svg: require("@site/static/img/undraw_docusaurus_react.svg").default, + description: ( + <> + Anubis uses a multi-threaded proof of work check to ensure that users + browsers are up to date and support modern standards. + </> + ), + }, +]; + +function Feature({ title, Svg, description }: FeatureItem) { + return ( + <div className={clsx("col col--4")}> + <div className="text--center"> + <Svg className={styles.featureSvg} role="img" /> + </div> + <div className="text--center padding-horiz--md"> + <Heading as="h3">{title}</Heading> + <p>{description}</p> + </div> + </div> + ); +} + +export default function HomepageFeatures(): ReactNode { + return ( + <section className={styles.features}> + <div className="container"> + <div className="row"> + {FeatureList.map((props, idx) => ( + <Feature key={idx} {...props} /> + ))} + </div> + </div> + </section> + ); +} diff --git a/docs/src/components/HomepageFeatures/styles.module.css b/docs/src/components/HomepageFeatures/styles.module.css new file mode 100644 index 0000000..b248eb2 --- /dev/null +++ b/docs/src/components/HomepageFeatures/styles.module.css @@ -0,0 +1,11 @@ +.features { + display: flex; + align-items: center; + padding: 2rem 0; + width: 100%; +} + +.featureSvg { + height: 200px; + width: 200px; +} |
