diff --git a/.idea/jsonSchemas.xml b/.idea/jsonSchemas.xml
index b695485bae..806c8a166e 100644
--- a/.idea/jsonSchemas.xml
+++ b/.idea/jsonSchemas.xml
@@ -28,6 +28,28 @@
-
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.vscode/settings.json b/.vscode/settings.json
index ac9da50bd1..38e9f4a221 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,5 +1,11 @@
{
"json.schemas": [
+ {
+ "fileMatch": [
+ "*/Resources/autoload.json"
+ ],
+ "url": "./schema/autoload.json"
+ },
{
"fileMatch": [
"*/Resources/routes.json"
diff --git a/schema/autoload.json b/schema/autoload.json
new file mode 100644
index 0000000000..f2529f0584
--- /dev/null
+++ b/schema/autoload.json
@@ -0,0 +1,37 @@
+{
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$id": "https://www.espocrm.com/schema/autoload.json",
+ "title": "autoload",
+ "description": "Composer definitions.",
+ "type": "object",
+ "properties": {
+ "psr-4": {
+ "description": "A PSR-4 mapping. Example: {\"SomeLib\\\\\": \"custom/Espo/Modules/MyModule/vendor/some-lib/src\"}",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "psr-0": {
+ "description": "A PSR-0 mapping.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ },
+ "autoloadFileList": {
+ "description": "Autoload PHP files.",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "classmap": {
+ "description": "A class-name => file-path mapping.",
+ "type": "object",
+ "additionalProperties": {
+ "type": "string"
+ }
+ }
+ }
+}