Skip to content

Commit a6c0abd

Browse files
MagicMock/mock.effective_git_name/140297175410272claude
authored andcommitted
Add agents.md for AI-assisted development context
Provides MkDocs setup, navigation conventions, blog post structure, and markdown extension usage for the documentation site. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 5058986 commit a6c0abd

1 file changed

Lines changed: 58 additions & 0 deletions

File tree

agents.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# Documentation
2+
3+
Developer and user documentation site for Freeshard, published at docs.freeshard.net. Built with MkDocs and the Material theme.
4+
5+
## Tech Stack
6+
7+
- **Generator**: MkDocs with Material theme
8+
- **Plugins**: blog, glightbox (image lightbox)
9+
- **Markdown extensions**: admonitions, details, syntax highlighting, Mermaid diagrams, emoji, markdown-include
10+
- **Dependencies**: `requirements.txt` (mkdocs, mkdocs-material, markdown-include, mkdocs-glightbox)
11+
12+
## Commands
13+
14+
```bash
15+
pip install -r requirements.txt # Install dependencies
16+
mkdocs serve # Dev server on localhost:8000
17+
mkdocs build # Generate static site to public/
18+
```
19+
20+
## Structure
21+
22+
```
23+
docs/
24+
overview/ Product overview and concepts
25+
concepts/ Single-user isolation, devices, apps
26+
developer_docs/ Developer documentation for app creators
27+
includes/ Reusable markdown snippets (template vars, portal name info)
28+
img/ Developer docs images
29+
user_guides/ End-user guides (password management, smart home)
30+
blog/
31+
posts/ Blog posts (date-prefixed directories)
32+
YYYY-MM-DD_slug/ Each post: main.md + images
33+
.authors.yml Blog author metadata
34+
css/extra.css Custom styles
35+
img/ Shared images (logo)
36+
mkdocs.yml Site config, navigation, theme, plugins
37+
```
38+
39+
## Conventions
40+
41+
### Navigation
42+
Navigation is explicitly defined in `mkdocs.yml` under the `nav` key. Four top-level sections: Overview, Developer Docs, Blog, User Guides. Adding a new page requires adding it to `nav`.
43+
44+
### Blog Posts
45+
Blog posts live in `docs/blog/posts/YYYY-MM-DD_slug/main.md`. Each post directory contains the markdown file and any associated images. Authors are defined in `docs/blog/.authors.yml`.
46+
47+
### Markdown Includes
48+
Reusable snippets in `docs/developer_docs/includes/` can be included in other docs via the `markdown-include` extension: `{!developer_docs/includes/snippet.md!}`.
49+
50+
### Images
51+
Store images alongside the content that uses them (in subdirectory `img/` or in blog post directories). Use relative paths. The glightbox plugin automatically adds lightbox behavior to images.
52+
53+
### Mermaid Diagrams
54+
Supported via `pymdownx.superfences` custom fence. Use ` ```mermaid ` code blocks.
55+
56+
## Deployment
57+
58+
Built and deployed via GitLab Pages. The `site_dir` is `public/` (GitLab Pages convention). Site URL: `https://docs.freeshard.net`.

0 commit comments

Comments
 (0)