0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-11-24 09:14:46 +01:00
🦔 PostHog provides open-source product analytics, session recording, feature flagging and A/B testing that you can self-host.
Go to file
Paolo D'Amico 72b842cb93
Persons list refactor (#2418)
* refactor person category filter

* convert persons to TS & kea; clean up code

* remove undefined attributes from QS

* fix updating URL in every keystroke

* filter out invalid qs params

* fixes React key error

* bring back cohorts
2020-11-17 15:15:46 -06:00
.github Revert "Revert "Plugin Attachments (#2263)" (#2376)" (#2380) 2020-11-13 14:15:24 -05:00
.platform One click deploy for platform.sh (#1044) 2020-06-18 16:12:07 +02:00
bin Run E2E tests without celery (#2344) 2020-11-12 16:54:10 +02:00
cypress Refactor people & users to persons (#2413) 2020-11-17 08:40:48 -06:00
docker/clickhouse/docker-entrypoint-initdb.d Update local dev to use proto for events (#2181) 2020-11-03 11:37:12 -08:00
ee Refactor people & users to persons (#2413) 2020-11-17 08:40:48 -06:00
frontend Persons list refactor (#2418) 2020-11-17 15:15:46 -06:00
plugins Revert "Revert "Plugin Attachments (#2263)" (#2376)" (#2380) 2020-11-13 14:15:24 -05:00
posthog Persons list refactor (#2418) 2020-11-17 15:15:46 -06:00
staticfiles
.deepsource.toml
.dockerignore Remove some seemingly unused requirements and use pip-compile (#2192) 2020-11-10 10:17:48 +01:00
.environment One click deploy for platform.sh (#1044) 2020-06-18 16:12:07 +02:00
.eslintrc.js Add eslint rule for empty JSX elements (#2023) 2020-10-26 11:45:57 +01:00
.flake8
.gitignore Plugin v8 (#1946) 2020-11-02 15:08:30 +01:00
.kearc Kea TypeGen 0.2 (#1427) 2020-08-14 17:02:57 +02:00
.prettierrc Kea TypeGen 0.0.31 (#1297) 2020-07-29 11:21:00 +02:00
app.json Release 1.17.0 (#2417) 2020-11-17 18:00:27 +00:00
babel.config.js [WIP] New UI (#2114) 2020-11-05 12:55:33 +00:00
CHANGELOG.md Release 1.17.0 (#2417) 2020-11-17 18:00:27 +00:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md (#1790) 2020-10-01 14:12:10 +00:00
CONTRIBUTING.md
cypress.json Organization<>Team<>User structure (closes #1540) (#1562) 2020-10-22 10:58:32 +02:00
dev.Dockerfile add missing copy to volume (#2356) 2020-11-12 16:21:14 -05:00
docker-compose-config.py Make production docker-compose.yml generated (#1704) 2020-09-28 20:50:38 +02:00
docker-compose.dev.yml Fix docker-compose.dev version tags (#1901) 2020-10-16 08:47:47 +01:00
docker-compose.e2e.yml Enhance and optimize PR GitHub workflows (#1365) 2020-08-18 11:08:40 +02:00
docker-compose.yml Bind data volume to postgres container (#2359) 2020-11-13 14:34:55 +01:00
gunicorn.config.py Black all the things! (#1136) 2020-07-02 15:41:49 +02:00
latest_migrations.manifest Increase action step url max length. Closes #2348 (#2369) 2020-11-16 17:50:16 +01:00
LICENSE Add enterprise edition and licensing (#1390) 2020-08-14 11:23:55 +02: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 Revert "Revert "Plugin Attachments (#2263)" (#2376)" (#2380) 2020-11-13 14:15:24 -05:00
postcss.config.js Improve tracking of development instances (resolves #1518) (#1519) 2020-08-28 02:32:21 +02:00
preview.Dockerfile Remove some seemingly unused requirements and use pip-compile (#2192) 2020-11-10 10:17:48 +01:00
Procfile
production.Dockerfile Remove some seemingly unused requirements and use pip-compile (#2192) 2020-11-10 10:17:48 +01:00
pyproject.toml Stability & dev experience improvements (#2152) 2020-11-02 14:55:20 +00:00
README.md Updated readme with heatmaps mention (#2218) 2020-11-12 16:21:57 +01:00
requirements-dev.in Basic caching for Clickhouse to redis (#2300) 2020-11-13 13:20:00 +01:00
requirements-dev.txt Basic caching for Clickhouse to redis (#2300) 2020-11-13 13:20:00 +01:00
requirements.in Remove some seemingly unused requirements and use pip-compile (#2192) 2020-11-10 10:17:48 +01:00
requirements.txt Remove some seemingly unused requirements and use pip-compile (#2192) 2020-11-10 10:17:48 +01:00
runtime.txt Add python version to posthog for automated deploys (#1795) 2020-10-02 08:54:20 +01:00
tsconfig.json Fix typescript errors #1 (#2027) 2020-10-27 09:57:06 +01:00
webpack.config.js Toolbar .less styles fix (#2392) 2020-11-16 11:40:08 +01:00
yarn.lock Revert "Revert "Plugin Attachments (#2263)" (#2376)" (#2380) 2020-11-13 14:15:24 -05: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 - see which users are doing what in your application.
  • Complete control over your data - host it yourself.
  • Automatically capture clicks and page views to do analyze what your users are doing retroactively.
  • Feature flags to understand the impact of new features before rolling them out more widely
  • Heatmaps to understand where in your app or website people are clicking
  • Ready-made libraries for JS, Python, Ruby, Node, Go + API for anything else.
  • Beautiful data visualizations: graphs, funnels, user cohorts, user paths, retention tables, and dashboards.
  • Analytics right on your website with the playful PostHog Toolbar.
  • 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.

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 🦸