schema.json 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. {
  2. "$schema": "http://json-schema.org/draft-07/schema",
  3. "$id": "SchematicsAngularWorkspace",
  4. "title": "Angular Workspace Options Schema",
  5. "description": "Creates a new Angular workspace. A workspace provides a structured environment for developing multiple projects, allowing you to manage dependencies, configurations, and build processes for a collection of applications and libraries. This schematic sets up the basic structure of the workspace and installs the necessary Angular dependencies.",
  6. "type": "object",
  7. "additionalProperties": false,
  8. "properties": {
  9. "name": {
  10. "description": "The name for the new workspace. This name will be used for the root directory and will be referenced in various configuration files.",
  11. "type": "string",
  12. "$default": {
  13. "$source": "argv",
  14. "index": 0
  15. }
  16. },
  17. "newProjectRoot": {
  18. "description": "The path where new projects will be created within the workspace, relative to the workspace root. By default, new projects are created in the `projects` directory.",
  19. "type": "string",
  20. "visible": "false"
  21. },
  22. "version": {
  23. "type": "string",
  24. "description": "The version of the Angular CLI to use.",
  25. "visible": false,
  26. "$default": {
  27. "$source": "ng-cli-version"
  28. }
  29. },
  30. "minimal": {
  31. "description": "Create a workspace without any testing frameworks. This is intended for learning purposes and simple experimentation, not for production applications.",
  32. "type": "boolean",
  33. "default": false
  34. },
  35. "strict": {
  36. "description": "Enable stricter type checking and bundle budget settings for projects created within the workspace. This helps improve maintainability and catch bugs early on. For more information, see https://angular.dev/tools/cli/template-typecheck#strict-mode",
  37. "type": "boolean",
  38. "default": true
  39. },
  40. "packageManager": {
  41. "description": "The package manager to use for installing dependencies.",
  42. "type": "string",
  43. "enum": ["npm", "yarn", "pnpm", "cnpm", "bun"]
  44. }
  45. },
  46. "required": ["name", "version"]
  47. }