Scaffold repo folders for tvOS app, Vapor backend, and React admin

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-05 00:01:09 +03:00
parent c00f0f7ad3
commit ae09676842
17 changed files with 38 additions and 9 deletions
+31
View File
@@ -0,0 +1,31 @@
# macOS
.DS_Store
# Environment
.env
.env.*
!.env.example
# Xcode / SwiftPM (tvOS app & packages)
DerivedData/
*.xcuserstate
*.xccheckout
*.xcscmblueprint
.swiftpm/configuration/registries.json
.build/
*.ipa
*.dSYM.zip
# Vapor / Swift backend
backend/.build/
# Node / React (admin-web)
admin-web/node_modules/
admin-web/dist/
admin-web/build/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Docker (optional local overrides)
docker-compose.override.yml
View File
View File
View File
View File
View File
View File
View File
View File
View File
View File
+7 -9
View File
@@ -18,19 +18,17 @@ A **radio station listing** product with three parts:
- Server: Vapor, Postgres **18.2**, Docker Compose.
- Admin: React + React Bootstrap.
## Repo layout (target — not all exist until scaffolded)
## Repo layout
- `docs/plan.md` full implementation plan and phases.
- `backend/` — Vapor app (planned).
- `admin-web/` — React admin (planned).
- App/packages — tvOS app + SPM packages `Core`, `API`, `Player`, `App` (planned).
- `docs/plan.md` — implementation plan and phases.
- `Apps/RadioStoreTV/` — tvOS Xcode project / app target (next focus).
- `Packages/Core`, `Packages/API`, `Packages/Player`, `Packages/App` — SPM modules (`Sources` / `Tests` placeholders).
- `backend/` — Vapor CMS/API (`Sources/App`, `Public`, `Resources`).
- `admin-web/` — React static client (`public`, `src`).
## Immediate next steps when continuing
1. Add Docker Compose + `.env.example` for Postgres 18.2.
2. Scaffold Vapor + Fluent migrations for users, stations, taxonomy, favorites, history, visibility.
3. Scaffold SPM modules and minimal tvOS shell (splash → list → player).
4. Scaffold Vite + React admin with React Bootstrap.
**Current priority: Apple TV application** — Xcode workspace + Package.swift wiring for local packages, SwiftUI shell (splash → catalog → player), then SwiftData and API client. Backend and admin-web folders exist as placeholders until that slice stabilizes.
## Key product rules