Add development setup guide and shared VS Code config
Clone-to-first-change onboarding, plus .vscode launch/tasks/extensions so F5 debugs the backend and a task runs both dev servers. Fix the README manual path to run the backend on 5001 (the frontend proxies there; the default 5000 loaded nothing).
This commit is contained in:
6
.gitignore
vendored
6
.gitignore
vendored
@@ -28,7 +28,11 @@ env/
|
||||
|
||||
# IDE
|
||||
.idea/
|
||||
.vscode/
|
||||
.vscode/*
|
||||
# Share the team's launch/tasks/extensions; keep personal settings out.
|
||||
!.vscode/launch.json
|
||||
!.vscode/tasks.json
|
||||
!.vscode/extensions.json
|
||||
*.swp
|
||||
*.swo
|
||||
*~
|
||||
|
||||
9
.vscode/extensions.json
vendored
Normal file
9
.vscode/extensions.json
vendored
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"recommendations": [
|
||||
"ms-python.python",
|
||||
"ms-python.vscode-pylance",
|
||||
"Vue.volar",
|
||||
"dbaeumer.vscode-eslint",
|
||||
"ms-azuretools.vscode-docker"
|
||||
]
|
||||
}
|
||||
30
.vscode/launch.json
vendored
Normal file
30
.vscode/launch.json
vendored
Normal file
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Flask API (:5001)",
|
||||
"type": "debugpy",
|
||||
"request": "launch",
|
||||
"module": "flask",
|
||||
"cwd": "${workspaceFolder}",
|
||||
"env": {
|
||||
"FLASK_APP": "shopdb",
|
||||
"FLASK_ENV": "development",
|
||||
"FLASK_DEBUG": "1"
|
||||
},
|
||||
"args": ["run", "--port", "5001", "--no-reload"],
|
||||
"jinja": true,
|
||||
"justMyCode": false,
|
||||
"console": "integratedTerminal"
|
||||
},
|
||||
{
|
||||
"name": "Pytest (current file)",
|
||||
"type": "debugpy",
|
||||
"request": "launch",
|
||||
"module": "pytest",
|
||||
"cwd": "${workspaceFolder}",
|
||||
"args": ["${file}", "-v"],
|
||||
"console": "integratedTerminal"
|
||||
}
|
||||
]
|
||||
}
|
||||
43
.vscode/tasks.json
vendored
Normal file
43
.vscode/tasks.json
vendored
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"version": "2.0.0",
|
||||
"tasks": [
|
||||
{
|
||||
"label": "Backend: flask run (:5001)",
|
||||
"type": "shell",
|
||||
"command": "${workspaceFolder}/venv/bin/flask run --port 5001",
|
||||
"options": {
|
||||
"cwd": "${workspaceFolder}",
|
||||
"env": { "FLASK_APP": "shopdb" }
|
||||
},
|
||||
"windows": {
|
||||
"command": "${workspaceFolder}\\venv\\Scripts\\flask.exe run --port 5001"
|
||||
},
|
||||
"isBackground": true,
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Frontend: npm run dev (:5173)",
|
||||
"type": "shell",
|
||||
"command": "npm run dev",
|
||||
"options": { "cwd": "${workspaceFolder}/frontend" },
|
||||
"isBackground": true,
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Dev site (backend + frontend)",
|
||||
"dependsOn": [
|
||||
"Backend: flask run (:5001)",
|
||||
"Frontend: npm run dev (:5173)"
|
||||
],
|
||||
"dependsOrder": "parallel",
|
||||
"problemMatcher": []
|
||||
},
|
||||
{
|
||||
"label": "Check: naming + tests + build",
|
||||
"type": "shell",
|
||||
"command": "bash scripts/check-naming-and-style.sh && venv/bin/python -m pytest tests/ -q && cd frontend && npx vitest run && npm run build",
|
||||
"options": { "cwd": "${workspaceFolder}" },
|
||||
"problemMatcher": []
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -148,11 +148,13 @@ pip install -r requirements.txt
|
||||
cp .env.example .env
|
||||
# Edit .env with your database credentials and secrets.
|
||||
|
||||
export FLASK_APP=shopdb
|
||||
flask db upgrade
|
||||
flask plugin upgrade-all # per-plugin schema (ADR-008)
|
||||
flask seed permissions
|
||||
flask seed settings
|
||||
flask seed reference-data
|
||||
flask run
|
||||
flask run --port 5001 # MUST be 5001 - the frontend dev server proxies here
|
||||
|
||||
# Frontend (separate terminal)
|
||||
cd frontend
|
||||
@@ -162,7 +164,10 @@ npm run build # production build into frontend/dist (served by Flask)
|
||||
```
|
||||
|
||||
Complete first-run setup at `/setup`, or run `flask seed admin` for a headless
|
||||
admin account.
|
||||
admin account. The repo ships VS Code config in `.vscode/` (F5 debugs the
|
||||
backend; a "Dev site" task runs both servers). A fuller day-one walkthrough,
|
||||
including VS Code and troubleshooting, is the DEVELOPMENT-SETUP page in the
|
||||
project wiki.
|
||||
|
||||
To import a site's legacy data, use the HTTP import surface: an admin API
|
||||
token plus the IMPORT-API page in the project wiki drive the whole migration
|
||||
|
||||
Reference in New Issue
Block a user