ObjectStackObjectStack

Packages Overview

Complete overview of ObjectDocs software packages, their features, development status, and version history.

Packages Overview

ObjectDocs is organized as a pnpm workspace monorepo with two core packages. This document provides a detailed overview of each package, its features, current status, and development history.

Current Version: v0.2.12 | Last Updated: 2026-02-08

Package Summary

PackageVersionDescriptionStatus
@objectdocs/cliv0.2.12Command-line tool for building and managing documentation✅ Stable
@objectdocs/sitev0.2.12Next.js documentation site template and rendering engine✅ Stable

@objectdocs/cli

CLI Tool

The primary developer interface for ObjectDocs. Provides commands for initializing, developing, building, and deploying documentation sites.

  • Framework: CAC (Command-line framework)
  • Language: JavaScript/Node.js (ESM)
  • Entry Point: bin/cli.mjs

Commands

objectdocs init

Initializes a new documentation project by copying the site template and setting up the development environment.

What it does:

  • Copies @objectdocs/site package to content/.fumadocs
  • Creates content/package.json with dev/build/start scripts
  • Installs dependencies in content/.fumadocs
  • Updates .gitignore to exclude generated files

objectdocs dev [docsDir]

Starts the development server with hot reload.

Features:

  • Default port: 7777 (configurable)
  • Watches docs.site.json for changes and auto-restarts
  • Syncs public assets to site engine
  • Sets DOCS_DIR environment variable

objectdocs build [docsDir]

Builds the documentation site for production.

Features:

  • Supports static export (out/ directory) and dynamic standalone (.next/) modes
  • Copies configuration and public assets
  • Handles symlink-aware artifact copying for Vercel compatibility

objectdocs start

Starts the production server.

Features:

  • Static mode: Serves from out/ directory using serve
  • Dynamic mode: Runs Next.js production server
  • Configurable port

objectdocs translate

AI-powered content translation using OpenAI.

Features:

  • Translates MDX content to configured languages
  • --all flag for batch translation
  • CI-compatible with environment variable configuration
  • Generates language-specific files (e.g., .cn.mdx, .ja.mdx)

Dependencies

DependencyVersionPurpose
@objectdocs/siteworkspace:*Site template for initialization
cac^6.7.14CLI framework
openai^4.0.0AI-powered translation
dotenv^16.4.5Environment variable loading
typescript^5.9.3TypeScript support

Feature Status

FeatureStatusNotes
Project initialization✅ CompleteFull init workflow
Development server✅ CompleteHot reload, config watching
Production build✅ CompleteStatic + dynamic modes
Production server✅ CompleteStatic + dynamic serving
AI translation✅ CompleteOpenAI integration
GitHub integration⬚ PlannedPhase 2
README migration⬚ PlannedPhase 2
API doc generation⬚ PlannedPhase 2

@objectdocs/site

Site Template

A complete Next.js application template that serves as the documentation rendering engine. Built on Fumadocs with full i18n support.

  • Framework: Next.js 16 (App Router) + Fumadocs 16
  • Styling: Tailwind CSS 4
  • Language: TypeScript
  • React: v19 (Server Components)

Core Features

Content Rendering

  • MDX compilation with remark/rehype plugins
  • Code syntax highlighting (Vesper theme)
  • Image zoom capability
  • Built-in components: Callout, Card, Cards, Steps, Step
  • Table of contents generation

Site Engine

  • File-system based routing
  • Full-text search API endpoint
  • meta.json-driven navigation tree
  • Configurable sidebar, navbar, and footer
  • Dark mode support

Architecture

ComponentPathDescription
Root Layoutapp/layout.tsxHTML shell, global providers
Language Routerapp/[lang]/layout.tsxi18n layout with Fumadocs
Docs Pagesapp/[lang]/docs/[[...slug]]/page.tsxDynamic MDX page rendering
Home Redirectapp/[lang]/page.tsxRedirects to docs root
Search APIapp/api/search/route.tsFull-text search endpoint
i18n Systemlib/i18n.ts6-language support with UI translations
Config Loaderlib/config.tsdocs.site.json parsing and defaults
Source Managerlib/source.tsFumadocs content source with i18n
MDX Componentsmdx-components.tsxCustom component registry
Source Configsource.config.tsContent directory and MDX plugin config

