Skip to content
This repository was archived by the owner on May 17, 2026. It is now read-only.

Repository files navigation

FalconWatch

A national security intelligence platform for the Nigerian government. Built with Next.js 15, featuring real-time incident tracking, satellite imagery integration, and drone coordination capabilities.

Features

  • Incident Management - Report, track, and manage security incidents across Nigeria
  • Interactive Map - Real-time visualization of incidents on an interactive Nigeria map
  • Satellite Integration - Planet.com API integration for satellite imagery surveillance
  • Drone Coordination - Mock deployment workflow for drone response coordination
  • Dashboard Analytics - Statistics and overview of security situation

Tech Stack

  • Framework: Next.js 15 (App Router)
  • Mapping: Leaflet
  • Satellite API: Planet.com
  • Database: In-memory (Supabase optional)
  • Styling: Tailwind CSS
  • Language: TypeScript

Quick Start

Prerequisites

  • Node.js 18+
  • npm
  • Planet.com API key (for satellite features)

Installation

# Install dependencies
npm install

# Copy environment variables
cp .env.example .env.local

# Start development server
npm run dev

Open http://localhost:3000 to view the application.

Environment Variables

Create .env.local:

# Planet.com Satellite API
PLANET_API_KEY=your_planet_api_key

# App Configuration
NEXT_PUBLIC_APP_NAME=FalconWatch
NEXT_PUBLIC_URL=http://localhost:3000

# Optional: Supabase (for persistent storage)
# NEXT_PUBLIC_SUPABASE_URL=
# NEXT_PUBLIC_SUPABASE_ANON_KEY=

# Optional: OpenAI (for future AI features)
# OPENAI_API_KEY=

Project Structure

app/
├── api/
│   ├── incidents/      # Incident CRUD operations
│   ├── satellite/      # Planet.com satellite search
│   ├── drone/          # Mock drone deployment
│   └── stats/          # Dashboard statistics
├── components/
│   ├── NigeriaMap.tsx
│   ├── IncidentCard.tsx
│   ├── IncidentForm.tsx
│   ├── SatellitePanel.tsx
│   ├── DroneDeployButton.tsx
│   └── CommandSidebar.tsx
├── dashboard/          # Main command center
├── incidents/          # Incident pages
│   ├── new/            # Report new incident
│   └── [id]/           # Incident detail
└── admin/              # System settings
lib/
├── planet-api.ts       # Planet.com integration
├── incident-service.ts # Incident storage
├── drone-service.ts    # Drone operations
└── nigeria-geo.ts      # Geographic utilities
types/
├── incidents.ts
├── satellite.ts
└── drone.ts

Pages

Route Description
/ Landing page
/dashboard Main command center with map and stats
/incidents Incident list with filters
/incidents/new Report new incident
/incidents/[id] Incident detail view
/admin System settings

Incident Types

  • Kidnapping/Hostage
  • Armed Robbery
  • Border Incursion
  • Pipeline Vandalism
  • Bandit Activity
  • Cattle Rustling
  • Terrorism
  • Other Security Threat

Severity Levels

Level Color Description
Critical Red Immediate response needed
High Orange Urgent attention required
Medium Yellow Standard response
Low Green Monitor situation

Scripts

npm run dev        # Start development server
npm run build      # Build for production
npm run lint       # Run ESLint

Deployment

Vercel

  1. Push to GitHub
  2. Import project in Vercel
  3. Add environment variables
  4. Deploy

License

MIT

About

FalconWatch - Eyes in the Sky. Intelligence on the Ground. Software for government threat detection and response.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages