Thank you for your interest in contributing to the SolidRusT AI documentation! This guide will help you get started.
For typos, broken links, or minor corrections:
- Click the "Edit this page" link on any documentation page
- Make your changes directly in GitHub
- Submit a pull request with a brief description
For new documentation pages, guides, or examples:
- Fork the repository
- Create a feature branch
- Write your content following our Style Guide
- Submit a pull request
- Node.js 20 or later
- npm or pnpm
- Git
# Clone your fork
git clone https://github.com/YOUR-USERNAME/solidrust-ai-docs.github.io.git
cd solidrust-ai-docs.github.io
# Install dependencies
npm install
# Start development server
npm run dev
# Open http://localhost:4321 in your browser# Build the site
npm run build
# Preview the build
npm run previewsrc/content/docs/
├── getting-started/ # Onboarding and setup
│ ├── introduction.mdx
│ ├── quickstart.mdx
│ └── api-keys.mdx
├── api/ # API reference
│ ├── overview.mdx
│ ├── chat-completions.mdx
│ └── embeddings.mdx
├── sdks/ # SDK documentation
├── guides/ # How-to guides
├── examples/ # Code examples
└── changelog.mdx # Release notes
Every documentation page needs frontmatter:
---
title: Page Title
description: Brief description for SEO and link previews (max 160 chars)
---
Your content here...New pages must be added to astro.config.mjs sidebar configuration:
sidebar: [
{
label: 'Category',
items: [
{ label: 'Page Title', slug: 'category/page-slug' },
],
},
],- Use second person ("you") for instructions
- Be concise - developers want quick answers
- Avoid jargon unless necessary (define it if used)
- Write in active voice
Always include working examples:
# Good - complete and runnable
from openai import OpenAI
client = OpenAI(
base_url="https://api.solidrust.ai/v1",
api_key="YOUR_API_KEY"
)
response = client.chat.completions.create(
model="vllm-primary",
messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)# Bad - incomplete
client.chat.completions.create(model="...", messages=[...])Use built-in components for consistent styling:
import { Card, CardGrid, Tabs, TabItem } from '@astrojs/starlight/components';
<CardGrid>
<Card title="Feature 1" icon="rocket">
Description here
</Card>
<Card title="Feature 2" icon="seti:config">
Description here
</Card>
</CardGrid>
<Tabs>
<TabItem label="Python">
```python
# Python code
```
</TabItem>
<TabItem label="JavaScript">
```javascript
// JavaScript code
```
</TabItem>
</Tabs>Use callouts for important information:
:::note
Neutral information the reader should know.
:::
:::tip
Helpful suggestions or best practices.
:::
:::caution
Potential issues or things to watch out for.
:::
:::danger
Critical warnings about breaking changes or security.
:::-
Run the build locally to catch errors:
npm run build
-
Check links work correctly
-
Verify code examples are runnable
-
Follow the style guide
- Clear title describing the change
- Description of what and why
- Link to related issue (if applicable)
- Screenshots for visual changes
- Automated checks run on your PR
- A maintainer reviews the content
- Address any feedback
- Once approved, your PR will be merged
- Questions: Open a GitHub Discussion
- Bugs: Open a GitHub Issue
- Contact: support@solidrust.net
By contributing, you agree that your contributions will be licensed under the same license as the project.
Thank you for helping make SolidRusT AI documentation better!