Wraps the `MoltbotChat` client component in a `Suspense` boundary in `src/app/services/moltbot/chats/page.tsx`. This resolves the `useSearchParams()` error during static site generation, ensuring the build completes successfully.
Co-authored-by: cloud-neutral <4133689+cloud-neutral@users.noreply.github.com>
- Replaced hardcoded slate colors in Navbar.tsx with semantic theme colors (text-text, bg-background, etc.) to ensure the mobile menu respects the application theme (light/dark).
- Fixed a duplicate variable declaration in AskAIDialog.tsx that was causing build failures.
- Updated yarn.lock to match the packageManager version.
Co-authored-by: cloud-neutral <4133689+cloud-neutral@users.noreply.github.com>
- Replaced MDXRemote with marked to avoid React version conflicts
- /docs page now successfully renders index.md content
- Verified working in production build
- Created scripts/prebuild.sh to consolidate all prebuild steps
- Updated scripts/sync-doc-content.sh to aggregate docs from all services:
- console.svc.plus → src/content/doc/01-console
- accounts.svc.plus → src/content/doc/02-accounts
- rag-server.svc.plus → src/content/doc/03-rag-server
- postgresql.svc.plus → src/content/doc/04-postgresql
- Auto-generates src/content/doc/index.md with service overview
- Simplified package.json prebuild to single script call
- Preserves TypeScript/Node.js scripts (generate-content.ts, build-contentlayer.mjs)
This ensures documentation is always fresh from source repos during build.
- Replaced docs landing page with a direct redirect to content
- Implemented 3-column layout: Sticky Sidebar, Main Content, Right Metadata
- added DocsSidebar with collapsible categories
- Added Feedback component for user sentiment
- Updated sync script to pull from knowledge/docs
- Refactored doc version page styles
- Changed from horizontal single-row to vertical two-row layout
- First row: tagline text (云原生 · 去平台绑定 · 可自由迁移)
- Second row: tech stack pills (Next.js, Go, Vercel, Cloud Run, PostgreSQL)
- Both rows are left-aligned for better visual hierarchy
- Added flex-wrap to tech stack for responsive behavior
- Changed application count from ~150k to 0+ (ready for API integration)
- Changed daily users from ~330k to 0+ (ready for API integration)
- Kept examples & guides count at 7 (actual value)
- Maintains all three stat labels for future data population
- Remove internalApiBaseUrl configuration from all runtime configs
- Simplify serviceConfig.ts to use apiBaseUrl for both internal and external API calls
- Remove localhost:8090 fallback, all API requests now route to Cloud Run RAG server
- This enables a fully distributed microservices architecture without local dependencies
Changes:
- src/config/runtime-service-config.base.yaml: removed internalApiBaseUrl
- src/config/runtime-service-config.prod.yaml: removed internalApiBaseUrl from cn and global regions
- src/server/serviceConfig.ts: simplified getInternalServerServiceBaseUrl() to use getServerServiceBaseUrl()
Tested: Local dev server successfully connects to RAG server at https://rag-server-svc-plus-266500572462.asia-northeast1.run.app
- Implemented a new Material 3-inspired layout for the services page, following the user's design reference.
- Added a theme switcher to toggle between the original ("classic") and the new ("material") layouts.
- The theme preference is persisted in `localStorage` using a Zustand store.
- Ensured proper server-side rendering and client-side hydration by creating a custom `useViewStore` hook that prevents hydration mismatches.
- Created new components for the Material 3 layout: `Sidebar`, `Header`, and `Material3Layout`.
- Refactored the main services page (`src/app/services/page.tsx`) to conditionally render either the classic or material layout based on the selected theme.
- Moved the theme switcher to the `Footer` component to make it accessible in both views.
- Added a Playwright test to verify the functionality of the theme switcher.