settings.gradle.kts 4.23 KB
rootProject.name = "vibe-erp"

pluginManagement {
    repositories {
        gradlePluginPortal()
        mavenCentral()
    }
}

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        mavenCentral()
    }
    // Gradle auto-discovers `gradle/libs.versions.toml` and creates the
    // `libs` catalog automatically — no explicit `from(files(...))` needed.
}

// ─── Public contract ────────────────────────────────────────────────
include(":api:api-v1")
project(":api:api-v1").projectDir = file("api/api-v1")

// ─── Platform (framework runtime, internal) ─────────────────────────
include(":platform:platform-bootstrap")
project(":platform:platform-bootstrap").projectDir = file("platform/platform-bootstrap")

include(":platform:platform-persistence")
project(":platform:platform-persistence").projectDir = file("platform/platform-persistence")

include(":platform:platform-plugins")
project(":platform:platform-plugins").projectDir = file("platform/platform-plugins")

include(":platform:platform-security")
project(":platform:platform-security").projectDir = file("platform/platform-security")

include(":platform:platform-events")
project(":platform:platform-events").projectDir = file("platform/platform-events")

include(":platform:platform-metadata")
project(":platform:platform-metadata").projectDir = file("platform/platform-metadata")

include(":platform:platform-i18n")
project(":platform:platform-i18n").projectDir = file("platform/platform-i18n")

include(":platform:platform-workflow")
project(":platform:platform-workflow").projectDir = file("platform/platform-workflow")

include(":platform:platform-jobs")
project(":platform:platform-jobs").projectDir = file("platform/platform-jobs")

include(":platform:platform-files")
project(":platform:platform-files").projectDir = file("platform/platform-files")

include(":platform:platform-reports")
project(":platform:platform-reports").projectDir = file("platform/platform-reports")

// ─── Packaged Business Capabilities (core PBCs) ─────────────────────
include(":pbc:pbc-identity")
project(":pbc:pbc-identity").projectDir = file("pbc/pbc-identity")

include(":pbc:pbc-catalog")
project(":pbc:pbc-catalog").projectDir = file("pbc/pbc-catalog")

include(":pbc:pbc-partners")
project(":pbc:pbc-partners").projectDir = file("pbc/pbc-partners")

include(":pbc:pbc-inventory")
project(":pbc:pbc-inventory").projectDir = file("pbc/pbc-inventory")

include(":pbc:pbc-warehousing")
project(":pbc:pbc-warehousing").projectDir = file("pbc/pbc-warehousing")

include(":pbc:pbc-quality")
project(":pbc:pbc-quality").projectDir = file("pbc/pbc-quality")

include(":pbc:pbc-orders-sales")
project(":pbc:pbc-orders-sales").projectDir = file("pbc/pbc-orders-sales")

include(":pbc:pbc-orders-purchase")
project(":pbc:pbc-orders-purchase").projectDir = file("pbc/pbc-orders-purchase")

include(":pbc:pbc-finance")
project(":pbc:pbc-finance").projectDir = file("pbc/pbc-finance")

include(":pbc:pbc-production")
project(":pbc:pbc-production").projectDir = file("pbc/pbc-production")

// ─── Reference customer plug-in (NOT loaded by default) ─────────────
include(":reference-customer:plugin-printing-shop")
project(":reference-customer:plugin-printing-shop").projectDir = file("reference-customer/plugin-printing-shop")

// ─── Web SPA ────────────────────────────────────────────────────────
//
// `:web` is a Gradle wrapper around an npm build. It produces a
// `dist/` directory of static assets that `:distribution` consumes
// at processResources time. See `web/build.gradle.kts` for the
// rationale (no Kotlin/JVM source set, no node-gradle plugin —
// just Exec tasks against system npm).
include(":web")
project(":web").projectDir = file("web")

// ─── Distribution (assembles the runnable image) ────────────────────
include(":distribution")
project(":distribution").projectDir = file("distribution")