mmahlatse-ventures-live-secure

byMahlatse Shiburi

Build a REAL production-ready SaaS application called: MAHLATSE VENTURES LIVESECURE Owner: Mahlatse Ventures Market: South Africa Tagline: “Live Protection. Real Response. Every Moment.” IMPORTANT: This must NOT be a fake AI demo, mockup, static prototype, or collection of screens. Build a functional application with real authentication, database, APIs, GPS/location capabilities, notifications, role-based access, security, and deployable architecture. Every major button and workflow must perform a real action or clearly show what configuration/API credential is required. PRODUCT PURPOSE: LiveSecure is a safety, security and emergency-response platform for individuals, families, businesses, schools, transport operators, security companies and organisations. Users can trigger emergencies, share their live location, manage emergency contacts, receive alerts, and allow authorised responders/admins to monitor and respond to incidents. BUILD IT AS A MULTI-TENANT SAAS: Mahlatse Ventures is the platform owner. Multiple client organisations must be able to register/use the platform independently. Each organisation must have isolated data. Platform Owner/Admin can manage organisations, users, subscriptions, incidents and system settings. USER ROLES: 1. MASTER ADMIN - Secure admin login - Dashboard with live system statistics - Manage organisations/tenants - Manage users and roles - Manage responders - View/manage incidents - View active emergencies on live map - Manage subscriptions/plans - System audit logs - Notification management - Platform settings - Suspend/reactivate tenants - Export reports 2. ORGANISATION ADMIN - Organisation dashboard - Manage employees/users - Manage responders - Manage emergency contacts - View organisation incidents - Live incident map - Incident history - Reports - Organisation settings - Subscription/plan information 3. CLIENT/USER - Secure registration/login - Personal profile - Emergency contacts - SOS/PANIC button - Share live location - Start emergency incident - Cancel incident with confirmation - View incident status - View incident history - Receive alerts - Account/security settings 4. RESPONDER - Secure responder login - Set Available/Unavailable status - Receive nearby emergency alerts - View incident location - View incident details - Accept/decline response - Navigate to incident - Update status: Dispatched, En Route, Arrived, Resolved - Add incident notes - View assigned incidents EMERGENCY/SOS SYSTEM: Create a highly visible SOS button. When activated: 1. Confirm emergency action where appropriate. 2. Create a real incident in the database. 3. Capture user's current GPS coordinates. 4. Record timestamp, user, tenant, incident ID and status. 5. Notify authorised organisation admins/responders. 6. Display the incident on the live operations map. 7. Continuously update location while the emergency session is active, subject to browser/device permissions. 8. Show incident status to the user. 9. Allow authorised responders/admins to acknowledge and manage the incident. 10. Store a complete incident timeline/audit trail. Do NOT claim that the system can automatically contact SAPS, ambulance, fire or private security unless an actual supported API/service is configured. Build integration-ready adapters and configuration screens for future integrations. LIVE LOCATION: Use browser/device geolocation APIs where available. Request location permission properly. Show accuracy, latitude, longitude and timestamp. Allow authorised responders/admins to see active incidents on a map. Use a mapping provider such as Mapbox or Google Maps through environment/API configuration. Never expose private API keys in frontend code when they should be server-side. DATABASE: Use a real persistent database. Recommended structure: organisations users roles responders emergency_contacts incidents incident_locations incident_events notifications subscriptions audit_logs system_settings Every organisation-owned record must contain tenant/organisation ID. Enforce tenant isolation on backend/database queries. Never allow one organisation to access another organisation's data. INCIDENT STATUSES: ACTIVE ACKNOWLEDGED DISPATCHED EN_ROUTE ARRIVED RESOLVED CANCELLED FALSE_ALARM INCIDENT INFORMATION: - Incident ID - User - Organisation - Emergency type - Priority - GPS location - Address/reverse geocoded address where available - Created time - Last location update - Assigned responder - Status - Timeline - Notes - Resolution EMERGENCY TYPES: Panic/SOS Medical Fire Crime/Security Accident Vehicle Emergency Other DASHBOARD: Create a professional command-centre dashboard showing: - Active emergencies - Incidents today - Open incidents - Resolved incidents - Responders available - Users - Organisations - Recent incidents - Live map - Emergency priority indicators LIVE MAP: Show active incidents and responder locations where permission and tracking are available. Clicking a marker opens incident details. Provide filters by status, organisation, priority and emergency type. NOTIFICATIONS: Build a real notification architecture. Support in-app notifications. Prepare integrations for email, SMS, WhatsApp and push notifications. Store notification delivery status. Do not fake successful delivery when no provider is configured. SECURITY: Implement: - Secure authentication - Password hashing through trusted authentication provider - Role-based access control - Tenant isolation - Server-side authorization - Input validation - Rate limiting for SOS/API endpoints where appropriate - Audit logging - Secure environment variables - No hardcoded secrets - Protection against unauthorized incident access - Session security - Error handling without exposing sensitive information PRIVACY: Treat location and emergency information as sensitive. Only authorised users may access it. Provide privacy/consent settings. Provide account deletion/data-management capability where appropriate. Create Terms, Privacy Policy and Emergency Service disclaimer pages. SAAS/BILLING: Create subscription architecture with plans such as: FREE/TRIAL BASIC PRO BUSINESS ENTERPRISE Include: - Organisation subscription status - Trial period - Plan limits - User limits - Responder limits - Billing page - Upgrade/downgrade architecture - Payment provider integration-ready design Do not pretend payments succeeded without a real payment provider. UI/UX: Create a premium modern security-tech interface. Mobile-first and fully responsive. Professional South African business aesthetic. Fast loading. Accessible. Clear emergency states. SOS button must be extremely obvious but designed to reduce accidental activation. Use professional dashboard cards, tables, maps, status badges, charts and notification panels. Do not overcrowd the interface. PAGES: Landing page Login Register Forgot Password User Dashboard SOS/Emergency Emergency Contacts Incident History Responder Dashboard Responder Incident View Organisation Dashboard Organisation Users Organisation Responders Live Operations Map Incidents Reports Notifications Subscription/Billing Profile Settings Master Admin Dashboard Organisations Platform Users Platform Incidents Audit Logs System Settings Privacy Policy Terms Emergency Disclaimer 404/Error pages LANDING PAGE: Clearly explain: - Personal safety - Family protection - Business security - Emergency response - Live location - Responder management - Organisation dashboards - SaaS benefits Include strong CTA: “Get Started” “Request a Demo” TECHNICAL REQUIREMENTS: Use a maintainable production architecture. Separate frontend, backend/business logic and database access where appropriate. Use reusable components. Use environment variables for all credentials/API keys. Create database migrations/schema. Create seed/demo data only for development and clearly label it. Create proper loading, empty, error and success states. Handle network failures gracefully. Create API endpoints/services for authentication, users, organisations, incidents, locations, notifications and subscriptions. Validate all incoming data. Add logging and audit trails. AI: AI may be used for useful functions such as: - Incident summarisation - Priority/risk assistance - Duplicate/related incident detection - Admin reporting - Natural-language incident summaries But AI must NEVER fabricate emergency events, locations, responders, successful notifications or emergency-service dispatches. Clearly distinguish AI assistance from verified system data. REAL-WORLD READINESS: Build the application so it can be connected to: - Mapbox/Google Maps - Firebase/Auth or equivalent authentication - PostgreSQL/Firestore or equivalent database - Email provider - SMS provider - WhatsApp provider - Push notifications - Payment provider - Emergency/security APIs where legally and technically available Create a clear environment-variable/configuration system and setup documentation showing exactly what credentials are required. QUALITY CONTROL: Before completing: - Test registration/login - Test role permissions - Test tenant isolation - Test SOS creation - Test GPS permission/error handling - Test incident status updates - Test responder assignment - Test live map updates - Test notifications - Test admin workflows - Test mobile responsiveness - Test error handling - Remove broken links/buttons - Remove fake functionality - Remove placeholder claims - Ensure database operations are real IMPORTANT FINAL RULE: Prioritise FUNCTIONALITY over visual mockups. Build the actual application foundation and working workflows first. If an external service requires credentials, implement the integration correctly and show a configuration/setup requirement rather than replacing it with fake data. Brand everything as: MAHLATSE VENTURES LIVESECURE Owned by Mahlatse Ventures South Africa

