diff --git a/.github/workflows/code_style.yml b/.github/workflows/code_style.yml
new file mode 100644
index 00000000..2c384dc8
--- /dev/null
+++ b/.github/workflows/code_style.yml
@@ -0,0 +1,27 @@
+name: Code Layout
+
+on: push
+
+jobs:
+ code_style_python:
+ name: Python code convention check
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+
+ - uses: psf/black@stable
+ with:
+ options: "--check --verbose --diff"
+ src: "./server"
+
+ code_style_js:
+ name: JavaScript code convention check
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: actions/setup-node@v3
+ - name: Check JS
+ run: |
+ cd web-app
+ yarn install
+ yarn run lint:all
diff --git a/LICENSES/CLA-signed-list.md b/LICENSES/CLA-signed-list.md
index 1fdad7a2..309bfd91 100644
--- a/LICENSES/CLA-signed-list.md
+++ b/LICENSES/CLA-signed-list.md
@@ -12,4 +12,7 @@ C/ My company has custom contribution contract with Lutra Consulting Ltd. or I a
* PeterPetrik, 31st March 2023
* tomasMizera, 31st March 2023
+* MarcelGeo, 19th April 2023
* harminius, 18th Aril 2023
+* varmar05, 12th April 2023
+* lavor, 26th April 2023
diff --git a/README.md b/README.md
index 56ef4dd6..b0d6fc4f 100644
--- a/README.md
+++ b/README.md
@@ -14,7 +14,8 @@
-
+
+[](https://github.com/MerginMaps/mergin/actions/workflows/code_style.yml)
## About
diff --git a/web-app/babel.config.js b/web-app/babel.config.js
new file mode 100644
index 00000000..716b0237
--- /dev/null
+++ b/web-app/babel.config.js
@@ -0,0 +1,3 @@
+module.exports = {
+ presets: ['@vue/cli-plugin-babel/preset']
+}
diff --git a/web-app/package.json b/web-app/package.json
index 22091a1d..2de18a63 100644
--- a/web-app/package.json
+++ b/web-app/package.json
@@ -26,13 +26,13 @@
"build:admin:dev": "yarn workspace @mergin/admin-app build:dev",
"clean:libs": "yarn workspace @mergin/lib clean && yarn workspace @mergin/admin-lib clean",
"clean:libs:noadmin": "yarn workspace @mergin/lib clean",
- "lint": "yarn workspace @mergin/app lint",
"i18n:report": "yarn workspace @mergin/app 18n:report",
"types:libs": "yarn workspaces run build:types",
"types:lib": "yarn workspace @mergin/lib build:types",
"types:admin-lib": "yarn workspace @mergin/admin-lib build:types",
"watch:lib": "yarn workspace @mergin/lib build:lib:watch",
- "watch:admin-lib": "yarn workspace @mergin/admin-lib build:lib:watch"
+ "watch:admin-lib": "yarn workspace @mergin/admin-lib build:lib:watch",
+ "lint:all": "yarn workspaces run lint"
},
"devDependencies": {
"@babel/core": "^7.17.9",
diff --git a/web-app/packages/admin-app/package.json b/web-app/packages/admin-app/package.json
index d4565b8d..0e75b39d 100644
--- a/web-app/packages/admin-app/package.json
+++ b/web-app/packages/admin-app/package.json
@@ -13,7 +13,7 @@
"build:lib:all:prod": "yarn build:lib:prod && yarn build:types",
"build:types": "echo 'Not defined script'",
"clean": "echo 'Nothing to clean.'",
- "lint": "vue-cli-service lint --fix",
+ "lint": "eslint . --config .eslintrc.js --ext .js,.vue,.ts",
"i18n:report": "vue-cli-service i18n:report --src './src/admin/**/*.?(js|vue)' --locales './src/admin/locales/**/*.json'"
},
"dependencies": {
diff --git a/web-app/packages/admin-lib/.eslintrc.js b/web-app/packages/admin-lib/.eslintrc.js
index 53487599..51dfd9e4 100644
--- a/web-app/packages/admin-lib/.eslintrc.js
+++ b/web-app/packages/admin-lib/.eslintrc.js
@@ -1,13 +1,11 @@
module.exports = {
- root: true,
env: {
node: true
},
extends: [
'plugin:vue/essential',
'eslint:recommended',
- '@vue/typescript/recommended',
- '../../.eslintrc.js'
+ '@vue/typescript/recommended'
],
parser: 'vue-eslint-parser',
parserOptions: {
diff --git a/web-app/packages/admin-lib/.eslintrc.lint.js b/web-app/packages/admin-lib/.eslintrc.lint.js
new file mode 100644
index 00000000..defb45a1
--- /dev/null
+++ b/web-app/packages/admin-lib/.eslintrc.lint.js
@@ -0,0 +1,4 @@
+module.exports = {
+ root: true,
+ extends: '.eslintrc.js'
+}
diff --git a/web-app/packages/admin-lib/package.json b/web-app/packages/admin-lib/package.json
index c87bd7da..c7c8175d 100644
--- a/web-app/packages/admin-lib/package.json
+++ b/web-app/packages/admin-lib/package.json
@@ -17,7 +17,7 @@
"clean:lib": "rimraf ./dist",
"clean:types:temp": "rimraf ./**/*.vue.ts",
"clean:types": "rimraf ./types ./tsconfig.tsbuildinfo && yarn clean:types:temp",
- "lint": "vue-cli-service lint"
+ "lint": "eslint . --config .eslintrc.lint.js ../../.eslintrc.js --no-eslintrc --ext .js,.vue,.ts"
},
"dependencies": {
"@mergin/lib": "file:../lib",
diff --git a/web-app/packages/app/package.json b/web-app/packages/app/package.json
index 4adf89c5..c21986b6 100644
--- a/web-app/packages/app/package.json
+++ b/web-app/packages/app/package.json
@@ -13,7 +13,7 @@
"build:lib:all": "yarn build:lib && yarn build:types",
"build:lib:all:prod": "yarn build:lib:prod && yarn build:types",
"clean": "echo 'Nothing to clean.'",
- "lint": "vue-cli-service lint --fix",
+ "lint": "eslint . --config .eslintrc.js --ext .js,.vue,.ts",
"i18n:report": "vue-cli-service i18n:report --src './src/admin/**/*.?(js|vue)' --locales './src/admin/locales/**/*.json'"
},
"dependencies": {
diff --git a/web-app/packages/lib/.eslintrc.js b/web-app/packages/lib/.eslintrc.js
index 53487599..51dfd9e4 100644
--- a/web-app/packages/lib/.eslintrc.js
+++ b/web-app/packages/lib/.eslintrc.js
@@ -1,13 +1,11 @@
module.exports = {
- root: true,
env: {
node: true
},
extends: [
'plugin:vue/essential',
'eslint:recommended',
- '@vue/typescript/recommended',
- '../../.eslintrc.js'
+ '@vue/typescript/recommended'
],
parser: 'vue-eslint-parser',
parserOptions: {
diff --git a/web-app/packages/lib/.eslintrc.lint.js b/web-app/packages/lib/.eslintrc.lint.js
new file mode 100644
index 00000000..defb45a1
--- /dev/null
+++ b/web-app/packages/lib/.eslintrc.lint.js
@@ -0,0 +1,4 @@
+module.exports = {
+ root: true,
+ extends: '.eslintrc.js'
+}
diff --git a/web-app/packages/lib/package.json b/web-app/packages/lib/package.json
index b56bffb1..64e45ac6 100644
--- a/web-app/packages/lib/package.json
+++ b/web-app/packages/lib/package.json
@@ -18,7 +18,7 @@
"clean:lib": "rimraf ./dist",
"clean:types:temp": "rimraf ./**/*.vue.ts",
"clean:types": "rimraf ./types ./tsconfig.tsbuildinfo && yarn clean:types:temp",
- "lint": "vue-cli-service lint"
+ "lint": "eslint . -c ./.eslintrc.lint.js ../../.eslintrc.js --no-eslintrc --ext .js,.vue,.ts"
},
"dependencies": {
"axios": "^0.26.1",