π Production-ready open-source platform combining real-time analytics, visual workflow automation, and intelligent user behavior tracking. Built with modern microservices architecture for high performance and scalability.
Seentics is designed as a fully-featured open source platform with unlimited usage:
- β Unlimited everything - websites, workflows, funnels, events
- β No usage restrictions or billing limitations
- β Complete self-hosted control over your data
- β All core features - analytics, workflows, automation
- β Production-ready for any scale of deployment
Note: We also offer a hosted cloud service at seentics.com for those who prefer a managed solution. The codebase includes cloud mode features, but these are reserved for our official hosted service only.
- π― Visual Workflow Builder: Drag-and-drop automation with 50+ triggers, conditions, and actions
- π Real-Time Analytics: High-performance event processing (10,000+ events/sec) with TimescaleDB
- π Intelligent Automation: React to user behavior instantly with client and server-side actions
- ποΈ Microservices Architecture: Scalable, maintainable, and production-ready
- π‘οΈ Privacy-First: Built-in GDPR compliance and data privacy controls
- π Self-Hosted: Complete control over your data and infrastructure
- Drag-and-Drop Interface: Intuitive node-based workflow creation with real-time preview
- Smart Triggers: Page views, element clicks, funnel events, time spent, exit intent, scroll depth
- Advanced Conditions: URL patterns, traffic sources, visitor segments, device types, geolocation
- Powerful Actions: Dynamic modals, banners, emails, webhooks, redirects, custom JavaScript
- Real-time Testing: Live workflow preview and debugging tools
- Real-Time Processing: 10,000+ events/second with TimescaleDB optimization
- Comprehensive Tracking: Page views, custom events, user sessions, conversion funnels
- Advanced Dashboards: Interactive charts, real-time metrics, custom date ranges
- Funnel Analytics: Multi-step conversion tracking with drop-off analysis
- Privacy Compliant: GDPR-ready with data retention controls and user consent management
- Instant Response: Sub-100ms trigger-to-action execution
- Multi-Channel Actions: Client-side UI changes, server-side integrations, email campaigns
- Smart Targeting: Behavioral segmentation and personalized user experiences
- Scalable Execution: Distributed processing with Redis queuing and caching
- JWT Authentication: Secure token-based auth with refresh token support
- OAuth Integration: Google and GitHub single sign-on
- API Gateway: Centralized routing, rate limiting, and request validation
- Data Privacy: Built-in GDPR compliance tools and data export capabilities
| Service | Technology | Port | Purpose |
|---|---|---|---|
| API Gateway | Go/Gin | 8080 | Request routing, auth, caching, rate limiting |
| User Service | Node.js/Express | 3001 | Authentication, user management, billing |
| Analytics Service | Go | 3002 | Event tracking, analytics, reporting |
| Workflows Service | Node.js/Express | 3003 | Workflow management, execution, automation |
| Frontend | Next.js/React | 3000 | User interface and dashboard |
| Database | Purpose | Data Type |
|---|---|---|
| MongoDB | User accounts, websites, workflows | Document storage |
| TimescaleDB | Analytics events, metrics | Time-series data |
| Redis | Caching, queues, sessions | In-memory storage |
- Node.js 18+
- Go 1.21+
- Docker & Docker Compose
- Git
git clone https://github.com/skshohagmiah/Seentics
cd seentics# Start databases and Redis
docker compose up -d mongodb timescaledb redis
# Wait for services to be ready (check with docker compose ps)# Copy environment templates
cp .env.example .env
cp frontend/.env.example frontend/.env.local
# The platform runs in open source mode by default
# No additional configuration needed for full functionality
# Edit .env files with your configuration
# See Configuration section below for required variables# Option 1: Start all services with Docker Compose (Recommended)
docker compose up -d
# Option 2: Start services individually
cd services/users && npm install && npm run dev
cd services/analytics && go mod tidy && go run main.go
cd services/workflows && npm install && npm run devcd frontend
npm install
npm run dev- Frontend Dashboard: http://localhost:3000
- API Gateway: http://localhost:8080
- User Service: http://localhost:3001
- Analytics Service: http://localhost:3002
- Workflows Service: http://localhost:3003
- Sign up at http://localhost:3000
- Add a website to start tracking
- Install tracking code on your website
- Create workflows using the visual builder
- Monitor analytics and workflow performance
PORT=8080
USER_SERVICE_URL=http://user-service:3001
ANALYTICS_SERVICE_URL=http://analytics-service:3002
WORKFLOW_SERVICE_URL=http://workflows-service:3003
JWT_SECRET=your-secure-jwt-secret
RATE_LIMIT_PER_MINUTE=100
CACHE_TTL=300PORT=3001
MONGODB_URI=mongodb://localhost:27017/seentics_users
JWT_SECRET=your-secure-jwt-secret
GOOGLE_CLIENT_ID=your-google-oauth-client-id
GITHUB_CLIENT_ID=your-github-oauth-client-idPORT=3002
DATABASE_URL=postgresql://user:pass@localhost:5432/analytics
BATCH_SIZE=1000
BATCH_TIMEOUT=5s
WORKER_COUNT=10
LOG_LEVEL=infoPORT=3003
MONGODB_URI=mongodb://localhost:27017/seentics_workflows
REDIS_URL=redis://localhost:6379
JWT_SECRET=your-secure-jwt-secret# MongoDB (Users & Workflows)
docker run -d --name mongodb -p 27017:27017 mongo:latest
# TimescaleDB (Analytics)
docker run -d --name timescaledb -p 5432:5432 \
-e POSTGRES_DB=analytics \
-e POSTGRES_USER=user \
-e POSTGRES_PASSWORD=pass \
timescale/timescaledb:latest-pg15
# Redis (Caching & Queues)
docker run -d --name redis -p 6379:6379 redis:latest# Analytics Tracking
POST /api/v1/analytics/event - Track single event
POST /api/v1/analytics/event/batch - Batch event tracking
# Workflow Tracking
GET /api/v1/workflows/active - Get active workflows for site
POST /api/v1/workflows/execution/action - Execute workflow actions
# Funnel Tracking
GET /api/v1/funnels/active - Get active funnels for site
POST /api/v1/funnels/track - Track funnel events
# Authentication
POST /api/v1/user/auth/login - User login
POST /api/v1/user/auth/register - User registration
POST /api/v1/user/auth/google - Google OAuth login
GET /api/v1/user/auth/me - Get current user
# Website Management
GET /api/v1/user/websites - Get user websites
POST /api/v1/user/websites - Create website
PUT /api/v1/user/websites/:id - Update website
DELETE /api/v1/user/websites/:id - Delete website
# Analytics Dashboard
GET /api/v1/analytics/dashboard/:websiteId - Dashboard overview
GET /api/v1/analytics/top-pages/:websiteId - Top pages report
GET /api/v1/analytics/hourly-stats/:websiteId - Hourly statistics
GET /api/v1/analytics/funnel-analytics/:websiteId - Funnel performance
# Workflow Management
GET /api/v1/workflows - Get user workflows
POST /api/v1/workflows - Create workflow
PUT /api/v1/workflows/:id - Update workflow
DELETE /api/v1/workflows/:id - Delete workflow
GET /api/v1/workflows/:id/analytics - Workflow performance
- Start Infrastructure:
docker compose up -d - Start Services: Each service can be run individually for development
- Frontend Development: Next.js with hot reloading
- API Testing: Use Postman or curl for API testing
# Run all tests
npm run test
# Run specific service tests
cd services/users && npm test
cd services/analytics && go test ./...
cd services/workflows && npm test
# Frontend tests
cd frontend && npm test- ESLint for JavaScript/TypeScript
- Go fmt and golangci-lint for Go
- Prettier for code formatting
- Husky for pre-commit hooks
- Service Health:
/healthendpoint on each service - Readiness Checks:
/readyendpoint for deployment readiness - Metrics: Prometheus metrics on
/metricsendpoints
- Event Processing: 10,000+ events/second with TimescaleDB optimization
- API Response Time: <100ms for cached responses via Redis
- Dashboard Load Time: <2 seconds for 30-day analytics with 1M+ events
- Real-time Updates: <5 second refresh intervals
- Workflow Execution: Sub-100ms trigger-to-action response time
- Concurrent Users: Supports 1000+ simultaneous dashboard users
- Prometheus: Metrics collection
- Grafana: Dashboard visualization
- Jaeger: Distributed tracing
- ELK Stack: Log aggregation
β οΈ Important: The cloud mode features are reserved for our official hosted service at seentics.com. These features are included in the codebase for transparency but are not intended for third-party commercial use.
For developers interested in the implementation, cloud mode can be enabled with:
# Backend (.env)
CLOUD_FEATURES_ENABLED=true
# Frontend (.env.local)
NEXT_PUBLIC_CLOUD_FEATURES_ENABLED=true
# Additional billing configuration (requires Stripe setup)
STRIPE_PUBLISHABLE_KEY=pk_live_...
STRIPE_SECRET_KEY=sk_live_...
STRIPE_WEBHOOK_SECRET=whsec_...This adds subscription tiers, usage limits, billing pages, and team management features for our managed service.
# Build Docker images
docker compose -f docker-compose.prod.yml build
# Deploy to production
docker compose -f docker-compose.prod.yml up -d
# Scale services
docker compose -f docker-compose.prod.yml up -d --scale analytics-service=3- Development:
docker-compose.yml - Staging:
docker-compose.staging.yml - Production:
docker-compose.prod.yml
# Apply Kubernetes manifests
kubectl apply -f k8s/
# Check deployment status
kubectl get pods -n seenticsWe welcome contributions! Please see our Contributing Guide for details.
- π Report Bugs: Create detailed bug reports
- π‘ Suggest Features: Propose new functionality
- π Improve Docs: Enhance documentation
- π§ Code Changes: Submit pull requests
- π§ͺ Write Tests: Add test coverage
- π Localization: Help with translations
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and add tests
- Commit:
git commit -m 'Add amazing feature' - Push:
git push origin feature/amazing-feature - Open a Pull Request
- System Architecture - Complete system overview
- Analytics Service - Analytics service documentation
- API Reference - API endpoints and usage
- Features Guide - Detailed feature descriptions
- User Management - User service details
- Workflow Engine - Workflow service details
- π Documentation - Comprehensive guides
- π Issues - Bug reports and feature requests
- π¬ Discussions - Community discussions
- π§ Email Support - Direct support
- π¦ Twitter - Latest updates
This project is licensed under the MIT License - see the LICENSE file for details.
If you find this project helpful, please give it a star! β
- Cart Abandonment: Trigger exit-intent modals with discount codes
- Product Recommendations: Show personalized product suggestions based on browsing behavior
- Conversion Optimization: A/B test different checkout flows and CTAs
- User Onboarding: Guide new users through feature discovery workflows
- Feature Adoption: Trigger in-app messages for unused features
- Churn Prevention: Identify at-risk users and trigger retention campaigns
- Newsletter Signups: Smart popups based on reading time and scroll depth
- Content Personalization: Show relevant articles based on user interests
- Engagement Tracking: Monitor content performance and user engagement patterns
- Smart Forms: Progressive profiling based on user behavior
- Exit Intent: Capture leaving visitors with targeted offers
- Nurture Campaigns: Automated email sequences based on website interactions
- π Documentation: Comprehensive guides and API references
- π GitHub Issues: Bug reports and feature requests
- π¬ Discussions: Community Q&A and feature discussions
- π§ Contributing: Open source contributions welcome
- π§ Support: Community-driven support and assistance
- β Visual workflow builder
- β Real-time analytics
- β Basic automation triggers
- β GDPR compliance tools
- π Advanced A/B testing
- π Email integration (SendGrid, Mailgun)
- π Advanced segmentation
- π Mobile app analytics
- π± Mobile SDK
- π€ AI-powered insights
- π Advanced integrations
- π Custom reporting
Built with β€οΈ by the open source community
Seentics - Making websites intelligent, one workflow at a time.