A modern, smart property management platform designed for landlords and property managers. Automate lease renewals, assess tenant risks with AI, and streamline maintenance tracking.
- Lease Renewal Alerts: Never miss important lease renewal dates with automated notifications
- AI Tenant Risk Scoring: Predictive insights to identify potential tenant risks early
- Maintenance Tracking: Streamline maintenance requests and track completion status
- Dashboard Analytics: Comprehensive overview of property performance and tenant data
- Tenant Management: Complete tenant profiles with lease history and contact information
- Property Portfolio: Manage multiple properties and units efficiently
- Responsive Design: Optimized for desktop, tablet, and mobile devices
- Modern UI: Glassmorphism design with smooth animations and transitions
- Dark Mode Support: Automatic theme switching based on user preferences
- Intuitive Navigation: Clean sidebar navigation with active state indicators
- Framework: Next.js 16 with App Router
- Language: TypeScript
- Styling: Tailwind CSS with custom design system
- UI Components: Radix UI primitives
- Icons: Lucide React
- Charts: Recharts for data visualization
- Forms: React Hook Form with Zod validation
- Date Handling: date-fns
- Deployment: Vercel (recommended)
-
Clone the repository
git clone <repository-url> cd tenant-insights
-
Install dependencies
npm install # or pnpm install -
Set up environment variables Create a
.env.localfile in the root directory:# Add your environment variables here NEXT_PUBLIC_API_URL=your_api_url
-
Run the development server
npm run dev # or pnpm dev -
Open your browser Navigate to http://localhost:3000
- Sign Up: Create your account on the landing page
- Add Properties: Set up your property portfolio in the dashboard
- Manage Tenants: Add tenant information and lease details
- Track Maintenance: Log and monitor maintenance requests
- Monitor Analytics: View performance metrics and insights
- / - Landing page with feature overview
- /login - User authentication
- /signup - Account creation
- /dashboard - Main dashboard with stats and recent activity
- /tenants - Tenant management interface
- /leases - Lease document and renewal tracking
- /maintenance - Maintenance request system
- /analytics - Data visualization and reporting
- /profile - User profile and settings
tenant-insights/
├── app/ # Next.js app directory
│ ├── analytics/ # Analytics page
│ ├── dashboard/ # Dashboard page
│ ├── globals.css # Global styles
│ ├── layout.tsx # Root layout
│ ├── leases/ # Leases page
│ ├── login/ # Login page
│ ├── maintenance/ # Maintenance page
│ ├── page.tsx # Landing page
│ ├── profile/ # Profile page
│ ├── signup/ # Signup page
│ └── tenants/ # Tenants page
├── components/ # Reusable components
│ ├── ui/ # UI component library
│ ├── dashboard-nav.tsx # Dashboard navigation
│ ├── dashboard-sidebar.tsx # Dashboard sidebar
│ ├── dashboard-stats.tsx # Dashboard statistics
│ ├── dashboard-recent-activity.tsx # Recent activity component
│ ├── sign-in-page.tsx # Login page component
│ └── sign-up-page.tsx # Signup page component
├── hooks/ # Custom React hooks
├── lib/ # Utility functions
│ └── utils.ts # Class name utility
├── public/ # Static assets
├── styles/ # Additional styles
├── components.json # Component configuration
├── next.config.mjs # Next.js configuration
├── package.json # Dependencies and scripts
├── postcss.config.mjs # PostCSS configuration
├── tailwind.config.ts # Tailwind CSS configuration
└── tsconfig.json # TypeScript configuration
- Primary: Blue tones for main actions and branding
- Secondary: Muted colors for secondary elements
- Accent: Purple highlights for interactive elements
- Neutral: Grays for text and backgrounds
- Font Family: Geist Sans (primary), Geist Mono (monospace)
- Scale: Responsive text sizing with proper hierarchy
- Glassmorphism: Backdrop blur effects with transparency
- Hover Effects: Smooth transitions and gradient overlays
- Animations: Staggered entrance animations for better UX
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Use TypeScript for all new code
- Follow the existing component patterns
- Ensure responsive design for all new features
- Write clear, concise commit messages
- Test components across different screen sizes
This project is licensed under the MIT License - see the LICENSE file for details.
- Email: [email protected]
- Website: tenantinsights.com
Built with ❤️ for property managers who want to focus on what matters most - their properties and tenants.