Inspiration
What it does
How we built it
Challenges we ran into
Accomplishments that we're proud of
What we learned
What's next for Will It Fund?
Inspiration
I broker loans by myself. The deal that funds is the easy part of the week. The expensive part is the file I nurse for days and then lose, because the down payment was short, the debts were too high, or the property was never eligible. Borrowers do the same thing in reverse. They fall in love with a house, then wait on me to say "maybe."
I wanted the answer I already give on the phone, on one page, before anyone writes an offer. A stamp: funded, fixable, or not funded. If it is fixable, the exact change. Not a score, and not a rate lock.
What it does
Will It Fund? is a one-page worksheet for a borrower or for me on a call.
You enter the price, the down payment and where it came from, the credit score, gross monthly income, monthly debts, the property type, how the property will be used, and reserves in months. An investment also needs the expected rent.
The page stamps the deal.
- Funded means the numbers clear a worksheet.
- Fixable means they do not, and the card names the exact change: dollars of debt, dollars of down payment, a credit score, months of reserves, a rent figure, or the down-payment source.
- Not funded means this worksheet will not consider the deal. A manufactured home bought as a rental is the example. There is no dollar tweak for that.
Two worksheets run. Conventional uses income and a 45% back-end DTI line. DSCR runs on investments and ignores personal income. If the rent covers the estimated housing cost, DSCR can fund while conventional is still fixable. The headline follows the better stamp, and the other card still tells the truth.
The payment is estimated, not quoted: 7.00% on conventional, 7.50% on DSCR, 30 years, plus 1.5% of the price per year for taxes and insurance. Those assumptions are printed on the result. The lines are documented in the README and live in app/guidelines.py. This is not a loan approval, a credit decision, or an offer to lend.
Four example deals are on the page so the three stamps can be shown without hunting for a scenario.
How we built it
I followed the Build With AI: Basics skill pack and did not start in the code. The skills interviewed me. I answered as cryptobandit. The plan is in devpost/ and it was approved before the first slice:
learner-profile.md— who this is for.scope.md— the stamp, the phone-call user, and what was cut.prd.md— the one screen, the fields, and how you know a fix worked.spec.md— a small Python app, and the stand-in rate.checklist.md— three slices: conventional, then DSCR, then the example deals.
Then I built it in that order. The rules sit in app/guidelines.py. app/engine.py turns a deal into a stamp. FastAPI serves one page. The browser sends the numbers and draws the reply. It does not decide the verdict. pytest applies a fix and expects the stamp to flip.
No database, no accounts, no API keys. Closing the page forgets the deal.
Challenges we ran into
The hard product question was the payment. I will not fill out a full loan estimate on a two-minute call, and a silent made-up payment would make the stamp a lie. The decision was a documented stand-in, said out loud on the result.
The second challenge was keeping two worksheets honest. Conventional cares about income. DSCR does not. A thin-income investor has to be able to fund on rent without the page hiding the conventional miss.
The third was the word "exact." A fixable card that says "lower the debts" is a shrug. The card names a dollar figure, and a test types that figure back in.
I also had to keep the proof small. Credit pulls, logins, live rate sheets, and FHA were the temptations. They do not prove the stamp.
Accomplishments that we're proud of
I can open one page and show four deals.
- A clean primary purchase stamps funded on conventional.
- The same house with debts too high stamps fixable, and names the monthly debt level that clears 45% DTI.
- An investor with thin income stamps funded on DSCR, because the rent covers the payment.
- A manufactured rental stamps not funded on both worksheets.
The planning documents are in the repository, written before the code. The README and the program use the same thresholds. Thirty-one tests lock the stamps, the field errors, the example deals, and the headline numbers in the README.
What we learned
Planning first changed the build. The interview forced occupancy and rent onto the form, because DSCR is a rent test and conventional down-payment rules change if the borrower lives there. I would have shipped a DTI calculator and called it done.
The reusable piece is smaller than the app. Write the sentence a person should see, then check that doing what the sentence says produces it. The debts example is that sentence. The test applies the number and expects funded.
I also learned to label a simplification. The stand-in rate is not a failure of the proof. Hiding it would have been.
What's next for Will It Fund?
An FHA card, for scores this conventional sheet will not touch. A place to type a real tax bill and insurance quote instead of the 1.5% stand-in. A summary I can paste into an email.
Still no credit pull, and no login, until there is a reason. The public repository and the short demo are the submission. The product after that stays a worksheet.
Built With
- fastapi
- pytest
- python
Log in or sign up for Devpost to join the conversation.