fix: update deploy workflows and documentation for backend directory (#323)

Updates deployment workflows to run from the 'backend/' directory so flyctl can find the Dockerfile. Updates README to reflect new project structure.

authored by zzstoatzz.io and committed by GitHub 4a13dc4c 88c72080

Changed files
+18 -13
.github
+2 -1
.github/workflows/deploy-prod.yml
··· 25 if [ "${{ steps.changes.outputs.migrations }}" == "true" ]; then 26 echo "๐Ÿ”„ migrations detected - will run via release_command before deployment" 27 fi 28 - flyctl deploy --config backend/fly.toml --remote-only -a relay-api 29 env: 30 FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN_PROD }}
··· 25 if [ "${{ steps.changes.outputs.migrations }}" == "true" ]; then 26 echo "๐Ÿ”„ migrations detected - will run via release_command before deployment" 27 fi 28 + cd backend 29 + flyctl deploy --config fly.toml --remote-only -a relay-api 30 env: 31 FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN_PROD }}
+2 -1
.github/workflows/deploy-staging.yml
··· 36 if [ "${{ steps.changes.outputs.migrations }}" == "true" ]; then 37 echo "๐Ÿ”„ migrations detected - will run via release_command before deployment" 38 fi 39 - flyctl deploy --config backend/fly.staging.toml --remote-only -a relay-api-staging 40 env: 41 FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN_STAGING }}
··· 36 if [ "${{ steps.changes.outputs.migrations }}" == "true" ]; then 37 echo "๐Ÿ”„ migrations detected - will run via release_command before deployment" 38 fi 39 + cd backend 40 + flyctl deploy --config fly.staging.toml --remote-only -a relay-api-staging 41 env: 42 FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN_STAGING }}
+14 -11
README.md
··· 35 36 ```bash 37 # install dependencies 38 - uv sync 39 just frontend install 40 41 # run backend (hot reloads at http://localhost:8001) ··· 77 78 ``` 79 plyr.fm/ 80 - โ”œโ”€โ”€ src/backend/ 81 - โ”‚ โ”œโ”€โ”€ api/ # public endpoints 82 - โ”‚ โ”œโ”€โ”€ _internal/ # internal services (auth, atproto, uploads) 83 - โ”‚ โ”œโ”€โ”€ models/ # database schemas 84 - โ”‚ โ””โ”€โ”€ storage/ # r2 and filesystem storage 85 - โ”œโ”€โ”€ frontend/ 86 - โ”‚ โ”œโ”€โ”€ src/lib/ # components, state managers, types 87 โ”‚ โ””โ”€โ”€ src/routes/ # pages 88 - โ”œโ”€โ”€ tests/ # pytest suite 89 - โ”œโ”€โ”€ docs/ # organized guides 90 - โ””โ”€โ”€ Justfile # task runner 91 ``` 92 93 </details>
··· 35 36 ```bash 37 # install dependencies 38 + cd backend && uv sync 39 just frontend install 40 41 # run backend (hot reloads at http://localhost:8001) ··· 77 78 ``` 79 plyr.fm/ 80 + โ”œโ”€โ”€ backend/ # FastAPI app & Python tooling 81 + โ”‚ โ”œโ”€โ”€ src/backend/ # application code 82 + โ”‚ โ”‚ โ”œโ”€โ”€ api/ # public endpoints 83 + โ”‚ โ”‚ โ”œโ”€โ”€ _internal/ # internal services 84 + โ”‚ โ”‚ โ”œโ”€โ”€ models/ # database schemas 85 + โ”‚ โ”‚ โ””โ”€โ”€ storage/ # storage adapters 86 + โ”‚ โ”œโ”€โ”€ tests/ # pytest suite 87 + โ”‚ โ””โ”€โ”€ alembic/ # database migrations 88 + โ”œโ”€โ”€ frontend/ # SvelteKit app 89 + โ”‚ โ”œโ”€โ”€ src/lib/ # components & state 90 โ”‚ โ””โ”€โ”€ src/routes/ # pages 91 + โ”œโ”€โ”€ transcoder/ # Rust audio service 92 + โ”œโ”€โ”€ docs/ # documentation 93 + โ””โ”€โ”€ justfile # task runner 94 ``` 95 96 </details>