No preview

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 15

System Requirements Document for mmahlatse-ventures-live-secure

1. Introduction

Mahlatse Ventures LiveSecure is a production-ready SaaS application designed for safety, security, and emergency response. It serves individuals, families, businesses, schools, transport operators, security companies, and organizations in South Africa. The platform allows users to trigger emergencies, share live locations, manage emergency contacts, receive alerts, and enable authorized responders and admins to monitor and respond to incidents. The application is built with real authentication, database, APIs, GPS/location capabilities, notifications, role-based access, and a deployable architecture.

2. System Overview

Mahlatse Ventures LiveSecure is a multi-tenant SaaS platform owned by Mahlatse Ventures. It supports multiple client organizations, each with isolated data, allowing them to register and use the platform independently. The platform includes various user roles such as Master Admin, Organization Admin, Client/User, and Responder, each with specific functionalities. The system emphasizes security, privacy, and real-world readiness, ensuring that all functionalities are backed by real actions and configurations.

Page 2 of 15

2a. Product Interpretation and Delivery Boundary

The application is delivered as a multi-tenant SaaS platform, ensuring tenant isolation and secure data handling. Each organization operates independently, with the platform owner managing overarching system settings and configurations. The application is designed to integrate with real-world services like Mapbox/Google Maps, Firebase/Auth, and various notification and payment providers, ensuring readiness for real-world deployment.

