Flutter App Refactoring and Hardening

Job ID: 39852767

Budget: $15 – $25 USD

We are looking for an experienced Flutter developer to refactor and secure our existing marketplace app. The goal is to bring the codebase to a professional 10/10 level before continuing with new features.

This contract covers Phase 0 and Phase 1, fixed at 60 hours total, with a deadline on 24.10.2025. No extra hours will be accepted.

Work must follow acceptance criteria and be delivered in separate pull requests, with the full updated source code included in each milestone. In addition, every milestone must provide a working build (APK for Android, and TestFlight for iOS if possible) so the changes can be verified before releasing payment.

Scope of Work (60h total):

Phase 0 — Setup & Audit (10h)

1. Apply strict linting rules and set up CI pipeline (Flutter analyze + tests). (5h)

2. Dependencies audit and secret check (remove overrides, ensure no sensitive keys in client). (5h)

Phase 1 — Core Security & Stability (50h)

1. Chat sanitization: block phone numbers, emails, and URLs in input/output, remove Linkify clickable, add warning message. (10h)

2. Payments: audit Stripe flow to confirm ephemeral keys, remove Braintree/Paystack, ensure no Stripe secret keys in client. (12h)

3. Dependencies cleanup: update critical packages (Firebase, Stripe, intl), align with Dart 3.8, remove unused libs. (8h)

4. Large files refactor into smaller components/services without changing UX:

router.dart (~1000 lines) → split routes per feature

ps_api_service.dart (~2400 lines) → split into service classes

utils.dart (~2000 lines) → split utilities by domain

entry_data/core_and_custom_field_entry_view.dart (~3900 lines) → split into widgets/components
(20h)

Milestones:

1. Phase 0 complete (10h)

2. Chat sanitization (10h)

3. Payments refactor (12h)

4. Dependencies cleanup (8h)

5. Large files refactor (20h)

Each milestone will only be released once acceptance criteria are met and verified.

Conditions:

- Hourly rate contract with fixed total of 60h.

- Total capped at 60h, no extra hours under any condition.

- Delivery deadline: 24.10.2025.

- For every day past the deadline, a 20% penalty will be applied to the total milestone payment.

- Payment only after acceptance criteria are fully verified.

- Long-term collaboration possible if this Project is successful (additional 90–110h).

Requirements:

- Strong portfolio in Flutter apps (marketplaces or e-commerce preferred).

- Proven experience with Stripe integration (ephemeral keys, PaymentSheet).

- Ability to refactor large codebases and apply strict linting/CI.

- Clear communication in English.