i18n Support

Pre-built UI translations for 6 languages:

LanguageCodeTOC LabelSearchLast Update
Englishen"On this page""Search""Last updated on"
中文cn"目录""搜索""最后更新于"
日本語ja"目次""検索""最終更新"
Françaisfr"Sur cette page""Rechercher""Dernière mise à jour"
Deutschde"Auf dieser Seite""Suchen""Zuletzt aktualisiert am"
Españoles"En esta página""Buscar""Última actualización"

Configuration Options

The site reads from docs.site.json with support for:

  • Site metadata: title, description, URL, favicon
  • Branding: name, logo (light/dark), theme color, border radius
  • Navigation: navbar links with text, URL, icon, external flag
  • Sidebar: collapsible, prefetch, default open level, tabs
  • Table of Contents: enabled, depth
  • Footer: copyright text
  • Page features: last update timestamps, edit on GitHub links
  • Content: code theme, image zoom, math support
  • i18n: default language, language list
  • Build: mode (export/standalone)

Dependencies

DependencyVersionPurpose
next^16.1.2Application framework
react / react-dom^19.2.3UI rendering
fumadocs-core^16.4.7Documentation engine core
fumadocs-ui^16.4.7Documentation UI components
fumadocs-mdx^14.2.5MDX content processing
tailwindcss^4.1.18Utility-first CSS
typescript^5.9.3Type safety
openai^4.0.0AI features
lucide-react^0.562.0Icon library

Feature Status

FeatureStatusNotes
MDX rendering✅ CompleteFull Fumadocs pipeline
i18n (6 languages)✅ CompleteFile-based + UI translations
Full-text search✅ CompleteAPI endpoint
Dark mode✅ CompleteVia Fumadocs UI
Code highlighting✅ CompleteVesper theme
Image zoom✅ CompleteConfigurable
Standalone output✅ CompleteVercel/Docker ready
Static export✅ CompleteCDN-deployable
Config system✅ Completedocs.site.json
ISR support⬚ PlannedPhase 1
Edge Functions⬚ PlannedPhase 1
Math rendering⬚ PlannedConfig exists, not enabled

Version History

v0.2.12 (Latest)

  • Patch release for maintenance updates

v0.2.11

  • Fix: Handle broken symlinks during build copy to prevent ENOENT errors on Vercel

v0.2.10

  • Feat: Enable standalone output mode for better Vercel/Docker support

v0.2.9

  • Fix: Add .source path alias to tsconfig.json for generated file resolution

v0.2.8

  • Fix: Use dereference: true when copying .next directory to expand all symlinks

v0.2.7

  • Fix: Use relative import for generated content to avoid alias resolution issues in monorepos

v0.2.6

  • Fix: Copy .next directory instead of symlinking to support Vercel deployment

v0.2.5

  • Chore: Add transpilePackages configuration for monorepo module resolution

v0.2.4

  • Fix: Rename proxy.ts to middleware.ts to fix Next.js 16 build error

v0.2.3

  • Fix: Update package metadata for publishing

v0.2.2

  • Docs: Updated README with corrected configuration file names

v0.2.1

  • Bug fixes and improvements

v0.2.0

  • Initial release: Modern documentation engine built on Next.js 14 and Fumadocs

v0.1.0

  • Initial release with metadata-driven architecture, low-code component embedding, enterprise-grade UI, and multi-product support

Starter Template

An example starter template is available in examples/starter/ with:

  • Pre-configured docs.site.json with ObjectStack branding
  • Sample documentation structure
  • Ready-to-run content with meta.json navigation
# Quick start with the starter template
cp -r examples/starter my-docs
cd my-docs
npm init @objectdocs

For detailed technical architecture, see the System Design document. For the feature roadmap, see the Development Roadmap.

On this page