This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
If it is detected at the start or during a session that the user's primary language is not English, always respond in that language from then on. However, technical terms may remain in English as needed.
GROWI is a team collaboration software using markdown - a wiki platform with hierarchical page organization. It's built with Next.js, Express, MongoDB, and includes features like real-time collaborative editing, authentication integrations, and plugin support.
turbo run bootstrap - Install dependencies for all workspace packagesturbo run dev - Start development server (automatically runs migrations and pre-builds styles)pnpm run app:build - Build GROWI app client and server for productionpnpm run app:server - Launch GROWI app server in production modepnpm start - Build and start the application (runs both build and server commands)pnpm run migrate - Run MongoDB migrations (production)turbo run dev:migrate @apps/app - Run migrations in development (or wait for automatic execution with dev)cd apps/app && pnpm run dev:migrate:status - Check migration statuscd apps/app && pnpm run dev:migrate:down - Rollback last migrationturbo run test @apps/app - Run Jest and Vitest test suites with coverageturbo run lint @apps/app - Run all linters (TypeScript, ESLint, Biome, Stylelint, OpenAPI)cd apps/app && pnpm run lint:typecheck - TypeScript type checking onlycd apps/app && pnpm run test:vitest - Run Vitest unit testscd apps/app && pnpm run test:jest - Run Jest integration testscd apps/app && pnpm run repl - Start Node.js REPL with application context loadedturbo run pre:styles @apps/app - Pre-build styles with Vite/apps/app/ - Main GROWI application (Next.js frontend + Express backend)/apps/pdf-converter/ - PDF conversion microservice/apps/slackbot-proxy/ - Slack integration proxy service/packages/ - Shared libraries and components/apps/app/src/)client/ - Client-side React components and utilitiesserver/ - Express.js backend (API routes, models, services)components/ - Shared React components and layoutspages/ - Next.js page components using file-based routingstores/ - State management (SWR-based stores with React context)styles/ - SCSS stylesheets with modular architecturemigrations/ - MongoDB database migration scriptsinterfaces/ - TypeScript type definitions.module.scss filesindex.ts files where appropriateserver/routes/server/models/ using Mongoose schemasserver/service/ for business logicstores/ for server statestores-universal/ for app-wide stateWhen working with this codebase, always run the appropriate linting and testing commands before committing changes. The application uses strict TypeScript checking and comprehensive test coverage requirements.