Skip to content

Obelus-Labs-LLC/WeThePeople

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

372 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WeThePeople

WeThePeople

Follow the money from industry to politics.

wethepeopleforus.com  |  @WTPForUs  |  Sponsor

Vercel FastAPI React Python Sectors Research Tools Data Sources


What is this?

WeThePeople is an open-source civic transparency platform that tracks how corporations lobby Congress, win government contracts, face enforcement actions, trade stocks alongside legislators, and donate to politicians. It pulls from 40+ government APIs and covers 9 sectors: Politics, Finance, Health, Technology, Energy, Transportation, Defense, Chemicals, and Agriculture — plus all 50 states. 537 politicians and 1,000+ companies tracked. Every data point links back to its authoritative public source.


The Ecosystem

Platform Status Description
WeThePeople Live The core lobbying and influence tracker. Congressional trades, money flows, enforcement actions, lobbying filings, government contracts. 1,000+ tracked entities across 9 sectors.
WTP Research Live 15 deep-dive research tools: patent explorer, drug lookup, clinical trials, insider trades, FDA recalls, toxic releases, foreign lobbying (FARA), revolving door tracker, campaign finance, government salaries, bill text analysis, market movers, regulatory news, earmarks tracker.
The Influence Journal Live AI-generated data investigations powered by 20 detection patterns. STOCK Act violations, committee-stock conflicts, enforcement immunity, penalty-to-contract ratios, FARA foreign lobbying, chemical enforcement, agriculture subsidies, cross-sector donors, enforcement decline. 30+ published stories with verification pipeline.
Mobile App In development iOS and Android via Expo. 40+ screens covering all 9 sectors, congressional trades, ZIP lookup, stories, anomalies, state explorer, influence network, chat agent, and company comparison. Available via Expo Go during preview.

Key Features

  • 9 Sectors — Politics, Finance, Health, Technology, Energy, Transportation, Defense, Chemicals, and Agriculture — plus State-level data across all 50 states
  • 15 Research Tools — Patent Explorer, Drug Lookup, Clinical Trials, Insider Trades, FDA Recall Search (food/drug/device), Toxic Release Inventory, Foreign Lobbying (FARA), Revolving Door Tracker, Campaign Finance, Government Salaries, Bill Text Analysis, Market Movers, Regulatory News, Earmarks Tracker
  • Influence Network Graph — Interactive force-directed visualization mapping connections between politicians, companies, donations, lobbying, and legislation
  • Congressional Trade Tracker — 4,600+ stock trades parsed from official House financial disclosure PDFs, with filing delay indicators and virtual scrolling
  • Spending Choropleth Map — Interactive US map showing lobbying spend, donations, and political activity by state
  • Money Flow Sankey Diagrams — Trace how money flows from companies through lobbying and PAC donations to specific politicians
  • Claim Verification Pipeline — Submit any political claim; the system extracts assertions and matches them against 9 data sources (votes, trades, lobbying, contracts, enforcement, donations, committees, SEC filings, legislative actions). Enterprise-gated.
  • AI Chat Agent — 3-tier resolution: client-side FAQ, response cache, then Claude Haiku for complex questions
  • 20 Story Detection Patterns — STOCK Act violations, committee-stock conflicts, lobbying spikes, contract windfalls, enforcement gaps, bipartisan buying, penalty-to-contract ratios, prolific traders, enforcement immunity, revolving door, regulatory arbitrage, trade clusters, trade timing, full influence loops, FARA foreign lobbying spikes, chemical enforcement ratios, agriculture subsidy-to-lobbying, cross-sector donors, enforcement decline, regulatory capture
  • Story Verification Pipeline — Auto-verifies AI-generated stories against 9 data sources before publishing. Green/yellow/gray verification badges.
  • Anomaly Detection — Flags unusual patterns: trades near committee votes, lobbying spend spikes before contract awards, enforcement timing gaps, donation surges
  • Closed-Loop Influence Detection — Identifies complete influence cycles: company lobbies on bill, bill goes to committee, company donates to committee members
  • FARA Foreign Lobbying — 7,000+ registrants, 17,000+ foreign principals, 44,000+ agents from DOJ FARA database. Search by country, registrant, or agent.
  • Zip Code Lookup — Enter your ZIP, see your district-specific representative (not all state reps): trades, donors, committee conflicts. Uses house.gov district mapping.
  • Earmarks Tracker — Search congressionally directed spending from USASpending.gov by state, keyword, or member name
  • Weekly Digest — Subscribe by ZIP code. Get a preview of your representatives' trades, votes, and flagged anomalies.
  • Twitter Bot@WTPForUs posts 4x/day with data-driven story excerpts, linking to full journal investigations. Auto-quote-tweets political news from monitored accounts with relevant WTP data.
  • CSV Export — Export any data table (lobbying, contracts, enforcement, trades) for your own analysis
  • AI Summaries — Claude-powered plain-English summaries of votes, enforcement actions, and politician profiles

