Monorepo Navigation Guide
Navigate the Ever Gauzy NX monorepo structure efficiently.
Repository Structureβ
ever-gauzy/
βββ apps/ # Applications
β βββ gauzy/ # Angular web app (main UI)
β βββ api/ # NestJS API server
β βββ server-api/ # API standalone server
β βββ desktop/ # Electron desktop app
β βββ desktop-timer/ # Desktop timer app
β βββ ...
βββ packages/ # Shared packages
β βββ core/ # Core API module (entities, services, controllers)
β βββ contracts/ # Shared TypeScript interfaces
β βββ common/ # Common utilities
β βββ config/ # Configuration
β βββ auth/ # Authentication module
β βββ plugin/ # Plugin infrastructure
β βββ plugins/ # Built-in plugins
β βββ changelog/
β βββ knowledge-base/
β βββ integration-ai/
β βββ ...
βββ libs/ # Shared libraries
β βββ ui-core/ # Core UI components
β βββ ...
βββ tools/ # Build tools & scripts
Key Directoriesβ
| Directory | Contents | Key Files |
|---|---|---|
packages/core/src/lib | All API modules | Controllers, services |
packages/contracts | TypeScript interfaces | src/lib/*.model.ts |
apps/gauzy/src | Angular frontend | Components, modules |
packages/plugins | Plugin implementations | Module, entity files |
Useful NX Commandsβ
# List all projects
npx nx show projects
# Dependency graph
npx nx graph
# Run specific project
npx nx serve api
npx nx serve gauzy
# Build specific project
npx nx build api --configuration=production
# Run tests for a project
npx nx test core
# Affected projects (changes since main)
npx nx affected --target=build
Finding Codeβ
| Looking For | Where to Look |
|---|---|
| API endpoint | packages/core/src/lib/{feature}/ |
| Entity definition | packages/core/src/lib/{feature}/*.entity.ts |
| TypeScript interface | packages/contracts/src/lib/ |
| Angular component | apps/gauzy/src/app/pages/ |
| Plugin | packages/plugins/{plugin-name}/ |
| Shared service | packages/common/src/lib/ |
Related Pagesβ
- Monorepo Structure β architecture overview
- Development Guide β getting started