2b. Source Content Inventory

Not applicable as no explicit content_source directive was provided.

2c. Page Content and Component Coverage

Landing Page

  • Information: Overview of personal safety, family protection, business security, emergency response, live location, responder management, organization dashboards, and SaaS benefits.
  • Actions: "Get Started", "Request a Demo".
  • Components: CTA buttons, informational sections, and introductory visuals.

Login

  • Information: User authentication.
  • Actions: Login, Forgot Password.
  • Components: Input fields for username and password, login button, forgot password link.
Page 3 of 15

Register

  • Information: User registration for new accounts.
  • Actions: Register.
  • Components: Input fields for user details, registration button.

Forgot Password

  • Information: Password recovery process.
  • Actions: Submit email for password reset.
  • Components: Input field for email, submit button.

User Dashboard

  • Information: User-specific information and quick access to features.
  • Actions: Navigate to SOS/Emergency, Emergency Contacts, Incident History, Profile, Settings.
  • Components: Dashboard cards, navigation links.

SOS/Emergency

  • Information: Emergency activation and status.
  • Actions: Activate SOS, cancel incident.
  • Components: SOS button, incident status display.

Emergency Contacts

  • Information: Manage emergency contacts.
  • Actions: Add, edit, delete contacts.
  • Components: Contact list, add/edit contact form.
Page 4 of 15

Incident History

  • Information: View past incidents.
  • Actions: Filter incidents by date, type, status.
  • Components: Incident list, filter options.

Responder Dashboard

  • Information: Responder-specific information and incident assignments.
  • Actions: Set availability, view assigned incidents.
  • Components: Availability toggle, incident list.

Responder Incident View

  • Information: Details of assigned incidents.
  • Actions: Accept/decline response, update status, add notes.
  • Components: Incident details, status update options, notes section.

Organisation Dashboard

  • Information: Overview of organization-specific data and incidents.
  • Actions: Manage users, responders, emergency contacts, view incidents.
  • Components: Dashboard cards, navigation links.

Organisation Users

  • Information: Manage organization users.
  • Actions: Add, edit, delete users.
  • Components: User list, add/edit user form.
Page 5 of 15

Organisation Responders

  • Information: Manage organization responders.
  • Actions: Add, edit, delete responders.
  • Components: Responder list, add/edit responder form.

Live Operations Map

  • Information: Map showing active incidents and responder locations.
  • Actions: Filter by status, organization, priority, emergency type.
  • Components: Interactive map, filter options.