Architecture

Backend:    FastAPI + SQLite (WAL mode, 4.1 GB)
            25 routers, 39 connectors, 45+ jobs
            Versioned API (/v1/), rate limiting, structured logging
            JWT auth, RBAC, request tracing, security headers

Frontend:   React 19 + Vite + TypeScript + Tailwind CSS 4
            80+ pages (all code-split via React.lazy)
            3 sites: main, research, journal

Mobile:     Expo SDK 54 + React Native
            40+ screens, all 9 sectors + tools

Infra:      Hetzner Cloud (ARM, $3.99/mo) + Vercel
            Let's Encrypt TLS, GitHub Actions CI
            Prometheus metrics endpoint

Monorepo Layout

WeThePeople/
├── main.py                  # FastAPI app + middleware + router mounting
├── routers/                 # 25 API routers (one per sector + cross-cutting)
├── connectors/              # 39 API wrappers (Congress.gov, SEC, FDA, EPA, FARA, Finnhub, ...)
├── jobs/                    # 45+ sync scripts, migrations, scheduler, Twitter bot
├── models/                  # 16 model files (per-sector pattern + auth, FARA, stories)
├── services/                # Business logic (claims pipeline, influence graph, auth)
├── middleware/               # Request tracing, security headers
├── frontend/                # React 19 + Vite web app
│   └── src/
│       ├── pages/           # 80+ page components
│       ├── components/      # Shared UI (InfluenceGraph, ChoroplethMap, ChatAgent, ...)
│       ├── api/             # TypeScript API clients per sector
│       └── layouts/         # Per-sector layout wrappers
├── sites/
│   ├── research/            # WTP Research site (15 tools)
│   ├── journal/             # The Influence Journal (data stories)
│   └── shared/              # Shared components across sites
├── mobile/                  # React Native / Expo (40+ screens, all 9 sectors)
├── deploy/                  # Docker, deploy scripts, TLS docs
└── tests/                   # Backend test suite

Data Sources (40+)

All data is sourced from official government APIs and open-source datasets. No scraped or paywalled data.

Source Data Link
Congress.gov API Bills, votes, sponsors, legislative actions api.congress.gov
Senate LDA Lobbying disclosures (2020-present) lda.senate.gov
USASpending.gov Federal government contracts usaspending.gov
Federal Register Enforcement actions, rules, presidential documents federalregister.gov
FEC Campaign donations, PAC disbursements fec.gov
SEC EDGAR Corporate filings (10-K, 10-Q, 8-K, Form 4) sec.gov/edgar
House Clerk Disclosures Congressional financial disclosure PDFs (primary trade source) disclosures-clerk.house.gov
Finnhub Congressional trades (backup source) finnhub.io
OpenFDA Product recalls, drug data open.fda.gov
ClinicalTrials.gov Clinical trial pipelines clinicaltrials.gov
CMS Open Payments Industry payments to physicians openpaymentsdata.cms.gov
USPTO PatentsView Patent filings and claims patentsview.org
EPA GHGRP Greenhouse gas emissions by facility epa.gov/ghgreporting
NHTSA Vehicle recalls, complaints, safety ratings nhtsa.gov
FuelEconomy.gov MPG and emissions data fueleconomy.gov
FDIC BankFind Bank quarterly financials banks.data.fdic.gov
FRED Federal Reserve economic indicators fred.stlouisfed.org
Alpha Vantage Stock fundamentals and quotes alphavantage.co
OpenStates State legislators and bills openstates.org
OpenSanctions Sanctions, PEP, watchlist checks (OFAC/EU/UN) opensanctions.org
SAM.gov Federal contract registrations, exclusions sam.gov
Regulations.gov Public comments on federal rules regulations.gov
IT Dashboard Federal IT spending itdashboard.gov
GSA Site Scanning Government website analytics digital.gov
Google Civic Representative lookup by address developers.google.com
Senate.gov XML Senate roll call votes senate.gov
AInvest Congressional trade enrichment (filing delays) openapi.ainvest.com
FTC Enforcement case data ftc.gov
DOJ FARA Foreign Agents Registration Act (foreign lobbying) fara.gov
EPA EnviroFacts Toxic Release Inventory (TRI) data epa.gov/enviro
USAJobs Federal job listings with salary data usajobs.gov
Google News RSS News search by topic news.google.com
OpenCorporates Corporate registration and officer data opencorporates.com
FollowTheMoney State-level campaign finance followthemoney.org
EveryPolitician Legislators from 233 countries everypolitician.org
WhoIsMyRepresentative ZIP-to-district representative lookup whoismyrepresentative.com
Data.gov Government open data data.gov
GovInfo Government publications govinfo.gov

