Документация
Исходная карта
Точки входа в реализацию для отслеживания поведения и внесения целенаправленных изменений.
Автоматически переведено с английского. Смотреть оригинал на английском
САПР и чертеж
Начать с packages/core/src/index.ts чтобы увидеть экспорт пространства имен. packages/core/src/cad/index.ts перечисляет API САПР; packages/core/src/drawing/index.ts перечисляет операции рисования.
cad/sketch.ts,sketch-shapes.ts,snap.ts,intersect.ts: данные эскиза, формы, привязка и пересечение.cad/history.ts,history-edit.ts,history-brep.ts: история объектов, правки и реконструкция B-rep.cad/brep/,solid.ts,tessellate.ts: твердотельная топология, моделирование и визуализируемые сетки.cad/import-step.ts,dxf.ts, иimport-drawing.ts: границы обмена и импорта.cad/scene-analysis.ts,scene-evidence.ts,dfm.ts: анализ места происшествия, доказательства и проверки технологичности.
При отслеживании проблем с отображением разделяйте анализ импорта, точную геометрию, тесселяцию и выбор области просмотра. Видимая сетка может иметь другое происхождение, чем редактируемый параметрический объект.
CAM и G-код
packages/core/src/cam/index.ts: общедоступные пространства имен CAM и экспорт.cam/operations/иcam/generator/: реализации операций и конвейер генерации.cam/setup.ts,indexing.ts,ir.ts: установочные кадры, индексированная обработка и представление промежуточного движения.cam/post/index.ts,emitter.tsи файлы диалектов: зарегистрированные сообщения и общие выпуски программ.cam/post/convert.ts: ядро преобразования ЧПУ: воспроизводит G-код или Klartext, переписывает его с любым постом и подтверждает движение повтором.cam/verify/,kernel/,model/, иviewer/: проверка, обработка ядер, моделей и помощников просмотра.
След сохраняется при обработке через apps/sidecar/src/http/toolpaths.ts и src/services/cam-program.ts, затем в функцию CAM рабочего стола. справочник по настройкам объясняет, как переносимые программные документы связаны с сохраненными траекториями инструмента.
HTTP и постоянство
packages/api/src/index.ts,groups/,errors.ts,auth.ts: контракты конечных точек, ошибки передачи данных и декларации авторизации.packages/api/src/client.ts: полный клиент Effect на основе контракта с промежуточным программным обеспечением носителя.packages/api/scripts/generate-clients.ts: целевые результаты и явные исключения генерации.packages/httpapi-codegen/src/index.ts: отражение контракта, проверка и клиентские эмиттеры.apps/sidecar/src/main.ts,config.ts,layers.ts: жизненный цикл сервера, конфигурация и подключение зависимостей.apps/sidecar/src/http/,services/,repos/: адаптеры протоколов, операции приложений и постоянный доступ.packages/db/src/index.ts,schema.ts,upgrade.ts,migrate.ts: служба базы данных, таблицы, безопасность обновления и интерфейс командной строки.packages/db/drizzle/: сгенерированные миграции и метаданные, поставляемые вместе с настольным компьютером.
Настольные и мобильные устройства
apps/desktop/src/app/App.tsx, Shell.tsx, и routes.tsx собрать верстак и маршруты. client.ts и sidecar.ts обрабатывать доступ к API и состояние собственного соединения. Поведение продукта зависит от src/features; общий контроль и государство живут под src/shared.
Окно просмотра находится под apps/desktop/src/viewport, разделить на editor2d, view3d, и spatial. Собственные команды и жизненный цикл находятся под apps/desktop/src-tauri/src; конфигурация упаковки. src-tauri/tauri.conf.json.
Мобильные маршруты находятся под apps/mobile/app, многоразовые компоненты под componentsи логика соединения клиента/сопряжения в разделе lib. Собственный модуль сокета modules/companion-net. На сервере запустите отслеживание компаньонов по адресу apps/sidecar/src/http/companion.ts и services/companion.ts.
ИИ, плагины, история и рабочие процессы
packages/ai/src/actionsиtools: объявления действий и интеграция вспомогательных инструментов.packages/ai/src/nikcli,prompts, иskills: встроенная интеграция с хостом и помощник под руководством.apps/sidecar/src/services/ai.ts: живые зависимости AI и выбор хоста.packages/nikcli-plugin/src/index.ts: внешний HTTP-мост nikcli.packages/plugin-sdk/src/index.tsиapps/sidecar/src/plugins/host.ts: поверхность разработки плагина и хост среды выполнения.packages/vcs/src/index.ts,apps/sidecar/src/services/project-vcs.ts, иrepos/project-vcs-repo.ts: историческая библиотека, оркестровка и настойчивость.packages/workflow/src/index.ts,apps/sidecar/src/services/workflow-runner.ts, иworkflow-service-steps-live.ts: контракт рабочего процесса, выполнение и регистрация этапов обслуживания.
Контроль версий живет в packages/vcs/src: object.ts (формат объекта git), repository.ts (ссылки и коммиты), snapshot.ts, diff.ts, store.ts, transport.ts, и github.ts. Рабочие процессы живут в packages/workflow/src: schema.ts, trigger.ts (сопоставление glob и триггера) и run.ts. Файлы рабочего процесса считываются из .cadcamfun/workflows/ в дереве проекта.
Документация и доставка
packages/web/src/pages/docs содержит статьи документации. src/layouts/DocsLayout.astro предоставляет общую оболочку статьи. Навигационная и поисковая копия находятся в src/data/docsSidebar.ts и docsIndex.ts; общие описания пакетов находятся в architecture.ts.
src/lib/docsMarkdown.ts конвертирует визуализированные статьи в Markdown для src/pages/llm.ts и помощник по документации. Получение находится в docsRetrieval.ts; помощник казни находится в src/pages/api/docs-assistant.ts. Помощники по синтаксическому анализу и хранению артефактов уже включены. src/lib/docsArtifact.ts.
packages/web/script/dev.ts запускает Astro и локальный процесс Studio. studio-server.ts владеет локальным API обзора SQLite. astro.config.mjs настраивает инфраструктуру пререндеринга и локальный прокси; wrangler.toml объявляет привязки Worker.
Компиляция рабочего стола и подготовка выпуска начнутся в scripts/build.ts. Рабочие процессы CI и выпуска находятся в стадии разработки. .github/workflows. Видеть Релиз и обновления для создания артефактов и требований к подписи.
Отслеживание поведения через границы
- Определите конечную точку в ссылка на ресурс и прочитайте его параметры, тело, ответы и схемы ошибок.
- Найдите его объявление HttpApi в корневой композиции API. Некоторые основополагающие ресурсы, включая проекты, находятся непосредственно под
packages/api/src; другие группы живут подsrc/groups. - Найдите его обработчик под
apps/sidecar/src/http. Прочтите проверки текущего пользователя и ресурсов, прежде чем выполнять вызов службы или репозитория. - Для расчета перейдите к ядру. Для хранения продолжайте через репозиторий и
Database.query. На предмет поведения провайдера/сети проверьте настроенный адаптер. - Вернитесь к настольному или мобильному абоненту и проверьте обработку конвертов, состояние сеанса, отмену и отображение ошибок.
Например, отсутствующее имя при создании проекта отклоняется в apps/sidecar/src/http/projects.ts; это не ошибка SQLite. Несоответствие портативного CAM-документа проверяется apps/sidecar/src/services/cam-program.ts; синтаксический анализ NC в окне просмотра не может обойти это. Отказ в маршрутизации парного телефона обусловлен политикой метода/пути сопутствующего шлюза.
Дерево каталогов с количеством файлов
apps/
desktop/src/ app/ 13 features/ 280 pages/ 68 shared/ 44 viewport/ 25 i18n/ 1
desktop/src-tauri/src commands.rs lib.rs main.rs menu.rs secrets.rs sidecar.rs tray.rs updater.rs
sidecar/src/ http/ 34 repos/ 24 services/ 29 plugins/ 3 (+ main.ts, config.ts, layers.ts)
mobile/ app/ 13 components/ 30 lib/ 21 hooks/ 2 modules/ 2
packages/
core/src/ cad/ 80 cam/ 110 drawing/ 7
ai/src/ actions/ 14 nikcli/ 27 tools/ 26 prompts/ 5 skills/ 2
api/src/ groups/ (one file per group) sdk/generated/ client/generated/
db/ src/ (index, schema, upgrade, migrate) drizzle/ (4 migrations)
vcs/ workflow/ plugin-sdk/ httpapi-codegen/ nikcli-plugin/ web/
scripts/ build.ts compile-sidecar.ts stage-release.ts updater-manifest.ts
release-helpers.ts release-ref.ts signing-config.ts smoke-sidecar.ts
.github/workflows/ ci.yml release.yml build-platforms.yml ios.yml Папки функций рабочего стола
Каждая папка под apps/desktop/src/features/ владеет компонентами, состоянием и вызовами API одной области продукта:
admin ai analytics auth billing cad cam chat companion costs dashboard
legal library marketplace mcp organizations plugins profile projects settings toolpaths Функция вызывает сайдкар через общий клиент API; общие виджеты живут в shared/ и сцена 3D в viewport/.
Где концепции САПР живут в основе
| Концепция | Файл в packages/core/src/cad/ |
|---|---|
| Решение эскизов | sketch.ts, sketch-shapes.ts |
| История функций и перестройка | history.ts, history-brep.ts, history-edit.ts |
| Точный B-повтор | brep/ |
| Логические значения на сетках | csg.ts |
| Выражения и параметры | expr.ts |
| Импорт STEP и DXF | import-step.ts, dxf.ts, import-drawing.ts |
| Филе и смеси | edge-blend.ts |
| Шестерни, крепеж, листовой металл | gear.ts, fasteners.ts, smart-fasteners.ts, sheet-metal.ts |
| Сборка и анализ сцены | assembly-analysis.ts, scene-analysis.ts, scene-step.ts |
| Технологичность | dfm.ts |
| Концепция | Файл в packages/core/src/cam/ |
|---|---|
| Родное ядро (снимок, запуск, претензии) | kernel/ |
| Постпроцессоры | post/ |
| Операции и генераторы | operations/, generator/, cycles/ |
| Настройки и индексирование | setup.ts, indexing.ts, five-axis.ts |
| Повтор и проверка | verify/, program-evidence.ts |
| Машины и инструменты | machine.ts, tool.ts |
| Подпрограммы | subprogram-text.ts |