A tool that helps homeowners track mortgage deadlines, calculate modified payments, and get step-by-step guidance on avoiding foreclosure.
Millions of homeowners face foreclosure each year, often due to temporary financial hardships. Many don't understand their options or miss critical deadlines that could save their homes. This tool provides:
- Payment Tracking - Monitor mortgage status, missed payments, and arrears
- Risk Assessment - Calculate foreclosure risk based on payment history and debt-to-income ratio
- Modified Payment Scenarios - Model different loan modification options (rate reduction, term extension, forbearance)
- Deadline Alerts - State-specific foreclosure timeline warnings
- Step-by-Step Guidance - Actionable steps to avoid foreclosure with resources
This project was built using AI coding assistants as part of the AI Dev Tools Zoomcamp 2025.
- Claude Code - Primary coding assistant for architecture, implementation, and testing
- MCP Integration - Used for documentation lookup and code generation
- Requirements gathering and specification with AI assistance
- API contract (OpenAPI) designed with AI
- Backend implementation with AI pair programming
- Frontend development with AI assistance
- Test generation and debugging with AI support
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ Frontend │────▶│ Backend │────▶│ Database │
│ (React) │ │ (FastAPI) │ │ (SQLite/Postgres)│
│ │◀────│ │◀────│ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
└───────────────────────┴───────────────────────┘
Docker Compose
- Frontend: React 18 + Vite + TypeScript
- Backend: Python 3.11 + FastAPI
- Database: SQLite (development) / PostgreSQL (production)
- Containerization: Docker + Docker Compose
- CI/CD: GitHub Actions
- Deployment: Render.com
- Docker and Docker Compose
- Node.js 18+ (for local frontend development)
- Python 3.11+ (for local backend development)
# Clone the repository
git clone https://github.com/HighviewOne/mortgage-guardian.git
cd mortgage-guardian
# Start all services
docker-compose up --build
# Access the application
# Frontend: http://localhost:3000
# Backend API: http://localhost:8000
# API Docs: http://localhost:8000/docscd backend
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reloadcd frontend
npm install
npm run devcd backend
pytest --cov=app tests/cd frontend
npm testdocker-compose -f docker-compose.test.yml up --abort-on-container-exitThe OpenAPI specification is available at:
- Interactive Docs: http://localhost:8000/docs (Swagger UI)
- OpenAPI JSON: http://localhost:8000/openapi.json
- Specification File: docs/openapi.yaml
The application is deployed and live:
- Frontend: https://mortgage-guardian-mocha.vercel.app
- Backend API: https://mortgage-guardian-o2o3.onrender.com
- API Documentation: https://mortgage-guardian-o2o3.onrender.com/docs
- Fork this repository
- Deploy backend to Render.com (Web Service, Python, free tier)
- Deploy frontend to Vercel (connect GitHub, add
VITE_API_URLenv var) - Update CORS in
backend/app/main.pywith your frontend domain
mortgage-guardian/
├── frontend/ # React frontend application
│ ├── src/
│ │ ├── components/ # React components
│ │ ├── services/ # API client (centralized)
│ │ ├── hooks/ # Custom React hooks
│ │ └── types/ # TypeScript types
│ ├── public/
│ └── package.json
├── backend/ # FastAPI backend application
│ ├── app/
│ │ ├── main.py # FastAPI application
│ │ ├── models/ # Database models
│ │ ├── schemas/ # Pydantic schemas
│ │ ├── routers/ # API routes
│ │ ├── services/ # Business logic
│ │ └── database.py # Database configuration
│ ├── tests/
│ └── requirements.txt
├── docs/
│ └── openapi.yaml # API specification
├── .github/
│ └── workflows/ # CI/CD pipelines
├── docker-compose.yml
├── Dockerfile.frontend
├── Dockerfile.backend
└── README.md
MIT License