Good shape overall. A few tweaks would push it into the top tier.
PostHog FOSS is a read-only mirror of PostHog, with all proprietary code removed. NOTE: This repo is synced automatically from the main PostHog repo. Please raise any issues and PRs there.
Documentation
95
Contributing guide is detailed and thorough.
README is present.
README documents how to install the project.
Licensed under MIT.
Engineering
63
No CI configuration detected in this repository.
→ If your CI lives elsewhere (a private repo that builds this one) or this project is itself a CI/CD tool, mark this check Not Applicable. Otherwise add a GitHub Actions workflow that runs tests on each push. It takes 15 minutes and reassures contributors their changes won't break things.
Lockfile present (pnpm-lock.yaml). Installs are reproducible.
Test files detected (.github/scripts/assign-reviewers.test.js).
Linter or formatter configured (.editorconfig).
Issue or PR templates present.
Project health
85
.gitignore present.
Dependency manifest found (package.json).
Repository has a description.
Actively maintained (pushed within the last month).
Repository health signals
Activity, community, and responsiveness at scan time
Activity
- —Commits (30d / 90d)
- 100Forks
- 0Releases
Community
- —Community health
- —authors own >50% of commits
- 511Watchers
Responsiveness
- —Median issue response
- —Median PR merge time
- 0Open issues
Repository files105 root entries
- .agentsGood: Security policy present.
- .claude
- .config
- .cursor
- .dagster_home
- .depot
- .floxGood: .gitignore present.
- .githubGood: Test files detected (.github/scripts/assign-reviewers.test.js).Good: Issue or PR templates present.
- .husky
- .ideaIssue: Build artifacts or local files may be committed (.idea/posthog.iml) (−40 pts).Fix: Remove them and add to .gitignore.
- .interface-design
- .pi
- .posthog-code
- .run
- .semgrep
- .vscode
- .zed
- agent-os
- bin
- cli
- common
- devenv
- docker
- docs
- frontend
- funnel-udf
- livestream
- nodejs
- packages
- patches
- playwright
- posthog
- products
- proto
- rust
- services
- share
- terraform
- tools
- .cursorignore
- .cursorrules
- .dockerignore
- .editorconfigGood: Linter or formatter configured (.editorconfig).
- .env.development
- .env.example
- .env.local.example
- .env.services
- .envrc
- .git-blame-ignore-revs
- .gitattributes
- .gitignore
- .kearc
- .mcp.json
- .nvmrc
- .oxfmtrc.json
- .oxlintrc.json
- .stylelintignore
- .stylelintrc.js
- .test_durations
- .test_quarantine.json
- .watchmanconfig
- .worktreeinclude
- .worktreelink
- AGENTS.md
- AI_POLICY.md
- CHANGELOG.md
- CLAUDE.md
- conftest.py
- CONTRIBUTING.mdGood: Contributing guide is detailed and thorough.Issue: Contributing guide lacks a setup section (−12 pts).Fix: Show new contributors how to get a local dev environment running.Issue: Contributing guide lacks a code style section (−8 pts).Fix: Describe your linting/formatting rules and how to run them.Issue: Contributing guide lacks a testing section (−8 pts).Fix: Show contributors how to run the test suite (e.g. npm test, pytest, cargo test).Good: Contributing guide describes the PR/review workflow.Issue: Contributing guide has no code examples (−5 pts).Fix: Add code blocks showing example commands for setup, running tests, and submitting a PR.
- dagster_cloud.yaml
- depot.json
- dist-workspace.toml
- docker-compose.base.yml
- docker-compose.dev-full.yml
- docker-compose.dev.yml
- docker-compose.hobby.yml
- docker-compose.multinode-clickhouse.yml
- docker-compose.playwright.yml
- docker-compose.profiles.yml
- docker-compose.sandbox.yml
- DockerfileGood: Environment pinned via Dockerfile.
- Dockerfile.llm-analytics
- Dockerfile.node
- Dockerfile.playwright
- Dockerfile.recording-rasterizer
- Dockerfile.sandbox
- greptile.json
- hogli.yaml
- LICENSEGood: Licensed under MIT.
- manage.py
- otel-collector-config.dev.yaml
- package.jsonGood: Dependency manifest found (package.json).
- pnpm-lock.yamlGood: Lockfile present (pnpm-lock.yaml). Installs are reproducible.
- pnpm-workspace.yaml
- postcss.config.js
- posthog.json
- pyproject.toml
- pytest.ini
- README.mdGood: README is present.Good: README is well structured with multiple sections.Good: README includes screenshots or visuals. Great for first impressions.Good: README has code examples.Good: README links to a live demo or deployed app.Good: README includes status badges.Good: README documents how to install the project.Good: README documents how to run the project.
- tach.toml
- tsconfig.dev.json
- tsconfig.json
- turbo.json
- unit.json.tpl
- uv.lock