A comprehensive web application for calculating the Smith Manoeuvre strategy, a Canadian real estate investment technique that converts non-deductible mortgage interest into tax-deductible investment loan interest.
-
Property Input: Enter details for primary property and optional second property
-
Income Information: Include province of residence, annual income, and other income sources
-
Spouse/Partner Support: Optional spouse income and tax information
-
Real-time Calculations: Instant calculation of potential tax savings and equity gains
-
Canadian Tax Integration: Provincial and federal tax rate calculations
-
Professional UI: Clean, modern interface with responsive design
- Frontend: Next.js 14 with TypeScript
- Styling: Tailwind CSS
- Calculations: Decimal.js for precise financial calculations
- Icons: Lucide React
- Deployment: Ready for Vercel, Netlify, or other platforms
- Node.js 18+ (though there may be some installation issues on macOS - see troubleshooting)
- npm or yarn
- Clone the repository:
git clone <repository-url>
cd smithy-calculator- Install dependencies:
npm install- Run the development server:
npm run dev- Open http://localhost:3000 in your browser.
If you encounter Node.js library issues on macOS (like ICU library errors), try:
- Reinstall Node.js using Homebrew:
brew uninstall node
brew install node- Or use Node Version Manager (nvm):
nvm install 18
nvm use 18src/
├── app/ # Next.js app directory
│ ├── globals.css # Global styles with Tailwind
│ ├── layout.tsx # Root layout component
│ └── page.tsx # Main page component
├── components/ # React components
│ ├── CalculatorForm.tsx # Main input form
│ └── ResultsDisplay.tsx # Results display
├── lib/ # Utility functions
│ └── calculations.ts # Smith Manoeuvre calculations
└── types/ # TypeScript type definitions
└── index.ts # Data structure types
- Handles all user input for properties, income, and spouse information
- Real-time tax rate calculation based on province and income
- Optional sections for additional properties and spouse information
- Shows comprehensive calculation results
- Summary cards with key metrics
- Detailed breakdown of savings and costs
- Scenario analysis for different risk levels
- Precise financial calculations using Decimal.js
- Canadian provincial and federal tax rate integration
- Smith Manoeuvre-specific logic for equity and tax savings
The Smith Manoeuvre is a Canadian real estate investment strategy that:
- Accelerates Mortgage Payments: Uses investment returns to pay down the mortgage faster
- Converts Interest: Transforms non-deductible mortgage interest into tax-deductible investment loan interest
- Builds Investment Portfolio: Creates a growing investment portfolio while paying off the mortgage
- Tax Efficiency: Maximizes tax deductions and savings
- This calculator provides estimates only and should not be considered as financial advice
- The Smith Manoeuvre involves significant risks and should be discussed with qualified financial professionals
- Tax laws and rates may change, affecting calculation accuracy
- Individual circumstances vary and may affect the suitability of this strategy
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
For questions or support, please open an issue in the repository.