Incidents

  • Information: Manage and view incidents.
  • Actions: View details, update status.
  • Components: Incident list, detail view.

Reports

  • Information: Generate and view reports.
  • Actions: Generate report, export data.
  • Components: Report generation form, export options.

Notifications

  • Information: View and manage notifications.
  • Actions: Mark as read, configure settings.
  • Components: Notification list, settings form.
Page 6 of 15

Subscription/Billing

  • Information: Manage subscription and billing details.
  • Actions: Upgrade/downgrade plan, view billing history.
  • Components: Subscription details, billing history list.

Profile

  • Information: Manage personal profile settings.
  • Actions: Edit profile, change password.
  • Components: Profile form, password change option.

Settings

  • Information: Configure account and application settings.
  • Actions: Update settings.
  • Components: Settings form.

Master Admin Dashboard

  • Information: Overview of platform-wide statistics and management tools.
  • Actions: Manage organizations, users, incidents, settings.
  • Components: Dashboard cards, management links.

Organisations

  • Information: Manage client organizations.
  • Actions: Add, edit, delete organizations.
  • Components: Organization list, add/edit organization form.
Page 7 of 15

Platform Users

  • Information: Manage platform users.
  • Actions: Add, edit, delete users.
  • Components: User list, add/edit user form.

Platform Incidents

  • Information: View and manage all incidents across the platform.
  • Actions: View details, update status.
  • Components: Incident list, detail view.

Audit Logs

  • Information: View system audit logs.
  • Actions: Filter logs, export data.
  • Components: Log list, filter options.

System Settings

  • Information: Configure platform-wide settings.
  • Actions: Update settings.
  • Components: Settings form.

Privacy Policy

  • Information: Display privacy policy.
  • Components: Text content.
Page 8 of 15

Terms

  • Information: Display terms of service.
  • Components: Text content.

Emergency Disclaimer

  • Information: Display emergency service disclaimer.
  • Components: Text content.

404/Error Pages

  • Information: Display error messages for unavailable pages.
  • Components: Error message, navigation link.
Page 9 of 15

3. Functional Requirements

  • As a Master Admin, I should be able to securely log in and access a dashboard with live system statistics.
    Provenance: explicit
    Lifecycle: Secure login → Access dashboard → View statistics
    Acceptance: Successful login and accurate display of statistics.

  • As an Organisation Admin, I should be able to manage employees/users within my organization.
    Provenance: explicit
    Lifecycle: Access organisation dashboard → Manage users
    Acceptance: Ability to add, edit, and delete users.

  • As a Client/User, I should be able to trigger an SOS alert and share my live location.
    Provenance: explicit
    Lifecycle: Activate SOS → Share location → Notify responders
    Acceptance: SOS alert is triggered, location is shared, and responders are notified.

  • As a Responder, I should be able to receive nearby emergency alerts and update my status.
    Provenance: explicit
    Lifecycle: Receive alert → Update status
    Acceptance: Alerts are received and status updates are reflected in the system.

  • As a Master Admin, I should be able to manage subscriptions and plans for organizations.
    Provenance: explicit
    Lifecycle: Access subscription management → Update plans
    Acceptance: Subscriptions and plans are updated successfully.

  • As a Client/User, I should be able to view my incident history.
    Provenance: explicit
    Lifecycle: Access incident history → View details
    Acceptance: Incident history is displayed accurately.

  • As a Responder, I should be able to navigate to an incident location.
    Provenance: explicit
    Lifecycle: Accept incident → Navigate to location
    Acceptance: Navigation to the incident location is successful.

  • As a Master Admin, I should be able to export reports.
    Provenance: explicit
    Lifecycle: Generate report → Export data
    Acceptance: Reports are generated and exported successfully.

  • As an Organisation Admin, I should be able to view a live incident map.
    Provenance: explicit
    Lifecycle: Access live map → View incidents
    Acceptance: Live map displays active incidents accurately.

  • As a Client/User, I should be able to manage my emergency contacts.
    Provenance: explicit
    Lifecycle: Access emergency contacts → Manage contacts
    Acceptance: Contacts are added, edited, and deleted successfully.

