Offen is an open alternative to common web analytics tools. Gain insights while your users have full access to their data. Lightweight, self hosted and free.
- Core features
- How it works
- Essential metrics
- Objectives
- Test drive
- Project status
- Contributions welcome
- Kind support
- Give feedback
- Who's using Offen?
- License
- Links
Open & free
Our lightweight and open source code can be fully audited by the community. Offen will always be available for free.
Self hosted
Comply with GDPR guidelines. Don't share data with third parties. Your users have full access to their data.
Fair & secure
Opt in only. Users must actively give their consent to data collection. All data is encrypted end-to-end.
Your job
- Self host Offen and thereby comply with GDPR guidelines.
- Integrate the code snippet into pages you want to track.
- Make your users aware of the access to their data.
- Improve your services with fair and transparent insights.
Benefits for your users
- Opt in to data collection or decide to not participate at all.
- Review own data with detailed explanations of metrics and terms.
- Only delete usage data or opt out completely at any time.
What you see
Data of all pages where your Offen installation is active. For example:
What your users see
Data of all pages a user has visited where your Offen installation is active. For example:
More features
- Easily analyze multiple websites within one installation.
- All website accounts can be shared within teams.
- User data is only stored for 6 months and then deleted.
- A detailed documentation on how to run Offen is available.
All important statistics that help you to improve your service.
Collected without violating the privacy of your users.
Privacy friendly
Collection of usage data is opt in, users that do not actively opt in will never leave a trace. After opt in, Offen collects the minimal amount of data needed to generate meaningful statistics for operators. No IPs, User-Agent strings or similar are being collected or even looked at.
Secure
Data in Offen is encrypted End-To-End. Clients encrypt usage data before it leaves the browser and there is no way for the server storing this data to decrypt it. Attackers have no means to compromise an instance, accidental data leaks cannot expose user data.
Self hosted and lightweight
You can run Offen on-premises, or in any other deployment scenario that fits your need. All you need to do is download a single binary file or pull a Docker image, and run it on your server. Offen will automatically install and renew SSL certificates for you if you want it to. If you do not want to deploy a database, you can use SQLite to store data directly on the server.
Transparent and fair
Offen treats the user as a party of equal importance in the collection of usage data. Users have access to the same set of tools for analyzing their own data and they can delete their data at any time.
If you're curious, give it a test drive right now:
docker run --rm -it -p 9876:9876 offen/offen:latest demo -port 9876
This creates an ephemeral one-off installation that is populated with random data and is running on http://localhost:9876
. There, you can log in using the account [email protected]
and password demo
.
Offen is in active development. Check our blog and Twitter for detailed updates on what we are working on right now and what's up next.
This repository contains all source code needed to build and run Offen, both on the server as well as on the client. Also see each of the READMEs in the subdirectories for information on how to work on that particular area of the application.
The development setup requires docker
and docker-compose
to be installed.
After cloning the repository, you can build the containers and install dependencies using:
$ make setup
Next seed the database for the server
application:
$ make bootstrap
You can test your setup by starting the application:
$ make up
which should enable you to access http://localhost:8080/auditorium/ and use the Auditorium
Run the tests for all subapplications using
$ make test
The documentation site at https://docs.offen.dev is also part of this repository. To run this site locally, you can:
make setup-docs
make docs
This will serve the documentation on https://localhost:4000.
We are happy to work with NLnet Foundation, which actively supports our efforts as part of its Next Generation Internet initiative.
Cross-Browser testing provided by BrowserStack.
Found an issue or want to add something? Please do not hesitate to file an issue or open a pull request. For details head to our contributing guideline.
Are you using Offen? We're happy to feature you in this README. Send a PR adding your site or app to this section.
Work in this repository is licensed under multiple licences.
- All original source code is licensed under Apache-2.0.
- All documentation is licensed under Apache-2.0.
- The Offen icon and logo are licensed as CC-BY-NC-ND-4.0.
See the NOTICE file for license information on works that get bundled by Offen.