Files
docs/config.yml

118 lines
3.8 KiB
YAML

# aetos-docs configuration
# Single source of truth for which repositories the docs service serves.
#
# repos: documentation collected from sibling source repositories via collect.py
# (refreshed manually: run `python collect.py` after rebuilding each repo's docs)
# static: docs already vendored inside this repository (never collected)
#
# Each repo may provide any of the doc kinds: lib, api, wiki (web sites) and mcp (MCP bundle).
# Each site is copied whole from the repo's `site/` dir.
# Served layout (flat, one dir per repo; no redirects):
# lib -> /<repo>/lib/
# api -> /<repo>/api/
# wiki -> /<repo>/wiki/
# mcp -> MCP server on its configured port
# The docs homepage shows one card per repo, grouped by its `section`
# (apps, tutorial, services, libraries); card links cover the repo's kinds.
service:
name: aetos-docs
html_port: 9000 # nginx: html portal
health_port: 8000 # mcp: /healthz
repos:
- name: openapi-first
source: ../openapi-first
title: OpenAPI First
description: Design-first API development toolkit enforcing OpenAPI contracts as the single source of truth.
section: libraries
docs:
lib: site
mcp: { bundle: docs/mcp, server: openapi_first, port: 8004 }
- name: doc-forge
source: ../doc-forge
title: Doc Forge
description: Renderer-agnostic Python documentation compiler powering MkDocs and MCP generation across Aetoskia projects.
section: libraries
docs:
wiki: site
lib: site
mcp: { bundle: docs/mcp, server: docforge, port: 8001 }
- name: dagpipe
source: ../dagpipe
title: DAG Pipe
description: Deterministic pipeline framework for executing state transformations through a directed acyclic graph (DAG).
section: libraries
docs:
lib: site
mcp: { bundle: docs/mcp, server: dagpipe, port: 8006 }
- name: mail-intake
source: ../mail-intake
title: Mail Intake
description: High-performance email ingestion and processing framework with pluggable adapters and automation workflows.
section: libraries
docs:
lib: site
mcp: { bundle: docs/mcp, server: mail_intake, port: 8002 }
- name: omniread
source: ../omniread
title: Omniread
description: Unified ingestion and normalization layer for structured and unstructured data sources.
section: libraries
docs:
lib: site
mcp: { bundle: docs/mcp, server: omniread, port: 8003 }
- name: py-jwt
source: ../py-jwt
title: Py JWT
description: Lightweight, explicit JWT utilities for Python services with strong validation and minimal magic.
section: libraries
docs:
lib: site
mcp: { bundle: docs/mcp, server: jwtlib, port: 8005 }
- name: hexa
source: ../hexa
title: Hexa
description: Hexagonal architecture framework and toolbox for Python services.
section: libraries
docs:
lib: site
- name: mongo-ops
source: ../mongo-ops
title: Mongo Ops
description: A modular, async MongoDB operations layer for FastAPI microservices. Simplifies CRUD, transactions, and model management.
section: libraries
docs:
wiki: site
- name: auth-server
source: ../auth-server
title: Auth Server
description: Aetoskia authentication service. OpenAPI-driven, FastAPI backend for auth flows.
section: services
docs:
api: site
lib: site
wiki: site
static:
- kind: api
repo: blog
title: Blog API
description: A modular, async Blog API backend for FastAPI microservices. Provides streamlined CRUD operations for articles and authors.
section: apps
path: blog
- kind: tutorial
repo: media-manager
title: Media Manager Tutorial
description: Step-by-step guide to the Media Manager architecture, ingestion pipeline, automation workflows, and integrations.
section: tutorial
path: media-manager