इस प्रोजेक्ट के बारे में
Flarelytics एक ओपन-सोर्स वेब-एनालिटिक्स प्रोजेक्ट है जिसे वेबसाइट पर कंटेंट पढ़ने में visitors द्वारा बिताए गए समय को मापने के लिए डिज़ाइन किया गया है। यह mainstream analytics services के लिए एक प्राइवेसी-रेस्पेक्टिंग विकल्प प्रदान करने का लक्ष्य रखता है, जो अक्सर extensive personal data एकत्र करते हैं या precise dwell-time metrics से वंचित होते हैं。
**Architecture**
- **Browser script** (`analytics` folder में स्थित) – एक छोटा JavaScript snippet जिससे website owners अपनी pages में embed करते हैं। यह प्रत्येक visitor session के लिए एक UUID जनरेट करता है और backend को दो events भेजता है: एक page load होने पर और दूसरा page hide/unload होने पर।
- **Backend** (`src` में) – एक TypeScript application जिसे Cloudflare Worker के रूप में deploy किया जाता है। यह एक simple HTTP API expose करता है जो events प्राप्त करके उन्हें PlanetScale MySQL-compatible database में store करता है। Backend raw events को per-page dwell-time statistics में aggregate भी करता है जिन्हें dashboard पर देखा जा सकता है।
**Key features**
- Self-hosted: worker को अपने Cloudflare account पर चलाएं और data अपने PlanetScale database में store करें。
- Privacy-first: कोई third-party tracking cookies नहीं, कोई IP logging नहीं, और सभी data आपके नियंत्रण में रहता है।
- Single-domain support (future versions में multi-domain handling जुड़ सकता है)。
- `wrangler` और `pnpm` का उपयोग करके simple deployment workflow。
**Development workflow**
1. मुफ्त Cloudflare और PlanetScale accounts बनाएं。
2. Repo clone करें और Node.js v18+, pnpm, और PlanetScale CLI install करें。
3. `flarelytics` नाम का एक PlanetScale database `main` और `dev` branches के साथ setup करें; local work के लिए `dev` branch का उपयोग करें。
4. एक Cloudflare Worker (e.g., `flarelytics-dev`) बनाएं और database credentials को secret environment variables के रूप में store करें。
5. tables create करने के लिए `pnpm run setup-test-db` चलाएं, फिर local worker शुरू करने के लिए `pnpm run dev` चलाएं。
6. जब test environment के लिए ready हो तो `npm run deploy-dev` के साथ deploy करें。
**Contribution**
प्रोजेक्ट Budapest University of Technology and Economics के Google Developer Student Club द्वारा maintain किया जाता है। Contributors को GitHub tracker से issues pick करने, standard fork-branch-PR flow का पालन करने, और README में outlined contribution guidelines का अनुसरण करने के लिए कहा जाता है।
**Status**
Flarelytics active development में है और production use के लिए अभी recommended नहीं है। Future plans में multi-domain support, richer dashboards, और optional authentication for analytics UI शामिल हैं।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.