BACK

VESTA REALTY

Real Estate Management System

📅 2025
BETA DEPLOY
👤 Solo Project
🏢 Web Application
Vesta Realty Banner

PROJECT_OVERVIEW.EXE

Vesta Realty is a comprehensive web application designed to streamline real estate management. The platform enables property owners and tenants to efficiently manage rental payments, generate receipts, raise and address rent-related complaints, view account balances, and handle billing operations. Built with modern technologies, it provides a secure and user-friendly interface for all stakeholders.

The system features real-time notifications, automated billing cycles, comprehensive reporting tools, and a responsive design that works seamlessly across all devices. Security and data integrity are prioritized with secure authentication mechanisms, protection against SQL injection attacks and cross site forgery attacks.

Future improvements and additions to the platform include an integrated dispute system, more payment channels/methods , push notifications , email notifications ,google/apple auth login system, advanced analytics and tenant database system. Reach out for any ideas or recommendations.

TECH_STACK.JSON

dj
Django
🐘
PostgreSQL
JavaScript
🎨
HTML/CSS
TAILWINDCSS
☁️
Render

KEY_FEATURES.LOG

💳

Payment Management

Track and manage rental payments with automated receipt generation. View complete payment history and outstanding balances in real-time.

📊

Analytics Dashboard

Comprehensive analytics for property owners with revenue tracking, occupancy rates, and financial reports.

📱

Responsive Design

Fully responsive interface that works seamlessly on desktop, tablet, and mobile devices.

🔐

Secure Authentication

Uses Django internal auth system with sessions to enable users to maintain sessions while also maintaining data served is the correct one.Cross Site forgery Attacks is also managed suring post request making data transmission secure.

SCREENSHOTS.JPG

loginpage
tenants
tenants
tenants

CODE_HIGHLIGHT.PY

Here's a snippet showcasing the payment processing logic:

                    # func to do the stk push
                    def stk_push(phone, amount, account_reference, callback_url,shortcode,transaction_type="CustomerPayBillOnline"):
                        if not shortcode:
                            return
                        access_token = get_access_token()
                        url = "https://sandbox.safaricom.co.ke/mpesa/stkpush/v1/processrequest"
                        
                        timestamp = datetime.now().strftime("%Y%m%d%H%M%S")
                        password = base64.b64encode(f"{settings.MPESA_SHORTCODE}{settings.MPESA_PASSKEY}{timestamp}".encode()).decode()
                        
                        headers = {"Authorization": f"Bearer {access_token}", "Content-Type": "application/json"}
                        payload = {
                            "BusinessShortCode": shortcode,
                            "Password": password,
                            "Timestamp": timestamp,
                            "TransactionType": transaction_type,
                            "Amount": validate_amount(amount),
                            "PartyA": validate_possible_number(phone,"Kenya").as_e164[1:],
                            "PartyB": settings.MPESA_SHORTCODE,
                            "PhoneNumber": phone,
                            "CallBackURL": callback_url,
                            "AccountReference": validate_reference(account_reference),
                            "TransactionDesc": "Payment to landlord"
                        }
                        
                        response = requests.post(url, json=payload, headers=headers)
                        return response.json()
                

PROJECT_STATISTICS.JSON

2K+
Lines of Code
1
Happy Clients
10+
Features
99.9%
Uptime

CHALLENGES_&_SOLUTIONS

EXPLORE_PROJECT