This repository contains the source files for the SampSharp documentation. The site is built with DocFX, a powerful documentation generator designed for .NET projects.
For Documentation Contributors Only
This guide is intended for people contributing to the SampSharp documentation. If you're looking for SampSharp documentation, visit sampsharp.net.
- .NET 10 SDK or later
-
Install DocFX (one-time setup):
dotnet tool install -g docfx
-
Build the SampSharp component:
cd sampsharp-src && ./build.sh component
-
Start the development server:
docfx --serve
The site will be available at
http://localhost:8080/
All documentation is written in Markdown in the docs/ folder. For Markdown syntax reference, see the DocFX Markdown Documentation.
-
Create a new
.mdfile in the appropriate folder underdocs/:docs/guides/- How-to guides and tutorialsdocs/reference/- Reference materialdocs/support/- Support content (troubleshooting, migration guides)
-
Add a YAML frontmatter header to the file:
--- title: Your Page Title uid: unique-identifier ---
-
Add the file reference to the corresponding
toc.yml:- href: your-page.md
docs/
├── index.md # Home page
├── getting-started.md # Getting started guide
├── core-concepts.md # Core concepts
├── guides/
│ ├── toc.yml # Guides table of contents
│ ├── systems.md
│ ├── components.md
│ └── ...
├── reference/
│ ├── toc.yml # Reference table of contents
│ ├── advanced-topics.md
│ └── ...
├── support/
│ ├── toc.yml # Support table of contents
│ ├── troubleshooting.md
│ └── ...
├── legacy/ # Deprecated content
└── toc.yml # Main table of contents
- Internal links: Use relative paths with
.mdextension:[link text](systems.md)or[link text](../guides/systems.md) - External links: Use full URLs:
[link text](https://example.com) - Cross-references: Link to other documentation pages using
<xref:uid>(whereuidis the page'suidfield from frontmatter):<xref:systems> - Note blocks: Use
> [!NOTE]syntax for important callouts - Tabs: Use DocFX tab syntax for tabbed content (see DocFX Markdown Documentation)
- Code references: Use
<xref:NameSpace.ClassName>to create cross-references to API documentation