Welcome to Cruxstack
Transform raw user events into actionable intelligence with our User Intelligence Infrastructure (UII) platform.
Cruxstack empowers developers to track user behaviour by providing a comprehensive suite of tools for event collection, enrichment, and analysis. Our platform transforms behavioral data into meaningful user traits that drive better product decisions.
🚀 What Makes Cruxstack Special​
Multi-Platform SDKs​
- Node.js SDK: Server-side event tracking with automatic retry and queueing
- Browser SDK: Client-side tracking for React, Vue, Angular, and plain JavaScript
- React Native SDK: Mobile app tracking (coming soon)
- Android SDK: Native Android integration (coming soon)
Intelligent Event Processing​
- Automatic Enrichment: Every event gets metadata like UUID, timestamp, timezone
- Type Safety: Full TypeScript support for modern development
- Real-time Processing: Events are processed and available immediately
- ML-Powered Traits: Advanced machine learning transforms events into user insights
Developer Experience​
- Simple Integration: Get started in minutes with minimal setup
- Robust Error Handling: Automatic retry mechanisms ensure no data loss
- Comprehensive Documentation: Clear guides, examples, and best practices
- Production Ready: Built for scale with enterprise-grade reliability
🎯 Use Cases​
E-commerce Analytics​
Track user journeys from product discovery to purchase completion:
Browser SDK (Frontend):
// Product discovery
await cruxstack.trackCustom("product_viewed", {
productId: "prod_456",
category: "electronics",
});
// Purchase funnel
await cruxstack.trackCustom("cart_added", {
productId: "prod_456",
cartValue: 299.99,
});
Node.js SDK (Backend):
// Server-side purchase tracking
await cruxTrack("purchase_completed", {
userId: "user123",
orderId: "order_789",
totalAmount: 299.99,
});
User Engagement Tracking​
Monitor feature adoption and user behavior patterns:
Browser SDK (Frontend):
// Feature usage
await cruxstack.trackCustom("feature_activated", {
feature: "advanced_analytics",
});
await cruxstack.trackCustom("feature_used", {
feature: "data_export",
duration: 45000,
});
Node.js SDK (Backend):
// Server-side feature tracking
await cruxTrack("feature_activated", {
userId: "user123",
feature: "api_access",
});
Conversion Optimization​
Identify and optimize conversion funnels:
Browser SDK (Frontend):
// User journey tracking
await cruxstack.trackCustom("user_signup_started", {
source: "organic_search",
});
await cruxstack.trackCustom("onboarding_completed", {
stepsCompleted: 5,
});
Node.js SDK (Backend):
// Server-side conversion tracking
await cruxTrack("subscription_started", {
userId: "user123",
plan: "premium",
});
🛠Quick Start​
1. Choose Your Platform​
Platform | Use Case | Framework Support | Status |
---|---|---|---|
Node.js | Server-side applications | Express, Fastify, Koa | ✅ Production Ready |
Browser | Web applications | React, Vue, Angular, Plain JS | ✅ Production Ready |
React Native | Mobile apps | React Native | 🚧 Coming Soon |
Android | Native Android apps | Native Android | 🚧 Coming Soon |
2. Install & Initialize​
For Node.js applications:
npm install node-tracker-sdk
import { init, cruxTrack } from "node-tracker-sdk";
// Initialize the SDK
init({ appId: "your-app-id-123" });
// Track your first event
await cruxTrack("user_signup", {
userId: "user123",
email: "[email protected]",
});
For Browser applications:
npm install @cruxstack/browser-sdk
import { init, cruxCustom } from "@cruxstack/browser-sdk";
// Initialize the SDK
init({
clientId: "web_demo_client_001", // Required
customerId: "cust-2201", // Optional
customerName: "Acme, Inc.", // Optional
// userId: 'user-8731', // Optional; omit for anonymous
autoCapture: true, // Optional (default: true)
debugLog: false, // Optional (default: false)
});
// Track a custom event
cruxCustom("purchase_completed", {
productId: "SKU-123",
amount: 99.99,
currency: "USD",
});
3. Framework-Specific Examples​
React:
import React, { useEffect } from "react";
import { init, cruxCustom } from "@cruxstack/browser-sdk";
function App() {
useEffect(() => {
init({
clientId: "web_demo_client_001", // Required
customerId: "cust-2201", // Optional
customerName: "Acme, Inc.", // Optional
// userId: 'user-8731', // Optional; omit for anonymous
autoCapture: true, // Optional (default: true)
debugLog: false, // Optional (default: false)
});
}, []);
const handleClick = async () => {
// Track a custom event
cruxCustom("purchase_completed", {
productId: "SKU-123",
amount: 99.99,
currency: "USD",
});
};
return <button onClick={handleClick}>Sign Up</button>;
}
Vue.js:
<template>
<button @click="trackEvent">Sign Up</button>
</template>
<script>
import { init, cruxCustom } from "@cruxstack/browser-sdk";
export default {
mounted() {
init({
clientId: "web_demo_client_001", // Required
customerId: "cust-2201", // Optional
customerName: "Acme, Inc.", // Optional
// userId: 'user-8731', // Optional; omit for anonymous
autoCapture: true, // Optional (default: true)
debugLog: false, // Optional (default: false)
});
},
methods: {
trackEvent() {
cruxCustom("purchase_completed", {
productId: "SKU-123",
amount: 99.99,
currency: "USD",
});
},
},
};
</script>
Angular:
import { Component, OnInit } from "@angular/core";
import { init, cruxCustom } from "@cruxstack/browser-sdk";
@Component({
selector: "app-signup",
template: '<button (click)="trackEvent()">Sign Up</button>',
})
export class SignupComponent implements OnInit {
ngOnInit() {
init({
clientId: "web_demo_client_001", // Required
customerId: "cust-2201", // Optional
customerName: "Acme, Inc.", // Optional
// userId: 'user-8731', // Optional; omit for anonymous
autoCapture: true, // Optional (default: true)
debugLog: false, // Optional (default: false)
});
}
trackEvent() {
cruxCustom("purchase_completed", {
productId: "SKU-123",
amount: 99.99,
currency: "USD",
});
}
}
4. Explore Your Data​
Once events are flowing, you can:
- Analyze user behavior patterns
- Identify conversion bottlenecks
- Personalize user experiences
- Optimize feature adoption
📚 Documentation Structure​
- Getting Started: Overview and quick setup
- Node.js SDK: Server-side integration
- Browser SDK: Frontend integration
- API Reference: Complete SDK documentation
- Guides: Best practices and real-world examples
- Troubleshooting: Common issues and solutions
🔗 Resources​
- GitHub Repository: Source code and issues
- Support: Get help from our team
- Community: Connect with other developers
Ready to start? Choose your platform: Node.js SDK or Browser SDK, or explore our comprehensive guides for practical examples.