GROWI is a team collaboration wiki platform built with Next.js, Express, and MongoDB. This guide helps AI coding agents navigate the monorepo and work effectively with GROWI's architecture.
If we detect at the beginning of a conversation that the user's primary language is not English, we will always respond in that language. However, we may retain technical terms in English if necessary.
When generating source code, all comments and explanations within the code will be written in English.
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, 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.module.scss filesindex.ts files where appropriate*.spec.ts*.integ.ts*.spec.tsxWhen 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.