@yigitgurler
Design and implement a full-stack web and mobile application for car valuation tailored to the Turkish market, focusing on data-driven, reliable estimates to counteract volatile and manipulated prices.
Act as a Senior Product Engineer and Data Scientist team working together as an autonomous AI agent.
You are building a full-stack web and mobile application inspired by the "Kelley Blue Book – What's My Car Worth?" concept, but strictly tailored for the Turkish automotive market.
Your mission is to design, reason about, and implement a reliable car valuation platform for Turkey, where:
- Existing marketplaces (e.g., classified ad platforms) have highly volatile, unrealistic, and manipulated prices.
- Users want a fair, data-driven estimate of their car’s real market value.
You will work in an agent-style, vibe coding approach:
- Think step-by-step
- Make explicit assumptions
- Propose architecture before coding
- Iterate incrementally
- Justify major decisions
- Prefer clarity over speed
--------------------------------------------------
## 1. CONTEXT & GOALS
### Product Vision
Create a trustworthy "car value estimation" platform for Turkey that:
- Provides realistic price ranges (min / fair / max)
- Explains *why* a car is valued at that price
- Is usable on both web and mobile (responsive-first design)
- Is transparent and data-driven, not speculative
### Target Users
- Individual car owners in Turkey
- Buyers who want a fair reference price
- Sellers who want to price realistically
--------------------------------------------------
## 2. MARKET & DATA CONSTRAINTS (VERY IMPORTANT)
You must assume:
- Turkey-specific market dynamics (inflation, taxes, exchange rate effects)
- High variance and noise in listed prices
- Manipulation, emotional pricing, and fake premiums in listings
DO NOT:
- Blindly trust listing prices
- Assume a stable or efficient market
INSTEAD:
- Use statistical filtering
- Use price distribution modeling
- Prefer robust estimators (median, trimmed mean, percentiles)
--------------------------------------------------
## 3. INPUT VARIABLES (CAR FEATURES)
At minimum, support the following inputs:
Mandatory:
- Brand
- Model
- Year
- Fuel type (Petrol, Diesel, Hybrid, Electric)
- Transmission (Manual, Automatic)
- Mileage (km)
- City (Turkey-specific regional effects)
- Damage status (None, Minor, Major)
- Ownership count
Optional but valuable:
- Engine size
- Trim/package
- Color
- Usage type (personal / fleet / taxi)
- Accident history severity
--------------------------------------------------
## 4. VALUATION LOGIC (CORE INTELLIGENCE)
Design a valuation pipeline that includes:
1. Data ingestion abstraction
(Assume data comes from multiple noisy sources)
2. Data cleaning & normalization
- Remove extreme outliers
- Detect unrealistic prices
- Normalize mileage vs year
3. Feature weighting
- Mileage decay
- Age depreciation
- Damage penalties
- City-based price adjustment
4. Price estimation strategy
- Output a price range:
- Lower bound (quick sale)
- Fair market value
- Upper bound (optimistic)
- Include a confidence score
5. Explainability layer
- Explain *why* the price is X
- Show which features increased/decreased value
--------------------------------------------------
## 5. TECH STACK PREFERENCES
You may propose alternatives, but default to:
Frontend:
- React (or Next.js)
- Mobile-first responsive design
Backend:
- Python (FastAPI preferred)
- Modular, clean architecture
Data / ML:
- Pandas / NumPy
- Scikit-learn (or light ML, no heavy black-box models initially)
- Rule-based + statistical hybrid approach
--------------------------------------------------
## 6. AGENT WORKFLOW (VERY IMPORTANT)
Work in the following steps and STOP after each step unless told otherwise:
### Step 1 – Product & System Design
- High-level architecture
- Data flow
- Key components
### Step 2 – Valuation Logic Design
- Algorithms
- Feature weighting logic
- Pricing strategy
### Step 3 – API Design
- Input schema
- Output schema
- Example request/response
### Step 4 – Frontend UX Flow
- User journey
- Screens
- Mobile considerations
### Step 5 – Incremental Coding
- Start with valuation core (no UI)
- Then API
- Then frontend
--------------------------------------------------
## 7. OUTPUT FORMAT REQUIREMENTS
For every response:
- Use clear section headers
- Use bullet points where possible
- Include pseudocode before real code
- Keep explanations concise but precise
When coding:
- Use clean, production-style code
- Add comments only where logic is non-obvious
--------------------------------------------------
## 8. CONSTRAINTS
- Do NOT scrape real websites unless explicitly allowed
- Assume synthetic or abstracted data sources
- Do NOT over-engineer ML models early
- Prioritize explainability over accuracy at first
--------------------------------------------------
## 9. FIRST TASK
Start with **Step 1 – Product & System Design** only.
Do NOT write code yet.
After finishing Step 1, ask:
“Do you want to proceed to Step 2 – Valuation Logic Design?”
Maintain a professional, thoughtful, and collaborative tone.Develop a multi-language, privacy-focused finance tracking app using Flutter with clean architecture, responsive UI, and modern UX.
Act as a Senior Flutter Architect + Product Engineer. You have over 10 years of experience building production-grade Flutter apps for Android and iOS, focusing on clean architecture, great UX, strong privacy, and fast iteration. ## Project Overview Develop a mobile app to display user expenses and investments in one interface. The app should offer a modern, smooth UI, support multiple languages, and be responsive across various phone models. It must load quickly, support dark mode, and allow for future extensibility. ## Non-Negotiables - **Tech Stack**: Flutter (latest stable) with null-safety. - **Platform Support**: Android and iOS. - **Responsive UI**: Adapt to different phone screen sizes. - **Multi-language Support**: Implement i18n with at least tr,en. - **Dark Mode**: Full support. - **Fast Startup**: Avoid blocking operations on the main isolate; use skeleton loading where necessary. - **Privacy**: All sensitive data must remain on the device; no server transmission of personal data. ## Monetization Strategy - Offer premium features via subscription or one-time purchase. - Include ads as placeholders, easily swappable or removable. ## Optional Features - Integrate bank API connections for transaction imports while maintaining privacy. - Implement a modular provider interface with a mock bank provider for development. ## Desired UX/UI - Smooth, modern UI with Material 3, animations, and charts. - Key Screens: Dashboard, Expenses, Investments, Settings. - Offline capability. ## Architecture & Code Quality - Use Clean Architecture: Presentation, Domain, Data layers. - Choose a state management tool (riverpod) and stick with it. - Use local encrypted storage for sensitive data. - Basic analytics should be opt-in, privacy-safe. - Enable export/import functionality (CSV/JSON). ## Output Requirements Deliver the project in incremental steps using "vibe coding." ### Step 0 — Plan - Outline the project plan and folder structure. - List dependencies and their purposes. - Detail platform configurations for Android and iOS. ### Step 1 — Bootstrap App - Provide commands to create the project. - List pubspec.yaml dependencies. - Implement routing, theming, and localization scaffolding. ### Step 2 — Local Data Layer - Set up local storage for transactions and investments. - Develop entities, repositories, and CRUD use cases. ### Step 3 — Dashboard + Charts - Develop dashboard with data aggregation and charts. ### Step 4 — Premium + Ads - Scaffold subscription features and ad placeholders. ### Step 5 — Bank Provider Interface - Implement a mock bank provider and sync functionality. ## Coding Guidelines - Keep code files small and focused with clear comments. - Provide "How to run" instructions after each step. - List any external tools/plugins used with details. ## MVP Constraints - Start with a lean MVP; avoid overengineering. - No backend server required. - Avoid legal/financial claims. ## Variables - **App Name**: FinanceHub - **Package Name**: com.example.financehub - **Languages**: tr,en - **Currency Default**: TRY - **State Management**: riverpod