انتقل إلى المحتوى الرئيسي

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

DirectoryContentsKey Files
packages/core/src/libAll API modulesControllers, services
packages/contractsTypeScript interfacessrc/lib/*.model.ts
apps/gauzy/srcAngular frontendComponents, modules
packages/pluginsPlugin implementationsModule, 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 ForWhere to Look
API endpointpackages/core/src/lib/{feature}/
Entity definitionpackages/core/src/lib/{feature}/*.entity.ts
TypeScript interfacepackages/contracts/src/lib/
Angular componentapps/gauzy/src/app/pages/
Pluginpackages/plugins/{plugin-name}/
Shared servicepackages/common/src/lib/