Homepage and Announcement

This commit is contained in:
luke-hagar-sp
2023-04-06 15:50:30 -05:00
parent a59013769c
commit 804b7b76ff
2 changed files with 71 additions and 18 deletions

View File

@@ -1 +1,24 @@
[API](https://github.com/LukeHagar/plex-api-spec) Howdy everyone!
My Name is Luke,
I've been a big fan of Plex and the Plex Ecosystem for some time now. I started my journey with a simple MacBook with an external hardrive, and I've slowly migrated to a dedicated unraid server with ~90TB of space.
I've been learning a lot in my professional career, and decided to try applying some of it to aid the Plex Developer Community in its pursuits.
So this website is my first attempt at fully open source API documentation for Plex.tv and Plex Media Server.
This [website](https://github.com/LukeHagar/plex-docs) is dynamically generated from an [open source OpenAPI Specification](https://github.com/LukeHagar/plex-api-spec), and is rebuilt and redeployed everytime that specification is updated.
I have some [legacy format documentation](/docs/legacy) that was very kindly given to me by Plex. This documentation is what I am currently working on converting to the OpenAPI specification format.
There is still many endpoints, parameters, examples, and schemas missing from the OpenAPI Spec and I invite anyone in the community to contribute anything they can or want towards the documentation or the site.
I hope you find this site useful, and I wish everyone a easier and more pleasing time developing with Plex.
Cheers :)
Luke Hagar
[Website](https://lukehagar.com/)
[LinkedIn](https://www.linkedin.com/in/lukehagar/)
[GitHub](https://github.com/LukeHagar)

View File

@@ -1,35 +1,65 @@
import React from 'react'; import React from "react";
import clsx from 'clsx'; import clsx from "clsx";
import styles from './styles.module.css'; import styles from "./styles.module.css";
const FeatureList = [ const FeatureList = [
{ {
title: 'Easy to Use', title: "Updated with the Spec",
Svg: require('@site/static/img/undraw_docusaurus_mountain.svg').default, Svg: require("@site/static/img/undraw_docusaurus_mountain.svg").default,
description: ( description: (
<> <>
Docusaurus was designed from the ground up to be easily installed and API Documentation dynamically generated from an{" "}
used to get your website up and running quickly. <a
href="https://github.com/LukeHagar/plex-api-spec"
target="_blank"
rel="noreferrer"
>
OpenAPI Specification
</a>
.
</> </>
), ),
}, },
{ {
title: 'Focus on What Matters', title: "Open Source",
Svg: require('@site/static/img/undraw_docusaurus_tree.svg').default, Svg: require("@site/static/img/undraw_docusaurus_tree.svg").default,
description: ( description: (
<> <>
Docusaurus lets you focus on your docs, and we&apos;ll do the chores. Go The OpenAPI Specification is fully open source, and everyone is welcome{" "}
ahead and move your docs into the <code>docs</code> directory. <a
href="https://github.com/LukeHagar/plex-api-spec/issues"
target="_blank"
rel="noreferrer"
>
report issues
</a>{" "}
or{" "}
<a
href="https://github.com/LukeHagar/plex-api-spec/pulls"
target="_blank"
rel="noreferrer"
>
submit pull requests
</a>
.
</> </>
), ),
}, },
{ {
title: 'Powered by React', title: "Potential for SDKs",
Svg: require('@site/static/img/undraw_docusaurus_react.svg').default, Svg: require("@site/static/img/undraw_docusaurus_react.svg").default,
description: ( description: (
<> <>
Extend or customize your website layout by reusing React. Docusaurus can The Open API Specification can be used to generate SDKs in a number of
be extended while reusing the same header and footer. different languages (JS/TS, GO, Python, Powershell) using existing{" "}
<a
href="https://openapi-generator.tech"
target="_blank"
rel="noreferrer"
>
time tested tools
</a>
.
</> </>
), ),
}, },
@@ -37,7 +67,7 @@ const FeatureList = [
function Feature({ Svg, title, description }) { function Feature({ Svg, title, description }) {
return ( return (
<div className={clsx('col col--4')}> <div className={clsx("col col--4")}>
<div className="text--center"> <div className="text--center">
<Svg className={styles.featureSvg} role="img" /> <Svg className={styles.featureSvg} role="img" />
</div> </div>