@primexop/pbk
Version:
Primexop Backend Kit - A powerful TypeScript utility for managing backend projects with features like B2F Portal integration, cross-project validation, and Next.js support
79 lines • 3.48 kB
JSON
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "PBK Configuration Schema",
"description": "Schema for pbk.config.json configuration file",
"type": "object",
"required": ["projects", "b2fPortal", "checkCrossProjectImports"],
"properties": {
"projects": {
"type": "array",
"description": "Array of projects to manage. Each project can have multiple sections like masterPanel, adminPanel, staffPanel, and webApp.",
"items": {
"type": "object",
"required": ["projectName", "projectBaseDirPath", "sections"],
"properties": {
"projectName": {
"type": "string",
"description": "Name of the project (e.g., 'demo_project')"
},
"projectBaseDirPath": {
"type": "string",
"description": "Base directory path for the project relative to the config file"
},
"sharedBackendPath": {
"type": "string",
"description": "Path to shared backend code, relative to the project root (e.g., '../../shared_one/backend')"
},
"sections": {
"type": "array",
"description": "Array of project sections. Each section represents a different part of your application (e.g., masterPanel, adminPanel, staffPanel, webApp)",
"items": {
"type": "object",
"required": ["sectionName", "repository", "localPath", "isZodCreator"],
"properties": {
"sectionName": {
"type": "string",
"description": "Name of the section (e.g., 'masterPanel', 'adminPanel', 'staffPanel', 'webApp')"
},
"repository": {
"type": "object",
"required": ["name", "path"],
"properties": {
"name": {
"type": "string",
"description": "Repository name (e.g., 'demo_project_master_panel')"
},
"path": {
"type": "string",
"description": "Repository path relative to the project root (e.g., '../../demo_project/master_panel')"
}
}
},
"localPath": {
"type": "string",
"description": "Local path where the section code is located relative to the project root (e.g., 'masterPanel')"
},
"isZodCreator": {
"type": "boolean",
"description": "Whether this section uses Zod for validation. Set to true if the section uses Zod schemas."
},
"needNextJsPatch": {
"type": "boolean",
"description": "Whether this section needs Next.js patch. Only required for Next.js projects."
}
}
}
}
}
}
},
"b2fPortal": {
"type": "boolean",
"description": "Whether this is a B2F (Business-to-Frontend) portal project. Set to true if your project is a B2F portal."
},
"checkCrossProjectImports": {
"type": "boolean",
"description": "Whether to check for cross-project imports. Set to true to enable validation of imports between different project sections."
}
}
}