Skip to content

Heet852003/InsightBoard

Repository files navigation

InsightBoard - B2B SaaS Product Analytics Platform

InsightBoard Logo

InsightBoard is a full-stack, scalable product telemetry and user behavior analytics platform — essentially a Mixpanel or Amplitude clone — where companies can plug in a tracking SDK into their SaaS apps and view:

  • Real-time feature usage
  • User retention funnels
  • Session heatmaps
  • Custom event dashboards

Project Structure

InsightBoard/
├── backend/
│   ├── api/            # FastAPI event ingestion API
│   └── aggregator/     # Data aggregation service
├── frontend/
│   └── dashboard/      # React dashboard UI
├── sdk/
│   └── js/             # JavaScript client SDK
└── docs/               # Documentation

Key Features

1. 📦 Event Ingestion API

  • Accepts POST requests from apps/users via JavaScript SDK
  • Rate-limited, auth-enforced API
  • Batches sent every 5s to reduce load
  • Stack: FastAPI, PostgreSQL, Kafka, Redis

2. 📡 JavaScript Client SDK

  • Lightweight client SDK for frontend apps
  • Sends batched analytics to /track endpoint
  • Uses localStorage for buffering offline events
  • Stack: Vanilla JS / ES Modules

3. 📊 Dashboard UI

  • Line charts for event frequency over time
  • Retention funnel builder
  • Breakdown by custom properties
  • Live feed for latest events
  • Stack: React, TailwindCSS, Chart.js, Zustand

4. 🛠 Custom Dashboard Builder

  • Drag and drop chart components
  • Create "boards" with different time filters
  • Save/share views
  • Stack: React DnD, local storage/session persistence

5. 📉 Data Aggregator & Time-Series Analysis

  • Kafka consumers batch and insert events
  • Store in ClickHouse for fast time-series analytics
  • Stack: Kafka, ClickHouse, Python (for ETL)

6. 👥 Account & Team Management

  • Org → Project → Team → Members
  • RBAC permissions: View / Edit / Admin
  • Invite users, manage API keys per project
  • Stack: PostgreSQL, Auth0 or Firebase Auth

Architecture

[Frontend App]
    ↓
[JS SDK] →→→→→ [InsightBoard API Gateway]
                      ↓
                 [Kafka Queue]
                      ↓
          [Event Aggregator Service]
                      ↓
                [ClickHouse DB]
                      ↓
                [Analytics Dashboard]

Getting Started

Prerequisites

  • Node.js (v16+)
  • Python (v3.9+)
  • Docker and Docker Compose
  • PostgreSQL
  • Kafka
  • ClickHouse

Installation

  1. Clone the repository
git clone https://github.com/yourusername/InsightBoard.git
cd InsightBoard
  1. Set up the backend
cd backend/api
pip install -r requirements.txt
  1. Set up the frontend
cd frontend/dashboard
npm install
  1. Set up the SDK
cd sdk/js
npm install
  1. Start the services using Docker Compose
docker-compose up -d

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors