4leggedIT
4leggedIT
Portal Planning Docs

Portal RFC 0.1 — Overview

Human-readable (non-technical)
Use this page to understand the story, decisions, and why the work matters.
Technical building data
Use this page to implement: entities, rules, workflows, and required behaviors.
Last updated: Feb 8, 2026

Summary

  • Mobile-first “source of truth” for field-heavy rescues: monitoring → custody → outcomes.
  • Volunteer operations: routes, check-ins, tasks, clinic coordination, redacted external portals.
  • All stray locations are Sensitive by default; coordination remains usable via Location aliases.

New readers: start with the glossary.

Context / Problem

We need an easy-to-use portal for a nonprofit rescue that acts as the source of truth for animals, supporting both:

  • Monitoring strays without custody (feeding routes, sightings, map-based context, sensitive location handling)
  • Temporary or full custody (medical, foster placements, adoption)

It must also handle multiple contact types (fosters, adopters, owners, reporters, feeders, vets, volunteers) and support custom applications + approvals, tasks, reporting, and one-way publishing to adoption listing registries (Petfinder, Adopt-a-Pet, etc.).

The rescue also operates “boots-on-the-ground” with a focus on feeding routes, spay/neuter, and partner networking (rescue/vet partners), so the system should support field coordination as a first-class workflow.

Target audiences (initial)

  • Rover’s Return Dog Rescue (roversreturndogrescue.org)
  • Feeding Perris Strays (feedingperrisstrays.org)

Both groups emphasize field operations (feeding, monitoring, trapping), coordination with clinics/partners, and volunteer-driven execution. The portal should be optimized for mobile use and low-friction data capture in the field.

Goals

  • Track animals end-to-end with a complete timeline: sighting → custody → foster → adoption/transfer/RTF/etc.
  • Store medical + identifiers (microchip) with attachments and a clear audit trail.
  • Support many contacts per animal with roles and history (start/end dates).
  • Provide configurable applications (adoption + foster) and a customizable approval workflow.
  • Support an interim mode that embeds external forms (e.g., JotForm) while migrating to a native form builder.
  • Provide an external portal for fosters/adopters to view a redacted animal record; fosters can add notes/uploads.
  • Provide map-first tools for strays (pins, optional areas/polygons, photos).
  • Support location alias names (volunteer-known place names) in addition to coordinates/photos.
  • Provide a task system (custom tasks, assignments, due dates) and a “route for feeding strays” feature.
  • Support volunteer management (skills, onboarding, assignments, scheduling for routes/transports/events).
  • Support lost dog recovery / field trapping cases (feeding stations, trail cameras, humane traps, sightings, and owner coordination).
  • Support community aid workflows (food/supplies/basic care) for low-income and unhoused owners.
  • Support microchip scanning + lookup (identify the right registry) and keep registration current.
  • Microchip lookup tool: AAHA Universal Pet Microchip Lookup Tool (used to identify the registry for a chip ID).
  • Push “listing-ready” animals to adoption listing registries (one-way) with sync logs (Petfinder, Adopt-a-Pet, etc.).

Non-goals (for MVP)

  • Multi-organization/chapter data separation
  • Two-way sync from listing registries (Petfinder, Adopt-a-Pet, etc.)
  • Fully offline mobile app (optimize for mobile web first; add offline later if needed)
  • A general-purpose CRM replacement (support core contact management, but not full fundraising)

Users & Jobs-to-be-Done

  • Coordinators / Case managers: run custody transitions, assign tasks, manage placements, finalize outcomes.
  • Medical: update treatments, due items, and upload records/invoices.
  • Foster coordinator: manage foster applications, placements, capacity, and follow-ups.
  • Volunteers / feeders: run routes, add sightings, record check-ins, complete assigned tasks.
  • Fosters (external): view approved animal info, add foster notes (behavior/medical observations), upload photos/docs.
  • Adopters (external): view adopted animal record (redacted), receive documents.
  • Auditors (internal read-only): review timelines, decisions, and audit logs.

Key Concepts

  • Custody state: Monitoring (no custody) vs In custody vs Outcome.
  • Sensitive case: restrict exact location and internal notes (default for monitoring strays).
  • Animal timeline: everything is an Event (sighting, medical, placement, decision, outcome).
  • Relationships: animals can have many contacts simultaneously (foster + feeder + reporter + vet).

MVP Scope (Phase 1)

  1. Animals (dogs + cats) + identifiers + photos/docs + timeline events
  2. Medical records (vaccines/meds/visits) + reminders
  3. Contacts with roles + animal↔contact relationships (many-to-many) + history
  4. Foster placements (start/end) + foster portal (redacted view + foster notes/uploads)
  5. Applications (adoption + foster) with a simple form builder + stage workflow + decisions log
  6. Tasks (custom task types, assignments, due dates, comments, attachments)
  7. Stray monitoring: sightings with GPS + photos, last-seen map, optional area/territory polygons
  8. Feeding routes: route stops with GPS + scheduled runs + check-ins
  9. Volunteer management (lightweight): volunteer profiles (as contacts), skills, onboarding status/waivers, assignment to tasks/routes
  10. Lost dog recovery cases (lightweight): request intake, tasks, sightings, equipment (trap/camera) tracking, outcomes
  11. Resource library (lightweight): shareable guides/PDFs for adopters/fosters/volunteers
  12. Reporting: per-animal export (timeline + identifiers + medical) + operational summaries

Additional program workflows (worth considering early)

  • Spay/neuter appointment coordination: scheduling, confirmations, transport tasks, outcomes
  • Partner network referrals/transfers: which rescue is taking which animal, status and handoff details
  • Supply tracking (optional): food distribution, trap inventory, medication pickup/delivery
  • Donation & in-kind support (optional): wish-list items received, sponsorships, receipts/acknowledgements

Phase 2+ (later)

  • Listing registry one-way push + readiness checks + sync logs
  • E-sign provider integration for foster/adoption contracts
  • SMS/email provider integration for notifications
  • Advanced workflow builder (conditional stages, branching)
  • Heatmaps (if sighting volume makes it worthwhile)

Open Questions (resolve early)

  • What constitutes “Sensitive” by default: all Monitoring animals, or a per-animal flag?
  • What roles get external portal access beyond fosters/adopters (e.g., feeders)?
  • What minimum fields/photos are required for: (a) stray record, (b) listing readiness (Petfinder/Adopt-a-Pet/etc.)?
  • Should location aliases be global (org-wide) or route-specific (different teams use different names)?
  • Do we need volunteer scheduling (shifts) for events/transports in MVP, or start with tasks only?
  • Which documents must be templated first (foster contract, adoption contract, medical release, etc.)?
  • Data import: what spreadsheet columns exist and what is “good enough” for matching/deduping?

Success Metrics (initial)

  • Time to create a new stray monitoring record: under 2 minutes (mobile).
  • Time to process an application to decision: reduced vs current baseline.
  • Per-animal export completeness: 95%+ (identifiers + medical + timeline present).
  • Fewer lost handoffs: tasks and placements capture “what’s next” clearly.

Change Log

  • v0.1 (2026-02-08): Initial draft based on team inputs and constraints