0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-11-22 08:40:03 +01:00
🦔 PostHog provides open-source product analytics, session recording, feature flagging and A/B testing that you can self-host.
Go to file
Harry Waye 1ed90be556
chore(kafka): support KAFKA_PREFIX, enable using basic Heroku Kafka (#9941)
* chore(kafka): support `KAFKA_PREFIX`, enable using basic Heroku Kafka

Kafka on Heroku multi-tenented instances requires that all topics have a
prefix. See
https://devcenter.heroku.com/articles/multi-tenant-kafka-on-heroku#differences-to-dedicated-kafka-plans
for details.

* Move KAFKA_PREFIX
2022-05-24 16:00:19 +01:00
.devcontainer chore: bump defaults for clickhouse to 22.3 across the board (#9847) 2022-05-20 20:32:22 -07:00
.github fix(s3-storage): Set to None explicitly if not enabled (#9924) 2022-05-24 08:16:47 +01:00
.husky chore(ci): migrate husky from v4->v7 (#9633) 2022-05-03 19:36:58 -07:00
.run feat(object storage): add unused object storage (#9846) 2022-05-20 09:56:50 +01:00
.storybook feat(frontend): storybook form stories (#9173) 2022-05-10 11:36:34 +02:00
bin fix: Move hobby to use latest until next release (#9928) 2022-05-23 16:14:16 -07:00
cypress feat: many to many insights and dashboards 💖 turbo mode (#9604) 2022-05-17 13:24:31 +01:00
docker/clickhouse chore: bump defaults for clickhouse to 22.3 across the board (#9847) 2022-05-20 20:32:22 -07:00
ee chore(kafka): support KAFKA_PREFIX, enable using basic Heroku Kafka (#9941) 2022-05-24 16:00:19 +01:00
frontend feat: Release multi point person modal (#9951) 2022-05-24 14:45:19 +00:00
plugin-server chore(kafka): support KAFKA_PREFIX, enable using basic Heroku Kafka (#9941) 2022-05-24 16:00:19 +01:00
posthog chore(kafka): support KAFKA_PREFIX, enable using basic Heroku Kafka (#9941) 2022-05-24 16:00:19 +01:00
staticfiles Fix settings 2020-01-24 16:22:12 -08:00
.all-contributorsrc chore(contributors): 🤖 - Add utkuzih as a contributor 🎉 (#9748) 2022-05-12 08:20:48 +01:00
.coveragerc ci(tests): show untested code in PR with codecov (#6082) 2021-10-04 10:37:15 +01:00
.deepsource.toml Fix some bug risks and code quality issues 2020-02-21 14:51:44 -08:00
.dockerignore chore(codespaces): use Dockerfile not docker-compose (#9659) 2022-05-05 14:05:56 +00:00
.environment One click deploy for platform.sh (#1044) 2020-06-18 16:12:07 +02:00
.eslintrc.js chore(upgrade): Kea 3.0, keeping React at 16.11 (#9682) 2022-05-09 11:34:28 +02:00
.flake8 feat(demo): Rework demo data generation system (#7889) 2022-05-17 22:23:11 +02:00
.gitattributes Improve handling of .git* files/dirs (#3141) 2021-02-01 09:25:40 +01:00
.gitignore add object_storage path to gitignore (#9346) 2022-04-05 09:55:11 +00:00
.kearc Add paths to logics (#6945) 2021-11-09 07:59:21 +00:00
.prettierignore Fix pre-commit hook (#6902) 2021-11-04 17:09:40 +00:00
.prettierrc Kea TypeGen 0.0.31 (#1297) 2020-07-29 11:21:00 +02:00
.test_durations refactor(ingestion): Make KAFKA_ENABLED true by default and set KAFKA_HOSTS default (#9844) 2022-05-19 19:18:15 +02:00
babel.config.js chore(upgrade): Kea 3.0, keeping React at 16.11 (#9682) 2022-05-09 11:34:28 +02:00
CHANGELOG.md docs(changelog): Refer to PostHog Array in CHANGELOG.md (#8770) 2022-03-16 08:22:33 +00:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md (#1790) 2020-10-01 14:12:10 +00:00
codecov.yml ci(tests): show untested code in PR with codecov (#6082) 2021-10-04 10:37:15 +01:00
CONTRIBUTING.md Fix API/HTTP instructions json syntax (#3832) 2021-03-31 18:31:32 -07:00
cypress.e2e.json ci(e2e): improve debug logging for github action workflow (#7629) 2021-12-10 12:38:25 +00:00
cypress.json Increase viewport size (#8632) 2022-02-16 14:36:16 +02:00
dev.Dockerfile fix: xmlsec should be a runtime requirement for dev.dockerfile (#9826) 2022-05-17 15:48:56 -07:00
docker-compose-config.py Improve docker-compose-config experience (#2266) 2020-11-20 16:11:05 +01:00
docker-compose-config.sh Improve docker-compose-config experience (#2266) 2020-11-20 16:11:05 +01:00
docker-compose.arm64.yml feat(object storage): add unused object storage (#9846) 2022-05-20 09:56:50 +01:00
docker-compose.dev.yml chore: bump defaults for clickhouse to 22.3 across the board (#9847) 2022-05-20 20:32:22 -07:00
docker-compose.hobby.yml fix: Move hobby to use latest until next release (#9928) 2022-05-23 16:14:16 -07:00
docker-compose.test.yml feat(object storage): add unused object storage (#9846) 2022-05-20 09:56:50 +01:00
docker-compose.yml chore: bump defaults for clickhouse to 22.3 across the board (#9847) 2022-05-20 20:32:22 -07:00
Dockerfile update simmer to version without installation warnings (#2896) 2021-01-08 15:14:57 +01:00
gunicorn.config.py flake8: enable E266,W291,W293,W391,W601 (#8699) 2022-02-21 15:47:27 +01:00
jest.config.ts refactor(jest): convert jest mocks to msw (#8902) 2022-03-08 16:05:33 +01:00
jest.setup.ts Activate turbo mode (#7254) 2021-11-23 17:22:05 +01:00
latest_migrations.manifest refactor: Remove constance library dependency, use json-encoded model (#9852) 2022-05-20 15:12:37 +03:00
LICENSE Update copyright years and use MIT license in posthog-foss (#3145) 2021-02-01 14:55:39 +01:00
manage.py Black all the things! (#1136) 2020-07-02 15:41:49 +02:00
mypy.ini Stability & dev experience improvements (#2152) 2020-11-02 14:55:20 +00:00
package.json chore(typescript): fix a lot of frontend types (#9933) 2022-05-24 12:38:18 +02:00
postcss.config.js Finish the purge on curly-less if statements (#3414) 2021-02-22 08:36:08 +01:00
Procfile Add flags to bin/docker-worker-celery (#2621) 2020-12-03 18:53:06 +01:00
production.Dockerfile chore(deps): upgrade node.js version to v16 (#8983) 2022-03-15 09:48:56 +00:00
pyproject.toml Stability & dev experience improvements (#2152) 2020-11-02 14:55:20 +00:00
pytest.ini chore: split out async migrations ci (#9539) 2022-04-26 17:58:30 +01:00
README.md chore(contributors): 🤖 - Add utkuzih as a contributor 🎉 (#9748) 2022-05-12 08:20:48 +01:00
requirements-dev.in chore: upgrade pip tools (#9859) 2022-05-19 15:01:32 +01:00
requirements-dev.txt chore: upgrade pip tools (#9859) 2022-05-19 15:01:32 +01:00
requirements.in refactor: Remove constance library dependency, use json-encoded model (#9852) 2022-05-20 15:12:37 +03:00
requirements.txt refactor: Remove constance library dependency, use json-encoded model (#9852) 2022-05-20 15:12:37 +03:00
runtime.txt Python: use version 3.8.12 (#8677) 2022-02-24 17:49:55 +01:00
SECURITY.md Create SECURITY.md (#6009) 2021-09-17 15:31:10 +02:00
task-definition.migration.json refactor(ecs): Remove PERSISTED_FEATURE_FLAGS from ECS tasks (#9214) 2022-03-23 19:04:54 +00:00
task-definition.plugins.json chore: Enable Redis cache for test team 7964 (#9695) 2022-05-10 16:37:00 +02:00
task-definition.web.json fix(insights): Increase frequency of insight refresh (#9216) 2022-03-28 09:08:27 +02:00
task-definition.worker.json fix(cohorts): increase number of parallel calculations on cloud (#9282) 2022-03-31 13:20:38 +00:00
tsconfig.json chore(frontend): code javascript like it's 2019 (#9937) 2022-05-24 11:14:11 +00:00
versions.json chore(version): sync version 1.35.0 to master (#9521) 2022-04-25 14:21:28 -04:00
webpack.config.js feat(apps): frontend apps (#9831) 2022-05-20 18:14:58 +02:00
yarn.lock chore(typescript): fix a lot of frontend types (#9933) 2022-05-24 12:38:18 +02:00

posthoglogo

PRs Welcome Join Slack Community Docker Pulls GitHub commit activity GitHub closed issues

PostHog is an open-source product analytics suite, built for engineers

  • Automatically track every event on your website or app
  • Understand your users and how to improve your product
  • Deploy on your own infrastructure to keep control of your data.

Get started for free

Option 1: Hobby instance one-line-deploy

For <100K events ingested monthly on Linux with Docker (recommended 4GB memory):

 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/posthog/posthog/HEAD/bin/deploy-hobby)" 

Option 2: Production instance on your infrastructure

Follow our Scaleable Self-Hosting Guide for all major cloud service providers and on-premise deploys

Option 3: If you don't need to self-host

Sign up for a free PostHog Cloud project

Features

ui-demo

We bring all the tools into one place to give you everything you need to build better products:

  • Event-based Analytics on users or groups - capture your product's usage data to see which users are doing what in your application
  • Product data visualizations graphs, funnels, cohorts, paths, retention, and dashboards
  • Complete control over your data - host it yourself on any infrastructure
  • Session recording to watch videos of your users' behavior, with fine-grained privacy controls
  • Automatically capture clicks and pageviews to analyze what your users are doing without pushing events manually
  • Feature flags to understand the impact of new features before rolling them out more widely
  • Heatmaps to understand how users interact with your product with the PostHog Toolbar
  • Automated Analysis to find correlations between successful users and their behaviors or attributes
  • Plays nicely with data warehouses import events or user data from your warehouse by writing a simple transformation plugin, and export data with pre-built plugins - such as BigQuery, Redshift, Snowflake and S3
  • Infinitely extensible use custom plugins to extend PostHog and integrate with any service or tool
  • Ready-made libraries for JS, Python, Ruby, Node, Go, Android, iOS, PHP, Flutter, React Native, Elixir, Nim + an API for anything else
  • And much much more... for a full list of PostHog features.

Event autocapture

You don't have to spend weeks instrumenting every event on your front-end, point and click at elements from your browser and turn them into events which you and your team can analyze

Getting the most of PostHog

See PostHog Docs for in-depth walk-throughs on functionality.

Join our Slack community if you need help, want to chat, or are thinking of a new feature. We're here to help - and to make PostHog even better.

Philosophy

We help you understand user behavior and build better products without losing control of your data.

In our view, third-party analytics tools do not work in a world of cookie deprecation, GDPR, HIPAA, CCPA, and many other four-letter acronyms. PostHog is the alternative to sending all of your customers' personal information and usage data to third-parties.

PostHog is designed to give you every tool you need to understand user behavior, create hypothesis and release changes to make your product more successful.

What's cool about this?

PostHog is the only product-focused open-source analytics suite, with an event, user and group architecture that you can host in any infrastructure.

We are an open-source alternative to products such as Mixpanel, Amplitude, Heap, HotJar, Pendo or Full Story. We're designed to be more developer-friendly, with the broadest range of features like session recording, heatmaps, feature flags, and plugins.

We play nicely with data warehouses and other services - you can import event or user data by writing a plugin to create transformations, or you can export data by using our existing data exports to BigQuery, Redshift, Snowflake, etc. All without losing control of your data.

Developing locally & Contributing

See our Docs for instructions on developing PostHog locally.

We <3 contributions big or small, check out our guide on how to get started.

Not sure where to start? Book a free, no-pressure pairing session with one of the team.

We're hiring!

Come help us make PostHog even better. We're growing fast, and would love for you to join us.

Open-source vs. paid

This repo is entirely MIT licensed, with the exception of the ee directory (if applicable). Need absolutely 💯% FOSS? Check out our posthog-foss repository, which is purged of all proprietary code and features.

Premium features (contained in the ee directory) require a PostHog license. Contact us at sales@posthog.com for more information, or see our pricing page.

Contributors 🦸