proptech 0.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- proptech-0.1.0/PKG-INFO +68 -0
- proptech-0.1.0/README.md +58 -0
- proptech-0.1.0/proptech/__init__.py +6 -0
- proptech-0.1.0/proptech/brrrr.py +94 -0
- proptech-0.1.0/proptech.egg-info/PKG-INFO +68 -0
- proptech-0.1.0/proptech.egg-info/SOURCES.txt +8 -0
- proptech-0.1.0/proptech.egg-info/dependency_links.txt +1 -0
- proptech-0.1.0/proptech.egg-info/top_level.txt +1 -0
- proptech-0.1.0/pyproject.toml +19 -0
- proptech-0.1.0/setup.cfg +4 -0
proptech-0.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: proptech
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Advanced Python library for real estate investment modeling, BRRRR strategy analysis, and mortgage amortization.
|
|
5
|
+
Author-email: Albergracht Technologies <technologies@albergracht.com>
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Keywords: proptech,real-estate,brrrr,mortgage,investment,fintech
|
|
8
|
+
Requires-Python: >=3.8
|
|
9
|
+
Description-Content-Type: text/markdown
|
|
10
|
+
|
|
11
|
+
# proptech
|
|
12
|
+
|
|
13
|
+
> **Alpha software – experimental, no warranty, not for production or investment decisions.**
|
|
14
|
+
|
|
15
|
+
A zero-dependency Python library for real estate investment modeling, with a focus on the **BRRRR strategy** (Buy, Rehab, Rent, Refinance, Repeat) and cash flow analytics.
|
|
16
|
+
|
|
17
|
+
This software is experimental and intended for informational, modeling, and educational purposes only. It does not constitute financial, investment, legal, tax, or professional advice.
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
pip install proptech
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
## Quickstart
|
|
28
|
+
|
|
29
|
+
Evaluate a BRRRR real estate investment scenario:
|
|
30
|
+
|
|
31
|
+
```python
|
|
32
|
+
import proptech
|
|
33
|
+
|
|
34
|
+
deal = proptech.BRRRRModel(
|
|
35
|
+
purchase_price=120_000,
|
|
36
|
+
rehab_cost=40_000,
|
|
37
|
+
after_repair_value=220_000,
|
|
38
|
+
monthly_rent=2_200,
|
|
39
|
+
monthly_expenses=800, # Taxes, insurance, maintenance, property management
|
|
40
|
+
refinance_ltv=0.75, # 75% LTV cash-out refinance
|
|
41
|
+
refinance_rate=0.065, # 6.5% interest rate
|
|
42
|
+
amortization_years=30
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
print(f"Total Project Cost: ${deal.total_project_cost:,.2f}")
|
|
46
|
+
print(f"New Loan Amount (Refinance): ${deal.new_loan_amount:,.2f}")
|
|
47
|
+
print(f"Capital Remaining in Deal: ${deal.cash_left_in_deal:,.2f}")
|
|
48
|
+
print(f"Monthly Cash Flow: ${deal.monthly_cash_flow:,.2f}")
|
|
49
|
+
|
|
50
|
+
if deal.cash_left_in_deal <= 0:
|
|
51
|
+
print("Capital fully recovered via refinancing.")
|
|
52
|
+
else:
|
|
53
|
+
print(f"Cash-on-Cash Return: {deal.cash_on_cash_return:.2f}%")
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
## Disclaimer
|
|
58
|
+
|
|
59
|
+
**Experimental alpha software – no warranty, no professional advice.**
|
|
60
|
+
This software (`proptech`) is experimental, alpha-quality software developed by **Albergracht Technologies** for computational, modeling, and educational purposes only. It is provided **“as is”**, without any warranties of any kind, express or implied, including but not limited to warranties of accuracy, completeness, reliability, merchantability, fitness for a particular purpose, or non-infringement.
|
|
61
|
+
|
|
62
|
+
**No professional advice.** Nothing in this software, its documentation, outputs, or examples constitutes or should be construed as **financial, investment, legal, tax, or professional advice** of any kind. Do not rely on this software for making real-world financial, investment, or business decisions. Always consult qualified, licensed professionals before acting on any information derived from this software.
|
|
63
|
+
|
|
64
|
+
**Alpha status; errors and bugs.** This is an **alpha** release. It may contain **bugs, errors, inaccuracies, omissions, and breaking changes**. Features may be incomplete, change without notice, or be removed entirely. Backward compatibility is not guaranteed between versions.
|
|
65
|
+
|
|
66
|
+
**Use at your own risk.** You use this software **solely at your own risk**. Albergracht Technologies and its contributors shall not be liable for any direct, indirect, incidental, special, consequential, or exemplary damages arising out of or in connection with the use, performance, or inability to use this software, including but not limited to loss of profits, data, business opportunities, or investment losses, even if advised of the possibility of such damages.
|
|
67
|
+
|
|
68
|
+
By using this software, you acknowledge that you have read, understood, and agree to this disclaimer.
|
proptech-0.1.0/README.md
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# proptech
|
|
2
|
+
|
|
3
|
+
> **Alpha software – experimental, no warranty, not for production or investment decisions.**
|
|
4
|
+
|
|
5
|
+
A zero-dependency Python library for real estate investment modeling, with a focus on the **BRRRR strategy** (Buy, Rehab, Rent, Refinance, Repeat) and cash flow analytics.
|
|
6
|
+
|
|
7
|
+
This software is experimental and intended for informational, modeling, and educational purposes only. It does not constitute financial, investment, legal, tax, or professional advice.
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
## Installation
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
pip install proptech
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
## Quickstart
|
|
18
|
+
|
|
19
|
+
Evaluate a BRRRR real estate investment scenario:
|
|
20
|
+
|
|
21
|
+
```python
|
|
22
|
+
import proptech
|
|
23
|
+
|
|
24
|
+
deal = proptech.BRRRRModel(
|
|
25
|
+
purchase_price=120_000,
|
|
26
|
+
rehab_cost=40_000,
|
|
27
|
+
after_repair_value=220_000,
|
|
28
|
+
monthly_rent=2_200,
|
|
29
|
+
monthly_expenses=800, # Taxes, insurance, maintenance, property management
|
|
30
|
+
refinance_ltv=0.75, # 75% LTV cash-out refinance
|
|
31
|
+
refinance_rate=0.065, # 6.5% interest rate
|
|
32
|
+
amortization_years=30
|
|
33
|
+
)
|
|
34
|
+
|
|
35
|
+
print(f"Total Project Cost: ${deal.total_project_cost:,.2f}")
|
|
36
|
+
print(f"New Loan Amount (Refinance): ${deal.new_loan_amount:,.2f}")
|
|
37
|
+
print(f"Capital Remaining in Deal: ${deal.cash_left_in_deal:,.2f}")
|
|
38
|
+
print(f"Monthly Cash Flow: ${deal.monthly_cash_flow:,.2f}")
|
|
39
|
+
|
|
40
|
+
if deal.cash_left_in_deal <= 0:
|
|
41
|
+
print("Capital fully recovered via refinancing.")
|
|
42
|
+
else:
|
|
43
|
+
print(f"Cash-on-Cash Return: {deal.cash_on_cash_return:.2f}%")
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
## Disclaimer
|
|
48
|
+
|
|
49
|
+
**Experimental alpha software – no warranty, no professional advice.**
|
|
50
|
+
This software (`proptech`) is experimental, alpha-quality software developed by **Albergracht Technologies** for computational, modeling, and educational purposes only. It is provided **“as is”**, without any warranties of any kind, express or implied, including but not limited to warranties of accuracy, completeness, reliability, merchantability, fitness for a particular purpose, or non-infringement.
|
|
51
|
+
|
|
52
|
+
**No professional advice.** Nothing in this software, its documentation, outputs, or examples constitutes or should be construed as **financial, investment, legal, tax, or professional advice** of any kind. Do not rely on this software for making real-world financial, investment, or business decisions. Always consult qualified, licensed professionals before acting on any information derived from this software.
|
|
53
|
+
|
|
54
|
+
**Alpha status; errors and bugs.** This is an **alpha** release. It may contain **bugs, errors, inaccuracies, omissions, and breaking changes**. Features may be incomplete, change without notice, or be removed entirely. Backward compatibility is not guaranteed between versions.
|
|
55
|
+
|
|
56
|
+
**Use at your own risk.** You use this software **solely at your own risk**. Albergracht Technologies and its contributors shall not be liable for any direct, indirect, incidental, special, consequential, or exemplary damages arising out of or in connection with the use, performance, or inability to use this software, including but not limited to loss of profits, data, business opportunities, or investment losses, even if advised of the possibility of such damages.
|
|
57
|
+
|
|
58
|
+
By using this software, you acknowledge that you have read, understood, and agree to this disclaimer.
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
from dataclasses import dataclass
|
|
2
|
+
from typing import Dict, Any, Union
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
LEGAL_DISCLAIMER = (
|
|
6
|
+
"EXPERIMENTAL ALPHA SOFTWARE – FOR INFORMATIONAL AND MODELING PURPOSES ONLY. "
|
|
7
|
+
"PROVIDED 'AS IS' WITHOUT WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED. "
|
|
8
|
+
"NOT FINANCIAL, INVESTMENT, LEGAL, TAX, OR PROFESSIONAL ADVICE. "
|
|
9
|
+
"DO NOT RELY ON THIS SOFTWARE FOR REAL-WORLD FINANCIAL OR INVESTMENT DECISIONS. "
|
|
10
|
+
"USE AT YOUR OWN RISK. ALBERGRACHT TECHNOLOGIES DISCLAIMS ALL LIABILITY FOR ANY DAMAGES "
|
|
11
|
+
"ARISING FROM USE OR INABILITY TO USE THIS SOFTWARE."
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@dataclass
|
|
16
|
+
class BRRRRModel:
|
|
17
|
+
"""
|
|
18
|
+
BRRRR Strategy Calculator (Buy, Rehab, Rent, Refinance, Repeat).
|
|
19
|
+
|
|
20
|
+
Provides computational models and estimations for real estate investment analysis.
|
|
21
|
+
This is experimental alpha software: it may contain errors, inaccuracies, or breaking changes.
|
|
22
|
+
Outputs are not financial or investment advice and should not be used as the sole basis
|
|
23
|
+
for any investment, legal, tax, or business decision.
|
|
24
|
+
"""
|
|
25
|
+
purchase_price: float
|
|
26
|
+
rehab_cost: float
|
|
27
|
+
after_repair_value: float
|
|
28
|
+
monthly_rent: float
|
|
29
|
+
monthly_expenses: float
|
|
30
|
+
refinance_ltv: float = 0.75 # 75% Loan to Value
|
|
31
|
+
refinance_rate: float = 0.06 # 6% Interest Rate
|
|
32
|
+
amortization_years: int = 30
|
|
33
|
+
|
|
34
|
+
@property
|
|
35
|
+
def total_project_cost(self) -> float:
|
|
36
|
+
"""Initial capital required (Purchase + Rehab)."""
|
|
37
|
+
return self.purchase_price + self.rehab_cost
|
|
38
|
+
|
|
39
|
+
@property
|
|
40
|
+
def new_loan_amount(self) -> float:
|
|
41
|
+
"""The amount the bank will lend based on the After Repair Value (ARV)."""
|
|
42
|
+
return self.after_repair_value * self.refinance_ltv
|
|
43
|
+
|
|
44
|
+
@property
|
|
45
|
+
def cash_left_in_deal(self) -> float:
|
|
46
|
+
"""
|
|
47
|
+
Capital remaining in the deal after refinancing.
|
|
48
|
+
Positive value indicates capital still invested; zero or negative indicates
|
|
49
|
+
full or partial recovery via refinancing.
|
|
50
|
+
"""
|
|
51
|
+
return self.total_project_cost - self.new_loan_amount
|
|
52
|
+
|
|
53
|
+
@property
|
|
54
|
+
def monthly_mortgage_payment(self) -> float:
|
|
55
|
+
"""Calculates standard fixed-rate mortgage payment using the new loan."""
|
|
56
|
+
if self.new_loan_amount <= 0 or self.refinance_rate <= 0:
|
|
57
|
+
return 0.0
|
|
58
|
+
r_monthly = self.refinance_rate / 12.0
|
|
59
|
+
n_months = self.amortization_years * 12
|
|
60
|
+
return self.new_loan_amount * (r_monthly * (1 + r_monthly)**n_months) / ((1 + r_monthly)**n_months - 1)
|
|
61
|
+
|
|
62
|
+
@property
|
|
63
|
+
def monthly_cash_flow(self) -> float:
|
|
64
|
+
"""Net operating income minus debt service."""
|
|
65
|
+
return self.monthly_rent - self.monthly_expenses - self.monthly_mortgage_payment
|
|
66
|
+
|
|
67
|
+
@property
|
|
68
|
+
def cash_on_cash_return(self) -> Union[float, str]:
|
|
69
|
+
"""
|
|
70
|
+
Annual cash-on-cash return on the capital remaining in the deal.
|
|
71
|
+
Returns 'N/A (capital fully recovered)' if no capital remains invested.
|
|
72
|
+
"""
|
|
73
|
+
if self.cash_left_in_deal <= 0:
|
|
74
|
+
return "N/A (capital fully recovered)"
|
|
75
|
+
return ((self.monthly_cash_flow * 12) / self.cash_left_in_deal) * 100.0
|
|
76
|
+
|
|
77
|
+
def summary(self) -> Dict[str, Any]:
|
|
78
|
+
"""
|
|
79
|
+
Returns a dictionary of key metrics along with the legal disclaimer.
|
|
80
|
+
This summary is for informational and modeling purposes only.
|
|
81
|
+
"""
|
|
82
|
+
return {
|
|
83
|
+
"total_project_cost": round(self.total_project_cost, 2),
|
|
84
|
+
"after_repair_value": round(self.after_repair_value, 2),
|
|
85
|
+
"new_loan_amount": round(self.new_loan_amount, 2),
|
|
86
|
+
"cash_left_in_deal": round(self.cash_left_in_deal, 2),
|
|
87
|
+
"monthly_cash_flow": round(self.monthly_cash_flow, 2),
|
|
88
|
+
"cash_on_cash_return_pct": (
|
|
89
|
+
self.cash_on_cash_return
|
|
90
|
+
if isinstance(self.cash_on_cash_return, str)
|
|
91
|
+
else round(self.cash_on_cash_return, 2)
|
|
92
|
+
),
|
|
93
|
+
"disclaimer": LEGAL_DISCLAIMER,
|
|
94
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: proptech
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Advanced Python library for real estate investment modeling, BRRRR strategy analysis, and mortgage amortization.
|
|
5
|
+
Author-email: Albergracht Technologies <technologies@albergracht.com>
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Keywords: proptech,real-estate,brrrr,mortgage,investment,fintech
|
|
8
|
+
Requires-Python: >=3.8
|
|
9
|
+
Description-Content-Type: text/markdown
|
|
10
|
+
|
|
11
|
+
# proptech
|
|
12
|
+
|
|
13
|
+
> **Alpha software – experimental, no warranty, not for production or investment decisions.**
|
|
14
|
+
|
|
15
|
+
A zero-dependency Python library for real estate investment modeling, with a focus on the **BRRRR strategy** (Buy, Rehab, Rent, Refinance, Repeat) and cash flow analytics.
|
|
16
|
+
|
|
17
|
+
This software is experimental and intended for informational, modeling, and educational purposes only. It does not constitute financial, investment, legal, tax, or professional advice.
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
pip install proptech
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
## Quickstart
|
|
28
|
+
|
|
29
|
+
Evaluate a BRRRR real estate investment scenario:
|
|
30
|
+
|
|
31
|
+
```python
|
|
32
|
+
import proptech
|
|
33
|
+
|
|
34
|
+
deal = proptech.BRRRRModel(
|
|
35
|
+
purchase_price=120_000,
|
|
36
|
+
rehab_cost=40_000,
|
|
37
|
+
after_repair_value=220_000,
|
|
38
|
+
monthly_rent=2_200,
|
|
39
|
+
monthly_expenses=800, # Taxes, insurance, maintenance, property management
|
|
40
|
+
refinance_ltv=0.75, # 75% LTV cash-out refinance
|
|
41
|
+
refinance_rate=0.065, # 6.5% interest rate
|
|
42
|
+
amortization_years=30
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
print(f"Total Project Cost: ${deal.total_project_cost:,.2f}")
|
|
46
|
+
print(f"New Loan Amount (Refinance): ${deal.new_loan_amount:,.2f}")
|
|
47
|
+
print(f"Capital Remaining in Deal: ${deal.cash_left_in_deal:,.2f}")
|
|
48
|
+
print(f"Monthly Cash Flow: ${deal.monthly_cash_flow:,.2f}")
|
|
49
|
+
|
|
50
|
+
if deal.cash_left_in_deal <= 0:
|
|
51
|
+
print("Capital fully recovered via refinancing.")
|
|
52
|
+
else:
|
|
53
|
+
print(f"Cash-on-Cash Return: {deal.cash_on_cash_return:.2f}%")
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
## Disclaimer
|
|
58
|
+
|
|
59
|
+
**Experimental alpha software – no warranty, no professional advice.**
|
|
60
|
+
This software (`proptech`) is experimental, alpha-quality software developed by **Albergracht Technologies** for computational, modeling, and educational purposes only. It is provided **“as is”**, without any warranties of any kind, express or implied, including but not limited to warranties of accuracy, completeness, reliability, merchantability, fitness for a particular purpose, or non-infringement.
|
|
61
|
+
|
|
62
|
+
**No professional advice.** Nothing in this software, its documentation, outputs, or examples constitutes or should be construed as **financial, investment, legal, tax, or professional advice** of any kind. Do not rely on this software for making real-world financial, investment, or business decisions. Always consult qualified, licensed professionals before acting on any information derived from this software.
|
|
63
|
+
|
|
64
|
+
**Alpha status; errors and bugs.** This is an **alpha** release. It may contain **bugs, errors, inaccuracies, omissions, and breaking changes**. Features may be incomplete, change without notice, or be removed entirely. Backward compatibility is not guaranteed between versions.
|
|
65
|
+
|
|
66
|
+
**Use at your own risk.** You use this software **solely at your own risk**. Albergracht Technologies and its contributors shall not be liable for any direct, indirect, incidental, special, consequential, or exemplary damages arising out of or in connection with the use, performance, or inability to use this software, including but not limited to loss of profits, data, business opportunities, or investment losses, even if advised of the possibility of such damages.
|
|
67
|
+
|
|
68
|
+
By using this software, you acknowledge that you have read, understood, and agree to this disclaimer.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
proptech
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=61.0"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "proptech"
|
|
7
|
+
version = "0.1.0"
|
|
8
|
+
description = "Advanced Python library for real estate investment modeling, BRRRR strategy analysis, and mortgage amortization."
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
license = "MIT"
|
|
11
|
+
requires-python = ">=3.8"
|
|
12
|
+
authors = [
|
|
13
|
+
{ name = "Albergracht Technologies", email = "technologies@albergracht.com" },
|
|
14
|
+
]
|
|
15
|
+
keywords = ["proptech", "real-estate", "brrrr", "mortgage", "investment", "fintech"]
|
|
16
|
+
|
|
17
|
+
[tool.setuptools.packages.find]
|
|
18
|
+
where = ["."]
|
|
19
|
+
include = ["proptech*"]
|
proptech-0.1.0/setup.cfg
ADDED