Skip to main content

Documentation Index

Fetch the complete documentation index at: https://grantmaster.dev/llms.txt

Use this file to discover all available pages before exploring further.

Impact / M&E Extension

StatusUpdatedCovered Files
🟢 Stable2026-02-22extensions/impact/, extensions/impact/manifest.ts, features/impact/, types/impact.ts

Overview

The Impact extension (also known as “M&E” — Monitoring & Evaluation) is the largest and most complex extension in the marketplace (64 files). It provides comprehensive impact measurement, indicator tracking, data collection (including KoboToolbox integration), AI anomaly detection, and theory of change visualization.

Key Capabilities

CapabilityDescription
Indicator LibraryPre-built + custom M&E indicators with targets, baselines, and data sources
Data CollectionManual entry, bulk import, KoboToolbox field data integration
Target TrackingMulti-period targets with progress visualization
Anomaly DetectionAI-powered detection of data anomalies and outliers
Theory of ChangeVisual theory of change builder and tracker
Impact ReportingAutomated impact report generation
SDG AlignmentMap indicators to Sustainable Development Goals
Beneficiary TrackingBeneficiary demographics, reach, and outcome measurement

Manifest

The Impact extension registers with the following manifest configuration:
FieldValue
idimpact
nameImpact Visualizer
categoryIMPACT
codeDirectoryme (maps to src/modules/me/)
manifestVersion2

Access Control

FieldValue
Included in tiersProfessional, Enterprise
Required permissionsVIEW_ME, MANAGE_ME_LIBRARY, APPROVE_ME_DATA (11 granular permissions total)
Feature gatesFeature flags for indicator management, data collection, reporting

Data Collections

CollectionUninstall PolicyDescription
meIndicatorsretainIndicator definitions and configurations
meDataPointsretainCollected measurement data
meTargetsretainTarget values and periods
meSubmissionsretainKobo and manual data submissions

Architecture

┌─────────────────────────────────────────────────────────┐
│  Impact Layout (entry point)                            │
│  Tab-based navigation: Dashboard, Indicators, Data,     │
│  Reports, Settings                                      │
├─────────────────────────────────────────────────────────┤
│  Indicator Management                                   │
│  Library, custom indicators, SDG mapping, targets       │
├─────────────────────────────────────────────────────────┤
│  Data Collection Layer                                  │
│  Manual entry, bulk import, Kobo webhooks               │
├─────────────────────────────────────────────────────────┤
│  Analysis & Detection                                   │
│  Trend analysis, AI anomaly detection, quality scoring  │
├─────────────────────────────────────────────────────────┤
│  Reporting & Visualization                              │
│  Theory of change, impact dashboards, export            │
└─────────────────────────────────────────────────────────┘

Indicator System

Indicator Types

TypeDescription
OutputDirect deliverables (e.g., “trainings conducted”)
OutcomeMedium-term changes (e.g., “skills improved”)
ImpactLong-term systemic change (e.g., “poverty reduced”)
ProcessOperational metrics (e.g., “response time”)

Indicator Configuration

interface MEIndicator {
  id: string;
  organizationId: string;
  name: string;
  description: string;
  type: 'output' | 'outcome' | 'impact' | 'process';
  unit: string;                     // e.g. 'people', 'percentage', 'USD'
  direction: 'increase' | 'decrease';
  baseline?: number;
  targets: IndicatorTarget[];       // Multi-period targets
  dataSource: 'manual' | 'kobo' | 'calculated';
  sdgGoals?: number[];              // Linked SDG numbers (1-17)
  projectIds?: string[];            // Linked projects
  grantIds?: string[];              // Linked grants
  frequency: 'daily' | 'weekly' | 'monthly' | 'quarterly' | 'annually';
  isActive: boolean;
}

KoboToolbox Integration

Data Flow

KoboToolbox Form Submission

    ├── Webhook → Cloud Function
    │       └── Validate + parse submission

    ├── Map form fields to indicators
    │       └── Field mapping configuration

    ├── Create data points
    │       └── Linked to indicators + projects

    └── Anomaly detection
            └── AI checks for outliers

Configuration

Each Kobo form is mapped to indicators via a field mapping:
interface KoboFormMapping {
  formId: string;
  formName: string;
  fieldMappings: Array<{
    koboField: string;        // Kobo question ID
    indicatorId: string;      // Target indicator
    transformFn?: string;     // Optional transformation
  }>;
}

AI Anomaly Detection

The anomaly detection system uses Gemini to identify suspicious data patterns:
CheckDescription
Statistical outliersValues beyond 3 standard deviations from mean
Temporal anomaliesSudden spikes or drops in time-series data
Consistency checksCross-indicator logical validation
Duplication detectionIdentical submissions from same source/time

Alert Flow

  1. New data point enters the system
  2. Statistical checks run immediately
  3. AI analysis runs on batch (hourly)
  4. Flagged anomalies create review tasks
  5. Approved data points are marked as verified

Dashboard Widgets

The Impact extension contributes widgets to the Mission dashboard tab:
WidgetDashboardDescription
impact-metrics-summaryMissionKey M&E metrics overview
theory-of-change-trackerMissionInteractive theory of change visualization
beneficiary-reachMissionBeneficiary demographics and reach
sdg-alignment-dashboardMissionSDG progress mapping
strategic-impact-radarMissionMulti-dimensional impact radar chart
mission-pillar-progressMissionProgress against mission pillars

Permissions (11 Granular)

PermissionDescription
VIEW_MEView indicators and data
MANAGE_ME_LIBRARYCreate/edit indicator library
MANAGE_ME_DATAEnter and edit data points
APPROVE_ME_DATAApprove submitted data
MANAGE_ME_TARGETSSet and modify targets
MANAGE_ME_REPORTSGenerate and export reports
MANAGE_ME_KOBOConfigure Kobo integration
MANAGE_ME_ANOMALIESReview and resolve anomalies
MANAGE_ME_SETTINGSExtension configuration
DELETE_ME_DATADelete data points
ADMIN_MEFull extension control

Key Files Reference

FilePurpose
src/extensions/impact/manifest.tsExtension manifest declaration
src/modules/me/Impact module code directory
src/features/impact/index.tsFeature barrel export
src/extensions/impact/contracts.tsM&E type definitions
functions/src/api/routers/compliance.tsServer-side M&E data endpoints
src/components/widgets/mission/Mission tab dashboard widgets