Apache Unomi - The Open Source Customer Data Platform

  •        288

Apache Unomi (pronounced "You know me") is a Java Open Source customer data platform, a Java server designed to manage customers, leads and visitors data and help personalize customers experiences while also offering features to respect visitor privacy rules (such as GDPR).

Apache Unomi is a REST server that manages user profiles and events related to the profiles. It can be used to integrate personalization and profile management within very different systems such as CMS, CRMs, Issue Trackers, native mobile application. It was designed to be easy to integrate with external systems, promoting profile sharing and re-use in very different applications.

Basically the server tracks users using different mechanisms (by default cookies), builds a progressively populated profile and associates events that are performed by a user with his profile. Events may range from a click on a page, to a file being downloaded, a native mobile application button being clicked, or anything that can be sent to the server.

As Apache Unomi is built as an OSGi application running inside Apache Karaf, it is extremely extensible and built to be scalable. For example it is possible to plugin new conditions, actions, or any other service that may be needed such as beacon tracking or push notifications. Apache Unomi is also the reference implementation of the upcoming OASIS Customer Data Platform specification to help standardize personalization of online experience while promoting ethical web experience management and increased user privacy controls.

https://github.com/apache/unomi
http://unomi.apache.org/index.html
https://gitbox.apache.org/repos/asf?p=unomi.git

Tags
Implementation
License
Platform

   




Related Projects

Fusion - Full-Stack user behaviour analytics and engagement platform, alternative for Mixpanel, Amplitude, Hotjar, Fullstory

  •    Javascript

Fusion is an open-source lightweight user behaviour analytics and engagement platform. Its built upon a simplified low-code mixpanel like analytics engine with visual analytics, push-notification and email/micro-surveys. It shows how your users interact with your web based products eg: page-views, button clicks, form submissions etc.

Autotrack - Automatic and enhanced Google Analytics tracking for common user interactions on the web

  •    Javascript

The default JavaScript tracking snippet for Google Analytics runs when a web page is first loaded and sends a pageview hit to Google Analytics. If you want to know about more than just pageviews (e.g. where the user clicked, how far they scroll, did they see certain elements, etc.), you have to write code to capture that information yourself.Since most website owners care about a lot of the same types of user interactions, web developers end up writing the same code over and over again for every new site they build.

Live Helper Chat - Live support for your website

  •    PHP

Live Helper Chat is an Open source live support chat for your website with bot, Voice & Video & ScreenShare, AI, Rest API integrations. You can also use LHC with any AI like Rasa or DeepPavlov.

youtube-google-analytics - YouTube Google Analytics Embed Tracking

  •    Javascript

As of 9/12/17, Google Tag Manager offers native support for tracking YouTube videos (including proper titles!). If you're looking to use GTM to track YouTube videos, we'd recommend using their native integration over our script. This is a plug-and-play tracking solution for tracking user interaction with YouTube videos in Google Analytics. It will detect if GTM, Universal Analytics, or Classic Analytics is installed on the page, in that order, and use the first syntax it matches unless configured otherwise. It include support for delivering hits directly to Universal or Classic Google Analytics, or for pushing Data Layer events to be used by Google Tag Manager.

WebGazer - WebGazer.js: Scalable Webcam EyeTracking Using User Interactions

  •    HTML

WebGazer.js is an eye tracking library that uses common webcams to infer the eye-gaze locations of web visitors on a page in real time. The eye tracking model it contains self-calibrates by watching web visitors interact with the web page and trains a mapping between the features of the eye and positions on the screen. WebGazer.js is written entirely in JavaScript and with only a few lines of code can be integrated in any website that wishes to better understand their visitors and transform their user experience. WebGazer.js runs entirely in the client browser, so no video data needs to be sent to a server. WebGazer.js can run only if the user consents in giving access to their webcam. Examples of how WebGazer.js works can be found here.


Plausible Analytics - Simple, open-source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics

  •    Elixir

Plausible Analytics is a simple, lightweight (< 1 KB), open-source and privacy-friendly alternative to Google Analytics. It doesn’t use cookies and is fully compliant with GDPR, CCPA and PECR. You can self-host Plausible or have us run it for you in the Cloud. It is easy to understand and it cuts through the noise. Check your site traffic and get all the essential insights on one page in one minute. There are no layers of menus, there is no need for you to build custom reports, custom dashboards or PowerPoint documents.

tracklytics - ✔️ Annotation based tracking handler with aspect oriented programming

  •    Java

