Apercu du projet
Executive Summary We are seeking an independent freelance mobile developer to build a cross-platform mobile application for Al-tajaddod (التجدد), a Lebanese political movement. The app serves as a central hub for news, policy research, community forums, interactive candidate mapping, and basic member engagement. The goal of this project is simplicity, high performance, and rapid deployment. We want a clean, straightforward app using standard mobile components, maintaining a primary Royal Purple visual theme. 2. Core Scope & Key Architecture Rules Target Platforms: iOS & Android (Cross-platform framework required, e.g., Flutter or React Native). Languages: Dual Language — English (EN) and Arabic (AR). Must support native Right-to-Left (RTL) layout mirroring when Arabic is selected. Dynamic in-app language toggle without restarting the app. Store Compliance (Guideline 3.1.1): NO In-App Purchase (IAP) SDKs, payment processing, or license code entry fields inside the app. Membership payments occur on our official website. The mobile app simply checks a backend API boolean flag (is_verified_party_member) on user login to unlock member features. Security & Data Privacy: TLS 1.3 encryption in transit, standard HTTPS REST endpoints, basic data minimization, and secure token storage. 3. Simplified User Roles (RBAC) The app utilizes standard role-based controls: Guest: Browses public news, research documents, and district maps without logging in. Registered User: Logs in to access basic community forums, event RSVPs, and interactive swipe feedback. Verified Member: Automatically identified via backend sync (web-paid). Unlocks an in-app digital membership card and internal opinion polls. Admin / Staff: Accesses basic back-office controls to moderate posts, publish content, and manage candidate applications. 4. Key Functional Modules to Build 4.1 Onboarding & User Profile Sign-Up Flow: Email/Password registration, standard social login options (Google, Apple ID). Registration Form Fields: Name, Date of Birth, City/Country, Place of Birth, and Lebanese Electoral District (Caza/Mohafazah). User Profile Page: Displays member badge status and an embedded digital QR pass for verified members. Includes an external web link opening the official party website in a web browser for membership renewals. 4.2 Research & Policy Hub ("Information & Studies") Basic PDF document list with dynamic tags (Economy, Governance, Decentralization). Built-in standard PDF viewer to read reports directly within the application. Standard native share button to forward links via WhatsApp or social media. 4.3 Simplified Voting & Feedback Hub Program Proposals (Tinder-Style Swiping): Simple swipe UI where users can swipe Right (Agree) or Left (Disagree) on individual political platform proposals. Includes a comment thread under each card. Consultation Polls: Basic multiple-choice survey module reserved for Verified Members to give feedback on local issues. Basic General Assembly (AG) Governance: A simple digital poll page for authorized accounts. Standard 1-user-1-vote backend check with a countdown timer and basic result breakdown (no complex cryptographic voting engine required). 4.4 Electoral District Map & Candidacies Interactive vector map of Lebanon divided into official Caza electoral districts. Tapping a district displays candidate profiles and platform bios. Basic submission forms ("Run for Office" / "Apply for Leadership") that submit standard form entries to the backend dashboard. 4.5 Events & Community Forums Events Page: List or Map view of upcoming party events with a single-tap "RSVP" button. Forum: Simple message board categorized by topics with standard user post creation and a "Report" button on flagged content. 4.6 Basic Admin / Staff Web Dashboard A lightweight web interface for administrators to: Review reported forum posts and delete/mute users. View, filter, and update candidate applications. Manually toggle General Assembly voting access on or off for specific user accounts.