Page 10 of 15

4. User Personas

Master Admin

  • Context: Oversees the entire platform, managing organizations, users, and system settings.
  • Primary Goal: Ensure smooth operation and management of the platform.
  • Responsibilities: Manage organizations, users, subscriptions, incidents, and system settings.
  • Interactions: Interacts with organization admins and responders to ensure effective incident management.
  • Success: Platform operates efficiently with accurate data and secure access.

Organisation Admin

  • Context: Manages a specific organization's users and incidents.
  • Primary Goal: Ensure the organization's users and responders are effectively managed.
  • Responsibilities: Manage users, responders, emergency contacts, and incidents.
  • Interactions: Works with users and responders to coordinate responses to incidents.
  • Success: Organization operates smoothly with effective incident response.

Client/User

  • Context: Uses the platform for personal safety and emergency response.
  • Primary Goal: Ensure personal safety and quick response in emergencies.
  • Responsibilities: Trigger SOS alerts, manage emergency contacts, view incident history.
  • Interactions: Interacts with responders and organization admins during emergencies.
  • Success: Quick and effective response to emergencies with accurate incident tracking.
Page 11 of 15

Responder

  • Context: Responds to emergencies and manages incident status.
  • Primary Goal: Provide timely and effective response to incidents.
  • Responsibilities: Receive alerts, update status, navigate to incidents, add notes.
  • Interactions: Coordinates with organization admins and users during incident response.
  • Success: Incidents are resolved efficiently with accurate status updates.

5. Core User Flows

5.1 Master Admin: Manage Organisations

  1. Start: Master Admin logs in securely.
  2. Dashboard Access: Access the Master Admin Dashboard.
  3. Manage Organisations: Navigate to the Organisations section.
  4. Action: Add, edit, or delete an organization.
  5. Result: Organisation list is updated.
  6. Continuation: Return to dashboard or manage another section.

5.2 Organisation Admin: Manage Users

  1. Start: Organisation Admin logs in securely.
  2. Dashboard Access: Access the Organisation Dashboard.
  3. Manage Users: Navigate to the Organisation Users section.
  4. Action: Add, edit, or delete a user.
  5. Result: User list is updated.
  6. Continuation: Return to dashboard or manage responders.
Page 12 of 15

5.3 Client/User: Trigger SOS Alert

  1. Start: Client/User logs in securely.
  2. Dashboard Access: Access the User Dashboard.
  3. SOS Activation: Press the SOS button.
  4. Confirmation: Confirm emergency action.
  5. Result: SOS alert is triggered, location is shared.
  6. Continuation: Monitor incident status or cancel alert.

5.4 Responder: Respond to Incident

  1. Start: Responder logs in securely.
  2. Dashboard Access: Access the Responder Dashboard.
  3. Receive Alert: Receive nearby emergency alert.
  4. Action: Accept or decline response.
  5. Navigate: Navigate to incident location.
  6. Update Status: Update status to Dispatched, En Route, Arrived, Resolved.
  7. Result: Incident status is updated.
  8. Continuation: Add notes or return to dashboard.

5.5 Master Admin: Export Reports

  1. Start: Master Admin logs in securely.
  2. Dashboard Access: Access the Master Admin Dashboard.
  3. Reports Section: Navigate to the Reports section.
  4. Generate Report: Select report parameters and generate report.
  5. Export: Export report data.
  6. Result: Report is exported successfully.
  7. Continuation: Return to dashboard or generate another report.
Page 13 of 15

6. Visuals Colors and Theme

  • Muse: Dieter Rams
  • Palette:
    • Background: #F5F5F5
    • Surface: #FFFFFF
    • Text: #333333
    • Primary: #FF8C00
    • Accent: #009688
    • Muted: #BDBDBD
  • Typography:
    • Headings: Work Sans, Medium weight, uppercase, tight tracking
    • Body: Karla
    • Scale: 1.25 modular, 48/36/24/18/16
  • Shape Language: Rounded rectangles for buttons and cards
  • Layout: Dense but ordered grid layout
  • Motion: Instant transitions and feedback
  • Imagery: Diagrammatic elements and map integrations
  • Hero Direction: Full-bleed map with overlayed data panels