We all use analytics tools to provide a better user experience. (Mixpanel, Firebase, Fabric etc). I call this concept as tracking. Tracking events are cross-cutting and boiler plate most of the time. Tracklytics abstracts away all tracking events into annotations. Add the following code block to in your app/build.gradle.

PostHog - Product analytics, built for developers

  •    Python

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. It provides event-based analytics at a user level, capture your product's usage data to see which users are doing what in your application. It automatically capture clicks and pageviews to analyze what your users are doing without pushing events manually.

Ackee - Self-hosted, Node.js based analytics tool for those who care about privacy

  •    Javascript

Ackee runs on your own server, analyzes the traffic of your websites and provides useful statistics in a minimal interface. Get an overview of all your websites and analyze how they perform together. You can collect data using the centralised GraphQL API or build your own interface and service upon Ackee. The API of Ackee acts as a powerful hub, perfect to collect data from a variety of sources, including websites, services and apps.

snowplow-javascript-tracker - Snowplow event tracker for client-side JavaScript

  •    Javascript

Add analytics to your websites and web apps with the Snowplow event tracker for JavaScript. With this tracker you can collect user event data (page views, e-commerce transactions etc) from the client-side tier of your websites and web apps.

EventHub - An open source event analytics platform

  •    Java

EventHub enables companies to do cross device event tracking. Events are joined by their associated user on EventHub and can be visualized by the built-in dashboard to answer the following common business questions.

Memgraph - Build modern, graph-based applications on top of your streaming data in minutes

  •    C++

Memgraph is a streaming graph application platform that helps you wrangle your streaming data, build sophisticated models that you can query in real-time, and develop graph applications.

angulartics2 - Vendor-agnostic analytics for Angular2 applications.

  •    TypeScript

Pass string literals or regular expressions to exclude routes from automatic pageview tracking.By default, it removes IDs matching this pattern (ie. either all numeric or UUID) : ^\d+$|^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$.

angulartics - Analytics for AngularJS applications.

  •    Javascript

**Note: we are dropping support for NuGet.You can also use $analyticsProvider.withBase(true) instead of $analyticsProvider.withAutoBase(true) if you are using a <base> HTML tag.

Get User Profile Information from SharePoint UserProfile Service

  •    

Used SharePoint object model to get the user profile information from the User Profile Service. Updated the code to retrieve all the user profiles.

Umami - Simple, fast, website analytics alternative to Google Analytics

  •    Javascript

Umami is a simple, fast, website analytics alternative to Google Analytics. Umami measures just the important metrics that you care about: pageviews, devices used, and where your visitors are coming from. Everything is displayed on a single, easy to browse page. It is able to track an unlimited number of websites from a single installation. You can even track subdomains and individual URLs.

rack-tracker - Tracking made easy: Don’t fool around with adding tracking and analytics partials to your app and concentrate on the things that matter

  •    Ruby

Most of the applications we're working on are using some sort of tracking/analytics service, Google Analytics comes first but its likely that more are added as the project grows. Normally you'd go ahead and add some partials to your application that will render out the needed tracking codes. As time passes by you'll find yourself with lots of tracking snippets, that will clutter your codebase :) When just looking at Analytics there are solutions like rack-google-analytics but they just soley tackle the existence of one service. This will add Google Analytics as a tracking handler.

keen-js - Keen.io JavaScript SDKs

  •    Javascript

If you haven’t done so already, login to Keen to create a project. The Project ID and API Keys are available on the Access page of the Project Console. You will need these for the next steps. What is an event? An event is a record of something important happening in the life of your app or service: like a click, a purchase, or a device activation.

kratos - Next-gen identity server (think Auth0, Okta, Firebase) with Ory-hardened authentication, MFA, FIDO2, profile management, identity schemas, social sign in, registration, account recovery, service-to-service and IoT auth

  •    Go

We highly recommend reading the Ory Kratos introduction docs to learn more about Ory Krato's background, feature set, and differentiation from other products. Please consider giving back by becoming a sponsor of our open source work on Patreon or Open Collective.

Xoops - Web content management system in PHP

  •    PHP

XOOPS is an acronym of eXtensible Object Oriented Portal System. XOOPS is a web application platform written in PHP for the MySQL database. Its object orientation makes it an ideal tool for developing small or large community websites, intra company and corporate portals, weblogs and much more.






We have large collection of open source products. Follow the tags from Tag Cloud >>


Open source products are scattered around the web. Please provide information about the open source projects you own / you use. Add Projects.