How web-fda-neu/ai66b-group-5-d3-house-price-prediction-web-app works
HomeVal is a Vietnam housing price-estimation application with account history, market insights, model administration, and Premium sandbox billing. The main user journey is property entry in the frontend, API submission, model-backed estimation, and a result that can be saved for later comparison or export. The backend also provides authentication and admin workflows. The graph includes documented but unsampled capabilities, while omitting uncertain internal links where excerpts do not establish the caller or data flow.
Main entry points: api.js Frontend API · homeval.py Estimation routes · auth.py Auth routes · predict.js Property form
Components 23
User experience
- Property form
frontend/js/pages/predict.js - Frontend API
frontend/js/api.js - Estimate result
frontend/js/pages/predict-result.js - Saved predictions
frontend/js/pages/predictions.js - Compare and export
frontend/js/pages/compare.js - Market insights
frontend/js/pages/insights.js - Charts
frontend/js/charts.js - Property fields
frontend/js/property.js
Application API
- FastAPI app
backend/main.py
Identity and access
- Browser session
frontend/js/auth.js - Auth routes
backend/routers/auth.py - Access checks
backend/deps.py - Token and passwords
backend/security.py - Login limits
backend/rate_limit.py
Estimation and models
- Estimation routes
backend/routers/homeval.py - Training and inference
backend/ml.py - Application database
backend/database.py - Domain records
backend/models.py
Admin and insights
- Admin screens
frontend/js/pages/admin.js - Dataset management
frontend/js/pages/admin-datasets.js - Model management
frontend/js/pages/admin-models.js - Premium upgrade
frontend/js/components/premium-upgrade.js
Other components
- HomeVal user
Connections 27
- HomeVal user → Property form: enters details
README.md - Property form → Property fields: uses fields
frontend/js/pages/predict.js - Property form → Frontend API: submits estimate
frontend/js/pages/predict.js - Frontend API → FastAPI app: calls API
- FastAPI app → Auth routes: registers routes
backend/main.py - FastAPI app → Estimation routes: registers routes
backend/main.py - Estimation routes → Training and inference: runs inference
backend/routers/homeval.py - Estimation routes → Application database: reads and writes
backend/routers/homeval.py - Estimation routes → Domain records: uses records
backend/routers/homeval.py - Training and inference → HomeVal user: produces estimate
- Estimation routes → Estimate result: returns result
- Estimate result → Saved predictions: saves history
- Saved predictions → Compare and export: selects estimates
README.md - Compare and export → Frontend API: loads predictions
frontend/js/pages/compare.js - Market insights → Frontend API: loads market data
frontend/js/pages/insights.js - Market insights → Charts: renders charts
frontend/js/pages/insights.js - HomeVal user → Browser session: signs in
README.md - Browser session → Auth routes: authenticates
- Auth routes → Access checks: checks identity
backend/routers/auth.py - Auth routes → Token and passwords: hashes and issues tokens
backend/routers/auth.py - Auth routes → Login limits: limits login attempts
backend/routers/auth.py - Admin screens → Dataset management: opens datasets
- Dataset management → Frontend API: manages uploads
frontend/js/pages/admin-datasets.js - Model management → Frontend API: manages models
- Frontend API → Estimation routes: starts training
frontend/js/api.js - Premium upgrade → Frontend API: starts checkout
frontend/js/components/premium-upgrade.js - Estimation routes → Application database: records billing
backend/routers/homeval.py