Company Atlas — The Live Atlas of Global Companies
https://www.company-atlas.co · a continuously updated corporate observation network.
Company Atlas attaches persistent public-web sensors to companies (homepage, careers and job boards, newsroom, pricing, products, leadership, locations, docs, changelog, investor relations, legal pages, feeds, sitemaps…). Every sensor produces observations; observations become historical snapshots; snapshots produce block-level changes; meaningful changes become structured, carefully worded events; events become metrics (Activity Score, Hiring Momentum, Product Velocity, AI Adoption, Corporate Change Index, Global Corporate Activity Index) and signals. Nothing historical is ever overwritten. The accumulated history is the product.
| Spec | docs/PRODUCT-SPEC.md (200 sections) · repo guide CLAUDE.md |
| Architecture | docs/ARCHITECTURE.md · crawl docs/CRAWL.md · connectors docs/CONNECTORS.md · events docs/EVENT-TAXONOMY.md · scoring docs/SCORING.md · LLM docs/LLM.md · seeds docs/SEEDS.md |
| API | docs/API.md (/api/v1, SSE /api/v1/live/stream, exports, admin) — live docs at /api/v1/docs |
| Web | apps/web (Next 16) — docs/FRONTEND.md |
| Deploy / ops | docs/DEPLOY.md · docs/OPERATIONS.md |
Stack
Python 3.12 (src/companyatlas, CLI catlas: FastAPI · SQLAlchemy Core + asyncpg · Alembic · httpx · selectolax · feedparser · zstd) ·
PostgreSQL 17 (the only stateful dependency: entities, history, SKIP LOCKED queue, metrics) · content-addressed object store on disk ·
Next 16 + React 19 + Tailwind v4 · optional OpenAI-compatible LLM endpoint for enrichment (MacLustr llm-api.io).
Quickstart
uv venv --python 3.12 .venv && uv pip install --python .venv/bin/python -e '.[dev]'
createdb -O companyatlas companyatlas # role companyatlas/companyatlas; extensions pg_trgm + uuid-ossp
cp .env.example .env
.venv/bin/catlas migrate && .venv/bin/catlas seed # schema + industries/countries/companies (Wikidata registry)
.venv/bin/catlas discover https://stripe.com --dry-run
.venv/bin/catlas onboard --limit 100 # discovery → sensors
.venv/bin/catlas schedule # crawl + intelligence loop
.venv/bin/catlas api # http://127.0.0.1:8371/api/v1/docs
pnpm install && pnpm dev:web # http://localhost:8370
.venv/bin/pytest -q && .venv/bin/ruff check src tests && pnpm -r typecheckPrinciples (short form)
Historical-first · raw and interpreted data kept separate · deterministic pipeline first, LLMs only as budgeted enrichment · reusable connector families, automatic discovery · polite and lawful crawling (robots, per-domain limits, SSRF guard, never bypass challenges, no private data) · provenance and confidence on every fact · careful language ("no longer listed", never "fired") · no magic numbers · mobile first-class · never fabricate.
Contact: contact@spboucher.ai · crawler identity CompanyAtlasBot (see /bot). Hosted on MacLustr.