Logo Lanfrica

SanduCoder/RentBook

Domaine:

digital infrastructure

Type de record:

software
Créateur:
San
Hôte:
Mobile-first rental management for landlords and tenants in The Gambia # RentBook **The easiest way to manage rent, tenants, payments, and compound operations.** RentBook is a mobile-first rental and compound management platform built for small landlords, caretakers, and tenants — starting in The Gambia and expandable across Africa and globally. ## Tech Stack - **Frontend:** Angular 19 + PWA (offline-capable) - **Backend:** Firebase Authentication, Firestore, Storage, Cloud Functions (planned) ## Phase 1 Features (Current) - User authentication (Owner, Caretaker, Tenant roles) - Dashboard with rent collection overview - Property & unit management (compounds, apartments, rooms, shops, offices) - Tenant management with contact details and rent tracking - Payment recording (Wave, AfriMoney, QMoney, Bank Transfer, Cash) - Payment status tracking (Paid, Upcoming, Late, Partial) - Digital receipt numbers - Mobile bottom navigation ## Phase 2 Features (Current) - **Maintenance requests** — Submit, filter, and track Open → Assigned → Completed - **Expense tracking** — Water, electricity, repairs, cleaning, security, and other costs - **Shared utility billing** — Split compound bills among households with auto per-household calculation - **Reports** — Monthly income, expenses, and net profit - **Property tabs** — Expenses and shared bills on each property detail page ## Getting Started ### Prerequisites - Node.js 18+ - A Firebase project ### 1. Firebase Setup 1. Create a Firebase project at Firebase Console 2. Enable **Authentication** → Email/Password sign-in 3. Create a **Firestore Database** (start in test mode, then deploy rules) 4. Copy your Firebase config from Project Settings → General → Your apps ### 2. Configure Environment Edit `src/environments/environment.development.ts` with your Firebase credentials: ```typescript export const environment = { production: false, firebase: { apiKey: 'your-api-key', authDomain: 'your-project.firebaseapp.com', projectId: 'your-project-id', storageBucket: 'your-project.appspot.com', me …