Skip to content

A telemetry and analytics platform for tracking usage of self-hosted open-source projects

License

Notifications You must be signed in to change notification settings

bstudios/telemetry-and-analytics

Repository files navigation

Bithell Studios Telemetry & Analytics Platform

This project allows us to collect telemetry andd display analytics from our open-source applications, in order to better understand how our users are using our software and its reach and impact.

The project runs under the following privacy principles:

  • Like the applications themselves, this application is fully open-source and the code is available for anyone to inspect and audit.
  • We do not collect any personally identifiable information about users of our projects.
  • Those self-hosting projects can opt-out of telemetry collection at any time.

This project

This is a Remix project, which is a framework for building server-rendered React applications. It runs on Cloudflare Workers with their D1 database, which allows us to run the application on the edge with minimal latency - essential for telemetry collection. You will need to rerun typegen whenever you make changes to wrangler.toml.

It uses Mantine for UI components, and Drizzle for database management.

It is MIT licensed.

Development

We utilize Wrangler for local development to emulate the Cloudflare runtime. This is already wired up in package.json as the dev script:

# start the remix dev server and wrangler
npm run dev

Open up http://127.0.0.1:8788 and you should be ready to go!

To generate migrations after adjusting the schema, run npx drizzle-kit generate:sqlite

First, build your app for production:

Note

These notes are incomplete

  1. Create a new project on Cloudflare Pages
  2. Make sure to disable fallback mode (open) in the Cloudflare Pages settings
  3. Mount the D1 database in the project as "DB"

Typegen

Generate types for your Cloudflare bindings in wrangler.toml:

npm run typegen

About

A telemetry and analytics platform for tracking usage of self-hosted open-source projects

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Sponsor this project