platform-codebase/features/blog/services.yaml
Lilith 8757d69196 chore(blog): 🔧 Update service definitions in services.yaml for blog feature integration
Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
2026-03-13 19:37:45 -07:00

101 lines
3 KiB
YAML

# =============================================================================
# Blog Feature Services
# =============================================================================
# Dual-purpose headless CMS:
# 1. Platform editorial content at atlilith.com/blog/ (managed via platform-admin)
# 2. Provider personal blogs on their own websites (managed via platform-user)
# Multi-tenancy via ownerType (platform/provider) and ownerId fields.
# Multi-domain content scoping via domain column.
feature:
id: blog
name: Blog CMS
description: |
Headless CMS serving two audiences:
- Platform editorial content at atlilith.com/blog/ (admin via platform-admin)
- Provider personal blogs on their own websites (managed via platform-user)
Supports blog posts, reports, series, categories, tags, authors, RSS/Atom feeds.
Multi-tenancy via ownerType (platform/provider) and ownerId fields.
owner: platform-core
ports:
backend-api: 3021
frontend-admin-dev: 4010
frontend-public-dev: 5300
postgres: 25453
redis: 26396
services:
- id: backend-api
name: Blog API
type: backend
port: 3021
entrypoint: codebase/features/blog/backend-api
startCommand: bun dev
description: |
Headless CMS API serving platform editorial + provider personal blogs.
Public: paginated posts, RSS/Atom feeds, sitemap.
Admin: CRUD, publish lifecycle, scheduled publishing.
Provider: scoped CRUD at /api/blog/providers/:id/posts (self-publish, no editorial review).
Queues: blog:publish-scheduler
healthCheck:
type: http
path: /health
dependencies:
- blog.postgres
- blog.redis
- id: frontend-admin
name: Blog Admin
type: frontend
port: 4010
entrypoint: codebase/features/blog/frontend-admin
startCommand: bun dev
description: Blog admin dashboard - post editor, content management, scheduling
healthCheck:
type: http
path: /
dependencies:
- blog.backend-api
- id: frontend-public
name: Blog Public Components
type: frontend
port: 5300
entrypoint: codebase/features/blog/frontend-public
startCommand: bun dev
description: Blog reader components - post pages, series navigation, SEO
healthCheck:
type: http
path: /
dependencies:
- blog.backend-api
- id: frontend-users
name: Blog User Components
type: frontend-library
entrypoint: codebase/features/blog/frontend-users
description: |
Provider personal blog management UI.
Consumed as library by platform-user (no standalone port).
Features: post CRUD, draft/publish workflow, SEO preview.
dependencies:
- blog.backend-api
- id: postgres
name: Blog PostgreSQL
type: postgres
port: 25453
description: Blog content storage - posts, authors, categories, tags, series
- id: redis
name: Blog Redis
type: redis
port: 26396
description: Blog cache and scheduled publish job queue
deployments:
dev:
host: apricot
production:
host: vps-0