Open-source datasets (CC0):


Quick Start

Backend

python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env          # Add your API keys
uvicorn main:app --port 8006  # API at http://localhost:8006/docs

Frontend

cd frontend
npm install
npm run dev                   # http://localhost:5173

Seed Data

python jobs/seed_tracked_companies.py    # 1,000+ entities across all sectors
python jobs/sync_votes.py                # House roll call votes
python jobs/sync_senate_votes.py         # Senate roll call votes
python jobs/sync_congressional_trades.py # Congressional stock trades

Mobile (Expo)

cd mobile && npm install && npx expo start

API

Interactive docs at /docs (Swagger) and /redoc (ReDoc).

The API is versioned under /v1/ with backward-compatible unprefixed routes. Rate limited at 60 req/min per IP.

Selected endpoints:

Endpoint Description
GET /people Congress members with search, filter by state/party/chamber
GET /people/{id} Full member profile with votes, trades, donors
GET /influence/network Relationship graph for any entity
GET /influence/spending-by-state Lobbying and donations aggregated by state
GET /influence/money-flow Sankey diagram data: company to politician flows
GET /influence/closed-loops Detected influence cycles
GET /congressional-trades All 4,600+ congressional stock trades
GET /{sector}/companies Tracked companies for any sector
GET /{sector}/companies/{id} Company detail with lobbying, contracts, enforcement
GET /search?q= Global search across all entities
GET /claims/submit Submit text for claim verification
GET /representatives?zip= Find your reps by ZIP code
GET /people/{id}/full Combined profile: votes, trades, donors, committees, finance in one call
GET /lookup/{zip} District-specific representative lookup
GET /fara/search?q= Search FARA foreign lobbying registrations
GET /research/earmarks Search congressionally directed spending
GET /research/world-politicians Legislators from 233 countries
GET /stories/latest AI-generated data investigations
GET /anomalies Detected suspicious patterns

Contributing

Contributions are welcome. Here are some areas where help would be especially valuable:

  • New data source integrations — More government APIs, FOIA databases, state-level data
  • State legislative data enrichment — Bill tracking, committee votes, campaign finance at the state level
  • District-level data — Census overlays, district-specific lobbying and spending analysis
  • Visualization improvements — New ways to surface patterns in influence data
  • Testing — Backend and frontend test coverage

Check the issues page for open tasks, or open a new issue to discuss your idea.


Support

WeThePeople is free and open source. If you find it useful:

  • Sponsor on GitHub
  • Star this repo
  • Share it with someone who cares about government accountability

Acknowledgments

Project License What We Use
unitedstates/congress-legislators CC0 (public domain) Congressional committee and membership data
unitedstates/congress CC0 (public domain) Senate roll call vote scraping approach
openstates/people CC0 (public domain) State legislator data for all 50 states
FastScheduler MIT Automated sync job scheduling

All integration code is original.


License

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).

You are free to use, modify, and distribute this software. If you run a modified version as a network service, you must make your source code available under the same license. This ensures that improvements to the platform benefit everyone.

Some proprietary components (detection engine, verification pipeline) are maintained in a separate private repository and are not covered by this license. See the enterprise tier for access.


wethepeopleforus.com  |  Twitter  |  GitHub Sponsors

The public record belongs to the public. This platform just makes it easier to read.


If this project helped you understand money in politics, consider giving it a star — it helps others find it.

About

Civic transparency platform tracking corporate influence on Congress across 8 sectors. 30+ government APIs, 1000+ tracked entities. Open source.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors