termi-blog

Monorepo for the Termi blog system.

Structure

.
├─ admin/      # React + shadcn admin workspace
├─ frontend/   # Astro blog frontend
├─ backend/    # Loco.rs backend APIs and legacy Tera admin
├─ mcp-server/ # Streamable HTTP MCP server for articles/categories/tags
├─ .codex/     # Codex workspace config
└─ .vscode/    # Editor workspace config

Run

Monorepo scripts

From the repository root:

.\dev.ps1

Frontend + backend + MCP:

.\dev.ps1 -WithMcp

Only frontend:

.\dev.ps1 -FrontendOnly

Only backend:

.\dev.ps1 -BackendOnly

Only admin:

.\dev.ps1 -AdminOnly

Only MCP:

.\dev.ps1 -McpOnly

Direct scripts:

.\start-frontend.ps1
.\start-backend.ps1
.\start-admin.ps1
.\start-mcp.ps1

Frontend

cd frontend
npm install
npm run dev

Admin

cd admin
npm install
npm run dev

Backend

cd backend
$env:DATABASE_URL="postgres://postgres:postgres%402025%21@10.0.0.2:5432/termi-api_development"
cargo loco start 2>&1

MCP Server

.\start-mcp.ps1

Default MCP endpoint:

http://127.0.0.1:5151/mcp

Default local development API key:

termi-mcp-local-dev-key

The MCP server wraps real backend APIs for:

  • Listing, reading, creating, updating, and deleting Markdown posts
  • Listing, creating, updating, and deleting categories
  • Listing, creating, updating, and deleting tags
  • Reading and updating public site settings
  • Rebuilding the AI index

Repo Name

Recommended repository name: termi-blog

Description
Astro frontend + Loco.rs backend monorepo for Termi blog
Readme 4.9 MiB
Languages
TypeScript 35%
Rust 33.3%
Astro 21.9%
JavaScript 5.8%
CSS 2.8%
Other 1.1%