Add CS2-SimpleAdmin documentation site

Introduces a new documentation site for CS2-SimpleAdmin using Docusaurus, including developer API references, tutorials, user guides, and module documentation. Removes the CleanModule example and updates FunCommands and ExampleModule. Also updates main plugin and API files to support new documentation and module structure.
This commit is contained in:
Dawid Bepierszcz 2025-10-20 01:27:01 +02:00
parent 21a5de6b3d
commit b0d8696756
74 changed files with 32732 additions and 279 deletions

View file

@ -0,0 +1,52 @@
import clsx from 'clsx';
import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import Layout from '@theme/Layout';
import HomepageFeatures from '@site/src/components/HomepageFeatures';
import Heading from '@theme/Heading';
import styles from './index.module.css';
function HomepageHeader() {
const {siteConfig} = useDocusaurusContext();
return (
<header className={clsx('hero hero--primary', styles.heroBanner)}>
<iframe
className={styles.videoBackground}
src="https://www.youtube.com/embed/4qEdIXLdxMo?autoplay=1&mute=1&loop=1&playlist=4qEdIXLdxMo&controls=0&showinfo=0&rel=0&modestbranding=1&playsinline=1"
title="Background Video"
frameBorder="0"
allow="autoplay; encrypted-media"
allowFullScreen
/>
<div className={styles.videoOverlay}></div>
<div className="container">
<Heading as="h1" className="hero__title">
{siteConfig.title}
</Heading>
<p className="hero__subtitle">{siteConfig.tagline}</p>
<div className={styles.buttons}>
<Link
className="button button--secondary button--lg"
to="/docs/user/intro">
Get Started
</Link>
</div>
</div>
</header>
);
}
export default function Home() {
const {siteConfig} = useDocusaurusContext();
return (
<Layout
title={`${siteConfig.title} - Admin Plugin for CS2`}
description="CS2-SimpleAdmin is a comprehensive administration plugin for Counter-Strike 2 servers. Manage bans, mutes, warnings, and permissions with multi-server support and extensible API.">
<HomepageHeader />
<main>
<HomepageFeatures />
</main>
</Layout>
);
}

View file

@ -0,0 +1,97 @@
/**
* CSS files with the .module.css suffix will be treated as CSS modules
* and scoped locally.
*/
.heroBanner {
padding: 8rem 0;
text-align: center;
position: relative;
overflow: hidden;
min-height: 600px;
display: flex;
align-items: center;
justify-content: center;
}
.videoBackground {
position: absolute;
top: 50%;
left: 50%;
width: 100vw;
height: 56.25vw; /* 16:9 Aspect Ratio */
min-height: 100vh;
min-width: 177.77vh; /* 16:9 Aspect Ratio */
transform: translate(-50%, -50%);
z-index: 0;
pointer-events: none;
}
.videoOverlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.6);
z-index: 1;
}
.heroBanner :global(.container) {
position: relative;
z-index: 999 !important;
}
.heroBanner :global(.hero__title) {
color: white !important;
text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.9);
font-size: 3.5rem;
font-weight: bold;
margin-bottom: 1rem;
}
.heroBanner :global(.hero__subtitle) {
color: white !important;
text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.9);
font-size: 1.5rem;
margin-bottom: 2rem;
}
.heroBanner .buttons {
position: relative;
z-index: 10;
}
@media screen and (max-width: 996px) {
.heroBanner {
padding: 4rem 2rem;
min-height: 400px;
}
.videoBackground {
width: 200vw;
height: 112.5vw;
}
.heroBanner :global(.hero__title) {
font-size: 2rem;
}
.heroBanner :global(.hero__subtitle) {
font-size: 1.2rem;
}
}
.buttons {
display: flex;
align-items: center;
justify-content: center;
position: relative;
z-index: 10;
}
.buttons :global(.button) {
position: relative;
z-index: 10;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5);
}

View file

@ -0,0 +1,7 @@
---
title: Markdown page example
---
# Markdown page example
You don't need React to write simple standalone pages.