diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
index fde7ec0f2bae5847428bacb3360017f6160fdf1a..59d39594625fbddc7af51d4cd8211f09be26c21e 100644
--- a/.devcontainer/devcontainer.json
+++ b/.devcontainer/devcontainer.json
@@ -3,9 +3,20 @@
 	"dockerComposeFile": "docker-compose.yml",
 	"service": "app",
 	"workspaceFolder": "/workspace",
-	"features": {
-		"ghcr.io/devcontainers-contrib/features/pnpm:2": {}
-	},
 	"forwardPorts": [3000],
-	"postCreateCommand": "sudo chmod 755 .devcontainer/init.sh && .devcontainer/init.sh"
+	"postCreateCommand": "sudo chmod 755 .devcontainer/init.sh && .devcontainer/init.sh",
+	"customizations": {
+		"vscode": {
+			"extensions": [
+				"editorconfig.editorconfig",
+				"eg2.vscode-npm-script",
+				"dbaeumer.vscode-eslint",
+				"Vue.volar",
+				"Vue.vscode-typescript-vue-plugin",
+				"Orta.vscode-jest",
+				"dbaeumer.vscode-eslint",
+				"mrmlnc.vscode-json5"
+			]
+		}
+	}
 }
diff --git a/.dockerignore b/.dockerignore
index 8f984831ef86c7d422e53886931c7626f403a412..151ede038eb38120bba59957b9c3eac41343c493 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -25,6 +25,8 @@ fluent-emojis/
 !.yarn/sdks
 !.yarn/versions
 
+.pnpm-store
+
 .idea/
 packages/*/.vscode/
 packages/backend/test/docker-compose.yml
diff --git a/.gitignore b/.gitignore
index 62b818c62914a90b6a09b707c74e402e38afd557..c413cd4da9c924b65d7794a0b2f7641b75f39715 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,6 +20,9 @@ packages/frontend/.yarn/cache
 packages/backend/.yarn/cache
 packages/sw/.yarn/cache
 
+# pnpm
+.pnpm-store
+
 # Cypress
 cypress/screenshots
 cypress/videos
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
index 42264548eaa780527f0880d6d23d2c8504aec599..6b0c1540fbd272465c2089a8264b0b3be04aa2e1 100644
--- a/.vscode/extensions.json
+++ b/.vscode/extensions.json
@@ -4,6 +4,9 @@
 		"eg2.vscode-npm-script",
 		"dbaeumer.vscode-eslint",
 		"Vue.volar",
-		"Vue.vscode-typescript-vue-plugin"
+		"Vue.vscode-typescript-vue-plugin",
+		"Orta.vscode-jest",
+		"dbaeumer.vscode-eslint",
+		"mrmlnc.vscode-json5"
 	]
 }