Overview
Self-hosted web analytics platform that respects user privacy with no cookies or cross-site tracking. Features automatic data backup to Arkiv blockchain for decentralized storage and enhanced data security.
How it uses Golem DB
// Sync analytics data to Arkiv
const pageviewEntities = pageviews.map(row => ({
data: Buffer.from(JSON.stringify(row)),
btl: calculateBTL(30), // 30 days
stringAnnotations: [
{ key: 'type', value: 'pageview' },
{ key: 'source', value: 'umami' },
{ key: 'website_id', value: row.website_id },
{ key: 'url', value: row.url },
{ key: 'timestamp', value: row.created_at }
],
numericAnnotations: [
{ key: 'umami_id', value: row.id },
{ key: 'sync_time', value: Math.floor(Date.now() / 1000) }
]
}));
const receipts = await golemClient.createEntities(pageviewEntities);