Какова правильная структура многоязычного монорепо на NX?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Какова правильная структура многоязычного монорепо на NX?

Сообщение Anonymous »

Я строю сайт бронирования авиакомпании, мне нужно справиться Оплата; Попытка использовать Monorepo с NX, но я запутался с тем, как должен быть организован. ) С этой структурой: < /p>
/monorepo-root
├── /apps # Contains minimal, app-specific setup
│ ├── /frontend # Entry point for the frontend (Next.js)
│ ├── /api-js # Node.js API with REST operations
│ ├── /api-dotnet # .NET API REST
├── /libs # Reusable code
│ ├── /ui # Shared UI components
│ │ ├── /components # Reusable UI elements like buttons, modals
│ │ └── /layouts # Shared page layouts
│ ├── /utils # Shared utilities and helper functions
├── /date # Date manipulation helpers

< /code>
Каждый API имеет внутри собственных моделей классов, контроллеров и т. Д. /> nx имеет концепцию приложений и либеров. Приложения можно рассматривать как развертываемые артефакты, а LIBS включают большую часть фактического кода и бизнес -логику. Тем не менее, нельзя, когда впервые начинает работать с NX, вставить много кода в ваши приложения и использовать LIBS только для общего кода. Но когда вы переходите на NX Monorepo, вы должны попытаться структурировать свой репозиторий «NX Way». Это означает, что вы должны вообще не вкладывать код в свои приложения и иметь почти весь код, расположенный в ваших LIBS. Даже код, который не будет передаваться между приложениями, должен быть помещен в LIBS. Сначала это может показаться немного интеллектуальным интуитивно понятным, но если вы примените эту структуру, это поможет вам сохранить организованную монорепо. Кроме того, таким образом вы хорошо подготовлены, если он станет необходимым для того, чтобы LIB была разделена или повторно использована где -то еще в будущем. Если вы используете последовательную структуру папок и стратегию именования для ваших LIB Эта структура правильная ?: < /p>
/monorepo-root
├── /apps
| ├── api-dotnet
│ | ├── Program.cs # Bootstrapping the app
│ | ├── Startup.cs (optional) # Additional app configuration if needed
│ | ├── appsettings.json # App-specific configuration
│ | ├── All Visual Studio Created files and folders (.csproj, bin, obj, etc)
│ |
| ├── api-js
| | ├── index.js
|
├── /libs
│ ├── /ui # Shared UI components
│ │ ├── /components # Reusable UI elements like buttons, modals
│ │ └── /layouts # Shared page layouts
│ ├── /utils # Shared utilities and helper functions
| | ├── /date # Date manipulation helpers
│ ├── /features # App-specific features, organized by domain
│ │ ├── /auth # Authentication logic (e.g., login, register)
│ │ ├── /flight-search # Flight search feature logic
│ │ └── /profile # User profile management
│ └── /data-access # Data-related code like database models, services
│ ├── /frontend-api # Frontend API services
│ ├── /api-js-models # Models and services for the Node.js API
│ └── /api-dotnet # Data-related logic for .NET


Подробнее здесь: https://stackoverflow.com/questions/792 ... repo-on-nx
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»