Skip to content

nftmago/Ledgar

Repository files navigation

Ledgar

SEC filings, decoded — without the subscription. A free alternative to paid SEC-research tools like AskEdgar ($44/mo). Everything is built on the SEC's public EDGAR APIs, and the "intelligence" layer is deterministic code, so running this costs $0 in data fees and $0 in AI bills.

Features

  • Company search — instant typeahead over every SEC registrant (ticker or name)
  • Dilution radar — a rule-based risk score (0–100) per company computed from:
    • shelf/registration statements (S-1, S-3, F-1, F-3) and EFFECT notices
    • priced offerings (424B prospectuses)
    • split-adjusted year-over-year share-count growth from XBRL cover-page data (also detects buybacks)
    • cash runway (cash ÷ operating-cash burn)
    • reverse-split history (serial-diluter pattern)
    • warrant overhang (warrants ÷ shares outstanding)
    • S-8 employee-equity registrations
  • Split forensics — reverse/forward splits detected two independent ways: the company's reported XBRL split-ratio tag, and discontinuity scanning of the share-count series (cross-confirmed when both agree). Share history is restated to today's basis so a 1-for-10 reverse split never masquerades as a 90% buyback.
  • Share supply & float — company-reported public float (dei:EntityPublicFloat), warrants, option pool, and unvested RSUs → a fully-diluted overhang %, computed not guessed.
  • Supply event ledger — shares outstanding is an event ledger, not a number: the latest audited cover count plus every 8-K Item 3.02 issuance and 424B offering filed since, cross-confirmed against proxy record-date statements. Detection relies only on structured metadata (item codes, form types) that issuers cannot reword, so a missed extraction degrades to a visible "count understated" warning — never a silently stale number. Each extracted figure shows its source sentence, and an optional BYOK "AI verify" button re-extracts the numbers with your own model as an independent check.
  • Insider pulse — recent Form 4s parsed from the SEC's structured ownership XML: exact open-market buys vs sells with prices, per insider.
  • Shelf & ATM ledger — registered dollar amounts read from each filing's Exhibit 107 fee table (mandatory since 2022): shelf size, WKSI pay-as-you-go shelves, takedowns attributed to their shelf, estimated remaining capacity, and at-the-market program detection on 424B5s. Includes a baby-shelf (Instruction I.B.6) note when public float is under $75M.
  • Reverse split watch — recent 8-K/6-K/proxy filings scanned for reverse-split language: announced, board-authorized, shareholder-approved, or up for vote, with the ratio extracted (e.g. "up to 1-for-5,000") and a quote from the filing.
  • Price & market stats — 1-year chart (log-scaled for split-mangled histories), market cap, 60-day high, average volume, via Yahoo's free chart endpoint. No API key.
  • AI research brief (BYOK) — one click compiles everything Ledgar computed (dilution signals, shelf ledger, supply, splits, insider flows, filings) into context and has Claude write a structured brief — grounded in our deterministic data, not free-form recall.
  • Provenance everywhere — every XBRL-derived figure links (dotted underline) to the SEC filing it was reported in. Accuracy by audit trail, not by model confidence.
  • Real financials — revenue, net income, cash, and shares outstanding pulled from each company's audited XBRL facts, with sparkline trends
  • Filings browser — every filing with form-type filters, direct links to documents
  • Full-text search — search the text of every filing since 2001 (e.g. "going concern", "at-the-market offering")
  • Live filing tape — the newest submissions hitting EDGAR, with offering-type forms flagged
  • Chat with filings (optional, BYOK) — load any filing into an AI panel and ask questions. Uses your Anthropic API key (stored in your browser's localStorage, never persisted server-side). Defaults to Claude Haiku with prompt caching, so a multi-question conversation about a full 10-K costs a few cents at most.

Why it's free to run

Layer Source Cost
Company/ticker directory www.sec.gov/files/company_tickers.json $0
Filings index data.sec.gov/submissions/ $0
Financials data.sec.gov/api/xbrl/companyfacts/ $0
Full-text search efts.sec.gov/LATEST/search-index $0
Live feed EDGAR Atom feed $0
Dilution scoring deterministic rules in lib/dilution.js $0
AI chat user's own Anthropic key (BYOK) $0 to you

The server proxies SEC requests (the SEC APIs don't send CORS headers and require a descriptive User-Agent) and caches responses in memory to stay far below the SEC's 10-requests/second guideline.

Run it

npm install
npm run dev        # http://localhost:3000
# or production:
npm run build && npm start

Deploys as-is to any free Node host (Vercel, Render, Fly). No environment variables required.

Before deploying publicly, change USER_AGENT in app/api/sec/[...path]/route.js to your own contact info — the SEC asks for it.

Architecture

app/
  page.js                 home: search, full-text search, live filing tape
  company/[cik]/page.js   dilution radar, financials, filings browser, AI panel
  api/sec/[...path]/      caching proxy → data.sec.gov / www.sec.gov / efts.sec.gov
  api/ai/route.js         BYOK streaming endpoint → Anthropic Messages API
components/AiPanel.js     chat UI (key + model stored in localStorage)
lib/edgar.js              EDGAR client helpers (tickers, submissions, facts, FTS, atom)
lib/dilution.js           rule-based dilution risk engine + financial snapshot

Ledgar is research tooling, not investment advice.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors