SPB Git
History
NameLast commitUpdated
apps brand: atlas-plate mark, SVG logo set, favicon.ico + PNG icons, redesigned share...
deploy fetch: HTTP/1.1 by default (h2 SEND_SETTINGS protocol errors), protocol errors...
docs deploy: production moved to OVH BHS128b (native PM2/Postgres), release...
fixtures company profile enrichment: Wikidata facts/executives/structure, Wikipedia...
migrations baseline flags (migration 0002) so first-snapshot entities never count as new;...
prompts company profile enrichment: Wikidata facts/executives/structure, Wikipedia...
registry registry: 32,368 companies (all listed companies first, sitelinks ≥ 3, employees...
scripts registry: 32,368 companies (all listed companies first, sitelinks ≥ 3, employees...
src discovery: reclaim stale running discover jobs (dead workers) before claiming
tests registry: 32,368 companies (all listed companies first, sitelinks ≥ 3, employees...
.env.example Company Atlas kernel: config, taxonomy, ids, urls, fetch, archive, db, schema...
.gitignore Company Atlas kernel: config, taxonomy, ids, urls, fetch, archive, db, schema...
alembic.ini Company Atlas kernel: config, taxonomy, ids, urls, fetch, archive, db, schema...
CLAUDE.md retire: production shut down 2026-10-02 (OVH server removed from MacLustr); cold...
package.json Company Atlas kernel: config, taxonomy, ids, urls, fetch, archive, db, schema...
pnpm-lock.yaml web: Next 16 app (44 routes, live SSE feed, company terminal, compare, rankings,...
pnpm-workspace.yaml Company Atlas kernel: config, taxonomy, ids, urls, fetch, archive, db, schema...
pyproject.toml fix: Brotli codec + charset sniffing, binary-body guard, corruption guard in...
README.md kernel: ruff fixes, README
README.md source

# 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

bash
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 typecheck

# Principles (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.

Clone company-atlas

Anonymous clone and fetch. Pushing requires the owner's personal access token.

ZIP tar.gz snapshot of main
Files · main
Menu

Theme