Skip to main content

Product Roadmap

Non-AI features ordered by commercial priority. AI features live in the separate AI Roadmap.

Near-term (next 30 days)

1. AWS SES email delivery

Owner digests, team invites, contractor magic links all currently require manual URL sharing. SES wiring = proper deliverability + DKIM + reply-to. ~1 day of work; the delay is DNS + AWS SES account production-access approval.

2. Permanent contractor demo endpoint

Today the landing-page contractor demo runs off a Cloudflare tunnel from the founder's laptop. A permanent /api/v1/jobs/demo endpoint on app.pmfriend.com removes the laptop dependency. ~2 hours.

3. Proper logo file upload

Today Settings → Agency profile → logo URL is paste-in. Replace with a file picker + S3 upload + public-read presigned URL. ~4 hours.

4. Stripe billing

$7/property/month, $299 minimum, 60-day pilot auto-converts. ~2-3 days. Includes Settings → Billing page, webhook handlers, admin invoice view, cancellation flow.

Medium-term (30-90 days)

5. Tenant mobile app (React Native / Expo)

Matches the "30-second submission" pitch from the landing page. Optional channel on top of the /report/{token} QR flow, not a replacement. Real-time push for "your report was received / dispatched / completed". ~1 week.

6. PropertyMe one-way sync (nightly)

See PropertyMe Sync for detail. 3–5 days.

7. Apple SSO

Blocked on Apple Developer Service ID + signing key setup. ~½ day once credentials are in hand.

8. Photo-based triage (Claude vision)

Tenant uploads a photo from the /report/{token} page → Claude vision classifies severity + category. Blocked on photo upload infra being wired into the report page. ~2 days after unblock.

9. User-routed notifications — ✅ SHIPPED

Notifications now split into "Assigned to me" vs "All in agency" tabs. Per-user read + dismiss state (V20 migration adds notification_reads(notification_id, user_id, ...) table). The Hibernate listener captures the acting PM from SecurityContextHolder and assigns the notification to them; background scanner events stay agency-wide. The sidebar badge counts unread for the calling user only.

Full detail: Team & Settings → Notifications.

Longer-term (90+ days)

10. Data-residency migration to Sydney (ap-southeast-2)

Move primary RDS + S3 to ap-southeast-2. Requires a coordinated database cutover. Needed for agencies with hard AU-data-residency requirements. ~1 week planning + downtime window.

11. Infrastructure rename (mypmfriend-*pmfriend-*)

ECR, App Runner, IAM, S3, RDS physical names still say mypmfriend from the pre-rebrand days. Cosmetic for now; worth doing ahead of any external audit. ~2-4 hours with a short downtime.

12. PropertyTree + Console one-way syncs

Same shape as PropertyMe sync. Prioritised by pilot demand.

13. Tenant portal (optional)

A minimal owner/tenant login if a specific pilot asks. Currently deprioritised — the /report/{token} QR flow + magic-link contractor pattern covers 95% of the workflows. Opening a new auth surface is high-effort, low-value compared to the AI roadmap.

14. SOC 2 / ISO 27001

After material ARR. Adds audit overhead + marketing trust.

Items that keep getting suggested but aren't happening

  • Two-way PropertyMe sync. Would require us to push into PropertyMe's trust accounting, which breaks the "sit beside, never replace" principle. One-way is final design.
  • Replace PropertyMe. Same reasoning. Not our lane; not our regulatory mandate.
  • AU sales CRM / realestate.com.au vacancy listing. Out of scope.
  • Autonomous anything. Every AI-drafted comm goes through PM review. Non-negotiable.

See also