We picked Streamory because it feels just right for whamv this project is all about:
- Stream stands for the continuous flow of data — like all those events and interactions happening in real time inside your app.
- Story hints at the bigger picture — the story your data tells about how users behave and how your product performs.
Put them together, and Streamory means a real-time memory for your product — helping teams see what’s happening, understand it quickly, and improve things faster.
The logo’s wave shape is inspired by flowing streams of data — always moving, always fresh.
It’s a simple, clean symbol of how data pipelines work: smooth, flexible, and built to handle whatever you throw at them.
The blue gradient reflects qualities we care about: clarity, depth, and reliability — just like how we want your analytics to feel.
streamory/
├── assets/logo/ # Branding assets
├── infra/ # Docker Compose, Kubernetes files
├── packages/
│ └── sdk-js/ # Public JavaScript SDK
├── apps/
│ ├── ingestion-api/ # REST API to ingest events
│ ├── dashboard/ # (Planned) UI for viewing event data
│ └── processor/ # (Planned) Kafka consumer and transformation
├── README.md
└── .gitignore
A lightweight, ESM-compatible SDK for tracking frontend events securely.
- Drop-in usage for browser apps
- Bearer token authentication
- Auto token refresh (optional)
- Minimal footprint
- Works with modern frameworks (React, Vue, etc.)
npm install @mynq/streamory-sdkimport StreamorySDK from "@mynq/streamory-sdk";
const sdk = new StreamorySDK("ACCESS_TOKEN", "https://api.streamory.com/v1/events");
sdk.track("user_signup", {
plan: "Pro",
referrer: "Twitter"
});- Access Token + Refresh Token
- Tokens stored safely per project
- Refresh tokens used to renew expired access tokens
- SDK handles refresh automatically
- No hardcoding long-lived secrets in browser
- Express-based ingestion endpoint
- Validates and queues events to Kafka
- Future: per-project key validation, rate limiting, quotas
POST /v1/events- Ingests eventsGET /v1/health- HealthcheckPOST /v1/auth/token- Refresh access tokens (WIP)
- Kafka for queuing
- ClickHouse for storage
- Docker + Kubernetes for orchestration
- Future: Support Helm Charts, Terraform module
- Build and publish initial SDK
- Basic ingestion API with Kafka producer
- Create the Kafka Consumer Processor to transform and store events into ClickHouse
- Set up ClickHouse schema and ingestion pipeline for storing analytics
- Build the Dashboard UI to visualize event data
- Dockerize the Ingestion API and set up Kubernetes for easier deployment
- Add Authentication & Authorization layers (API keys, JWTs) to the ingestion API
- Token refresh and expiry logic
- Hosted version of Streamory
We welcome issues and PRs!
git clone https://github.com/mayank-17/streamory.git
cd packages/sdk-js
npm install
npm run devPlease follow Conventional Commits for all commits.
MIT © Mayank
