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
Marius Andra 5245ee68ae
New filtering experience (#5189)
* the new filtering experience

* revert bug
2021-07-19 22:28:57 +00:00
.devcontainer Revert "Add is_deleted column to person_distinct_id (#5151)" (#5193) 2021-07-19 12:57:42 +03:00
.github Reword staleness check messages 2021-07-17 02:06:37 +02:00
.platform Add .yaml files to be linted with prettier too (#4771) 2021-06-16 18:04:51 +02:00
bin Allow passing in token to Personal API Key requests (#5044) 2021-07-16 10:35:56 -03:00
cypress make non time conversion graph types visible in self hosted (#5140) 2021-07-15 00:14:43 +00:00
docker/clickhouse Make DDLs more friendly towards running on a cluster and cleanups (#5091) 2021-07-15 17:20:37 -07:00
ee Add all steps option to time conversion funnel (#5142) 2021-07-19 12:00:59 -07:00
frontend New filtering experience (#5189) 2021-07-19 22:28:57 +00:00
plugins Revert "Add is_deleted column to person_distinct_id (#5151)" (#5193) 2021-07-19 12:57:42 +03:00
posthog Refactor taxonomic property filter logic (#5098) 2021-07-19 16:40:31 +00:00
staticfiles Fix settings 2020-01-24 16:22:12 -08:00
.all-contributorsrc 🤖: Add alx-a as a contributor 🎉 (#5184) 2021-07-16 23:20:16 +02:00
.deepsource.toml Fix some bug risks and code quality issues 2020-02-21 14:51:44 -08:00
.dockerignore Add ee to docker ignore (#2422) 2020-11-17 23:00:42 +01:00
.environment One click deploy for platform.sh (#1044) 2020-06-18 16:12:07 +02:00
.eslintrc.js Better Sessions (Deeplinking, filter matching, expand/collapse options, matching highlights) (#4840) 2021-06-30 19:27:36 -07:00
.flake8 Fix deprecation warnings due to invalid escape sequences. (#4633) 2021-06-15 11:41:49 +02:00
.gitattributes Improve handling of .git* files/dirs (#3141) 2021-02-01 09:25:40 +01:00
.gitignore Improve handling of .git* files/dirs (#3141) 2021-02-01 09:25:40 +01:00
.kearc Kea TypeGen types in the same folder as logic (#3048) 2021-01-22 10:21:48 +01:00
.prettierrc Kea TypeGen 0.0.31 (#1297) 2020-07-29 11:21:00 +02:00
.ts-strict-blacklist Remove non null assertions (#4862) 2021-06-24 10:00:59 +02:00
app.json Auto log in for e2e tests and review apps (#3377) 2021-02-18 13:59:09 +01:00
babel.config.js Automatically add polyfills based on browser requirements (#5086) 2021-07-13 10:01:04 +02:00
CHANGELOG.md bump version, add 1.26.0 changelog (#4760) 2021-06-15 13:13:57 -03:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md (#1790) 2020-10-01 14:12:10 +00:00
CONTRIBUTING.md Fix API/HTTP instructions json syntax (#3832) 2021-03-31 18:31:32 -07:00
cypress.e2e.json React component tests with cypress (#3233) 2021-02-09 17:28:01 +02:00
cypress.json Solve ospath issue (#5014) 2021-07-07 14:04:39 +02:00
dev.Dockerfile Fix dev.Dockerfile (following #4007) (#4037) 2021-04-19 14:10:43 -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.dev.yml Not starting the frontend is confusing our users so I'm reverting it to it's original state (#4359) 2021-05-14 12:23:14 -04:00
docker-compose.e2e.yml Remove IS_DOCKER env var (#3843) 2021-04-01 17:10:00 +02:00
docker-compose.yml Pin prod docker-compose to Postgres 13 and Redis 6 (#4019) 2021-04-16 16:25:16 +02:00
Dockerfile update simmer to version without installation warnings (#2896) 2021-01-08 15:14:57 +01:00
gunicorn.config.py Increase default timeouts from gunicorn (#4731) 2021-06-14 10:39:04 +00:00
jest.config.ts React component tests with cypress (#3233) 2021-02-09 17:28:01 +02:00
latest_migrations.manifest SSO domain whitelist (#5111) 2021-07-15 18:20:43 -05: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 New filtering experience (#5189) 2021-07-19 22:28:57 +00: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 Update Django to 3.1.8 (and related) (#4007) 2021-04-19 12:59:10 -07:00
pyproject.toml Stability & dev experience improvements (#2152) 2020-11-02 14:55:20 +00:00
pytest.ini Run tests via pytest (#3417) 2021-02-24 09:32:44 +02:00
README.md 🤖: Add alx-a as a contributor 🎉 (#5184) 2021-07-16 23:20:16 +02:00
requirements-dev.in Upgrade to Django 3.1.12, urllib & requests (#4639) 2021-06-08 14:19:32 -07:00
requirements-dev.txt Upgrade to Django 3.1.12, urllib & requests (#4639) 2021-06-08 14:19:32 -07:00
requirements.in Fix build (#5162) 2021-07-16 16:21:36 +03:00
requirements.txt Fix build (#5162) 2021-07-16 16:21:36 +03:00
runtime.txt Add python version to posthog for automated deploys (#1795) 2020-10-02 08:54:20 +01:00
task-definition.migration.json Set USING_PGBOUNCER env var everywhere (#5120) 2021-07-14 11:38:47 -07:00
task-definition.plugins.json Set USING_PGBOUNCER env var everywhere (#5120) 2021-07-14 11:38:47 -07:00
task-definition.web.json Set USING_PGBOUNCER env var everywhere (#5120) 2021-07-14 11:38:47 -07:00
task-definition.worker.json Set USING_PGBOUNCER env var everywhere (#5120) 2021-07-14 11:38:47 -07:00
tsconfig.json Fix and standardize multiple table UI inconsistencies (#4727) 2021-06-24 17:09:41 +02:00
webpack.config.js Improve e2e flakeyness, skip Insights spec test (#4869) 2021-06-29 22:20:02 +02:00
yarn.lock New filtering experience (#5189) 2021-07-19 22:28:57 +00:00


PostHog provides open-source product analytics, built for developers. Automate the collection of every event on your website or app, with no need to send data to 3rd parties. With just 1 click you can deploy on your own infrastructure, having full API/SQL access to the underlying data.



Quick Start

1-click Heroku deploy:



Make the Most of PostHog

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

PostHog dashboard screenshot

Join our PostHog Users 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.



Features

  • Event-based analytics at a user level - capture your product's usage data to see which users are doing what in your application.
  • Product data visualizations: graphs, funnels, user cohorts, user paths, retention tables, and dashboards.
  • Complete control over your data - host it yourself.
  • Session recording to watch videos of your user 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 with the PostHog Toolbar.
  • Plugins to integrate your product usage data with other systems, like your CRM, or data lakes.
  • Ready-made libraries for JS, Python, Ruby, Node, Go, Android, iOS, PHP, Flutter, React Native, Elixir + API for anything else.
  • Super easy deploy using Docker or Heroku.



Event Autocapture



Philosophy

Many engineers find it painful to work out how their products are being used. This makes design decisions tough. PostHog solves that.

In our view, third-party analytics does not work anymore in a world of cookie laws, GDPR, CCPA, and many other four-letter acronyms. There should be an alternative to sending all of your customers' personal information and usage data to third-parties like Google.

PostHog gives you full control over all the data from your users, while allowing anyone to do powerful analytics.

This means you can know who is using your app, how they're using it, and where you lose users, among many other things.



What's Cool About This?

PostHog is the only product-focused open-source analytics library, with an event and user-driven architecture. That means tracking identifiable (where applicable) user behavior, and creating user profiles. We are an open-source alternative to products such as Mixpanel, Amplitude, or Heap, that's designed to be more developer-friendly than them, with a broader range of features like session recording, heatmaps, feature flags and plugins.

There are a few session-based open-source libraries that are nice alternatives to Google Analytics. That's not what we are focused on.



PostHog Cloud

You can sign up for a free account on our hosted platform.



Deployment Options

Our suggested method for quick deployment is Heroku's one-click option:

Deploy

However, PostHog can be deployed anywhere you want! Here are step-by-step tutorials we've written for deployment options using all the major cloud providers:



Production Deployment

See our Docs for production deployment options.



Developing Locally

See our Docs for instructions on developing locally.



Contributing

We <3 contributions big or small. See our Docs for a guide on how to get started.

Not sure where to start? Book a free, no-pressure pairing session with one of our core contributors.



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.



Contributors 🦸