7. Signature Design Concept

The landing page features a full-bleed map showcasing active incidents with overlayed data panels. The design uses a warm grey and orange palette to emphasize clarity and urgency. The page includes a highly visible, oversized SOS button in bright orange, ensuring immediate accessibility. The dashboard presents a dual-column layout with live statistics and recent incidents, using modular cards with rounded corners for incident and responder details. A persistent header provides quick access to SOS and profile settings.

Page 14 of 15

8. Interaction Model & Motion Direction

  • Interaction Model: Static
  • Motion Tempo: Restrained
  • Hero Dimensionality: Flat
  • Landing Hero Motion Brief: The focal subject is a full-bleed map showing active incidents. The transformation involves overlaying data panels with incident details. The outcome is a clear and urgent presentation of emergency data. The motion vocabulary includes instant transitions and feedback, with a composed first frame and a reduced-motion state for accessibility.

9. Non-Functional Requirements

  • Security: Implement secure authentication, password hashing, role-based access control, tenant isolation, server-side authorization, input validation, rate limiting, audit logging, secure environment variables, and session security.
  • Privacy: Treat location and emergency information as sensitive, provide privacy/consent settings, and account deletion/data-management capability.
  • Performance: Ensure fast loading and responsive design.
  • Scalability: Support multi-tenant architecture with isolated data for each organization.
  • Reliability: Handle network failures gracefully and provide proper error handling.

10. Tech Stack

  • Frontend: React
  • Backend: Python/FastAPI
  • Database: PostgreSQL
  • Authentication: Firebase/Auth
  • Mapping: Mapbox/Google Maps
  • Notifications: Integration-ready for email, SMS, WhatsApp, and push notifications
  • Deployment: Docker, Kubernetes (if required)
Page 15 of 15

11. Assumptions and Constraints

  • Assumptions:
    • Organizations will provide necessary credentials for third-party integrations.
    • Users will have devices capable of supporting GPS and notifications.
  • Constraints:
    • Must comply with South African data protection regulations.
    • Integration with emergency services is dependent on available APIs and legal permissions.

12. Glossary

  • SaaS: Software as a Service
  • SOS: Emergency alert system
  • GPS: Global Positioning System
  • API: Application Programming Interface
  • Tenant: An independent client organization using the platform
  • Responder: An individual responsible for responding to emergencies
  • Incident: An emergency event requiring response

No completed page designs yet.

Completed design pages will appear here when they are ready to preview.

Landing Page: View platform overview
Privacy Policy: Review privacy policy
Terms: Review terms of service
Register: Create user account
Login: Log in securely
Forgot Password: Recover forgotten password
User Dashboard: View personal dashboard
Emergency Contacts: Add emergency contact
SOS/Emergency: 1. Press SOS button
Emergency Disclaimer: 2. Acknowledge emergency disclaimer
SOS/Emergency: 3. Confirm emergency action
404/Error Pages: 4. View GPS permission error
SOS/Emergency: View live incident status
SOS/Emergency: Cancel incident confirmed
Incident History: View past incidents
Notifications: View emergency alerts
Profile: Edit personal profile
Settings: Update security settings

No completed page designs yet.

Completed design pages will appear here when they are ready to preview.

Landing Page: View platform overview
Privacy Policy: Review privacy policy
Terms: Review terms of service
Register: Create user account
Login: Log in securely
Forgot Password: Recover forgotten password
User Dashboard: View personal dashboard
Emergency Contacts: Add emergency contact
SOS/Emergency: 1. Press SOS button
Emergency Disclaimer: 2. Acknowledge emergency disclaimer
SOS/Emergency: 3. Confirm emergency action
404/Error Pages: 4. View GPS permission error
SOS/Emergency: View live incident status
SOS/Emergency: Cancel incident confirmed
Incident History: View past incidents
Notifications: View emergency alerts
Profile: Edit personal profile
Settings: Update security settings