Add aider prompts for runcats project
This commit is contained in:
52
.local/aider/projects/runcats/read/PROMPT.md
Normal file
52
.local/aider/projects/runcats/read/PROMPT.md
Normal file
@@ -0,0 +1,52 @@
|
||||
## RunCats Application Overview
|
||||
|
||||
This document summarizes the core structure and components of the RunCats application for context in future prompts.
|
||||
|
||||
**Core Concept:** A "Tinder for fitness buddies" application connecting users based on location, fitness interests, and preferences.
|
||||
|
||||
**Project Structure:**
|
||||
|
||||
* **`/` (Root):** Contains project-level configuration and this summary file.
|
||||
* **`/server`:** Laravel backend API.
|
||||
* `app/Http/Controllers/Api/`: API endpoint logic (e.g., `AuthController`, `UserController`).
|
||||
* `app/Http/Requests/`: Input validation rules (e.g., `LoginRequest`, `UpdateProfileRequest`).
|
||||
* `app/Http/Resources/`: API response formatting (e.g., `UserResource`, `ProfileResource`).
|
||||
* `app/Models/`: Eloquent models (e.g., `User`, `Profile`).
|
||||
* `routes/api.php`: API route definitions.
|
||||
* Uses Laravel Sail, PostgreSQL, Redis, Ably, AuthKit, Stripe.
|
||||
* **`/client`:** Vue.js frontend (SPA) and Capacitor mobile app source.
|
||||
* `src/views/`: Page-level components (e.g., `LoginPage.vue`, `ProfilePage.vue`).
|
||||
* `src/components/`: Reusable UI components (e.g., `LoginForm.vue`, `ProfileCard.vue`).
|
||||
* `src/stores/`: Pinia state management modules (e.g., `auth.ts`, `user.ts`).
|
||||
* `src/services/`: API interaction logic (e.g., `authService.ts`, `userService.ts`, `api.ts` base client).
|
||||
* `src/router/`: Vue Router configuration (`index.ts`).
|
||||
* `src/types/`: TypeScript type definitions (e.g., `user.ts`).
|
||||
* Uses Vue 3 (Composition API), TypeScript, Pinia, Vue Router, Tailwind CSS, Vite, Capacitor, Vitest, Playwright.
|
||||
|
||||
**Core Features (Initial Focus):**
|
||||
|
||||
1. **Authentication:**
|
||||
* Email/Password Registration & Login (`AuthController`, `LoginPage`, `RegisterPage`, `auth.ts` store).
|
||||
* Strava Sign-in (Planned).
|
||||
* Token-based API authentication (Laravel Sanctum assumed).
|
||||
2. **User Profiles:**
|
||||
* View own profile (`UserController@show`, `ProfilePage`, `ProfileCard`, `user.ts` store).
|
||||
* Edit own profile (`UserController@update`, `EditProfilePage`, `ProfileForm`, `user.ts` store).
|
||||
* Fields: Name, Email, Bio, Fitness Goals, Fitness Level, Profile Picture (Planned).
|
||||
3. **Finding Friends (Planned):**
|
||||
* Matching based on criteria (distance, activity, level, etc.).
|
||||
* Viewing potential matches.
|
||||
* Friend requests.
|
||||
4. **Real-time Features (Planned):**
|
||||
* Notifications (Ably).
|
||||
* Chat.
|
||||
|
||||
**Key Technologies:**
|
||||
|
||||
* **Backend:** PHP (Laravel), PostgreSQL, Redis
|
||||
* **Frontend:** TypeScript (Vue.js), Pinia, Vue Router, Tailwind CSS
|
||||
* **Mobile:** Capacitor
|
||||
* **Authentication:** Laravel Sanctum (assumed for API tokens)
|
||||
* **Real-time:** Ably
|
||||
* **Payments:** Stripe (Planned)
|
||||
* **Testing:** Vitest (Unit), Playwright (E2E)
|
||||
Reference in New Issue
Block a user