Erste lauffähige Version

This commit is contained in:
2026-05-21 10:36:16 +02:00
commit 6a103adac4
98 changed files with 4107 additions and 0 deletions
+14
View File
@@ -0,0 +1,14 @@
{
"recommendations": [
"ms-python.python",
"ms-python.vscode-pylance",
"ms-python.debugpy",
"charliermarsh.ruff",
"batisteo.vscode-django",
"ms-azuretools.vscode-docker",
"ms-vscode-remote.remote-containers",
"redhat.vscode-yaml",
"tamasfe.even-better-toml",
"eamodio.gitlens"
]
}
+53
View File
@@ -0,0 +1,53 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Django: attach (debugpy in Container)",
"type": "debugpy",
"request": "attach",
"connect": { "host": "127.0.0.1", "port": 5678 },
"pathMappings": [
{
"localRoot": "${workspaceFolder}/app",
"remoteRoot": "/app"
}
],
"justMyCode": false,
"django": true
},
{
"name": "Django: runserver (lokal, ohne Docker)",
"type": "debugpy",
"request": "launch",
"program": "${workspaceFolder}/app/manage.py",
"args": ["runserver", "127.0.0.1:8000"],
"django": true,
"justMyCode": false,
"env": {
"DJANGO_SETTINGS_MODULE": "config.settings.dev"
}
},
{
"name": "Celery Worker (lokal, ohne Docker)",
"type": "debugpy",
"request": "launch",
"module": "celery",
"args": ["-A", "config", "worker", "--loglevel=debug", "--concurrency=1"],
"cwd": "${workspaceFolder}/app",
"justMyCode": false,
"env": {
"DJANGO_SETTINGS_MODULE": "config.settings.dev"
}
},
{
"name": "Pytest: aktuelle Datei",
"type": "debugpy",
"request": "launch",
"module": "pytest",
"args": ["${file}", "-v"],
"cwd": "${workspaceFolder}/app",
"console": "integratedTerminal",
"justMyCode": false
}
]
}
+38
View File
@@ -0,0 +1,38 @@
{
"python.analysis.extraPaths": ["app"],
"python.analysis.typeCheckingMode": "basic",
"python.testing.pytestEnabled": true,
"python.testing.pytestArgs": ["app"],
"python.testing.cwd": "${workspaceFolder}/app",
"[python]": {
"editor.formatOnSave": true,
"editor.defaultFormatter": "charliermarsh.ruff",
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit",
"source.fixAll": "explicit"
}
},
"ruff.lineLength": 100,
"files.associations": {
"**/templates/**/*.html": "django-html",
"**/requirements*.txt": "pip-requirements"
},
"emmet.includeLanguages": {
"django-html": "html"
},
"files.exclude": {
"**/__pycache__": true,
"**/*.pyc": true,
"**/.pytest_cache": true,
"**/.ruff_cache": true
},
"search.exclude": {
"**/staticfiles": true,
"**/media": true,
"**/backups": true
}
}
+72
View File
@@ -0,0 +1,72 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "compose: up",
"type": "shell",
"command": "docker compose up -d",
"problemMatcher": []
},
{
"label": "compose: down",
"type": "shell",
"command": "docker compose down",
"problemMatcher": []
},
{
"label": "compose: logs web",
"type": "shell",
"command": "docker compose logs -f web",
"problemMatcher": []
},
{
"label": "compose: rebuild web",
"type": "shell",
"command": "docker compose build web && docker compose up -d web",
"problemMatcher": []
},
{
"label": "django: makemigrations",
"type": "shell",
"command": "docker compose exec web python manage.py makemigrations",
"problemMatcher": []
},
{
"label": "django: migrate",
"type": "shell",
"command": "docker compose exec web python manage.py migrate",
"problemMatcher": []
},
{
"label": "django: shell",
"type": "shell",
"command": "docker compose exec web python manage.py shell",
"problemMatcher": []
},
{
"label": "django: createsuperuser",
"type": "shell",
"command": "docker compose exec web python manage.py createsuperuser",
"problemMatcher": []
},
{
"label": "django: start debugpy",
"type": "shell",
"command": "docker compose exec web python -m debugpy --listen 0.0.0.0:5678 manage.py runserver 0.0.0.0:8000 --noreload",
"problemMatcher": []
},
{
"label": "tests: pytest",
"type": "shell",
"command": "docker compose exec web pytest -v",
"group": "test",
"problemMatcher": []
},
{
"label": "lint: ruff",
"type": "shell",
"command": "docker compose exec web ruff check .",
"problemMatcher": []
}
]
}