A modern web application for managing properties and tenants, built with React and Firebase.
- 🔐 Secure Authentication
- 🏠 Property Management
- 👥 Tenant Management
- 💰 Rent Tracking
- 📊 Activity Monitoring
- 📱 Responsive Design
- 🔔 WhatsApp & SMS Notifications
- Frontend: React.js
- Styling: Tailwind CSS
- Backend: Firebase
- Firestore Database
- Firebase Authentication
- Firebase Hosting
- UI Components: Heroicons
- Routing: React Router
- Node.js (v14 or higher)
- npm or yarn
- Firebase account
- Git
- Clone the repository:
git clone https://github.com/yourusername/dwella.git
cd dwella- Install dependencies:
npm install- Create a
.envfile in the root directory and add your Firebase configuration:
REACT_APP_FIREBASE_API_KEY=your_api_key
REACT_APP_FIREBASE_AUTH_DOMAIN=your_auth_domain
REACT_APP_FIREBASE_PROJECT_ID=your_project_id
REACT_APP_FIREBASE_STORAGE_BUCKET=your_storage_bucket
REACT_APP_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
REACT_APP_FIREBASE_APP_ID=your_app_id- Start the development server:
npm startThe application will be available at http://localhost:3000
dwella/
├── public/
├── src/
│ ├── components/
│ ├── pages/
│ ├── utils/
│ ├── App.js
│ └── index.js
├── firestore.rules
├── firestore.indexes.json
├── firebase.json
└── package.json
- Add and manage multiple properties
- Track property details and status
- View property-specific tenant information
- Add new tenants with detailed information
- Track tenant status and history
- Manage tenant documents and agreements
- Automatic monthly rent generation
- Payment tracking and history
- Due date notifications
- Track all tenant-related activities
- View payment history
- Monitor maintenance requests
- WhatsApp integration for tenant communication
- SMS notifications for important updates
- Customizable notification templates
- Build the application:
npm run build- Deploy to Firebase:
firebase deployThe application implements robust security measures:
- Firebase Authentication for user management
- Firestore Security Rules for data access control
- Secure API key management
- Protected routes and components
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
For support, email support@dwella.com or create an issue in the repository.
- Firebase for the backend infrastructure
- React team for the frontend framework
- Tailwind CSS for the styling system