Skip to main content
VIJ is an open-source production error monitoring platform designed for modern JavaScript and TypeScript applications. It provides developers with a clean, self-hostable alternative to heavy SaaS tools like Sentry — combining simplicity, transparency, and complete control over your data.

What is VIJ?

VIJ consists of two main components that work together to provide comprehensive error monitoring:

vij-sdk

A minimal, framework-agnostic SDK that automatically captures runtime errors, unhandled rejections, and custom exception logs from both browser and Node.js environments. Key Features:
  • Automatic error capture in browser and Node.js
  • Intelligent batching and queue management
  • Rich contextual metadata (browser info, viewport, network, process details)
  • Configurable severity levels (error, warning, info)
  • TypeScript support with full type definitions
  • Zero dependencies (except tslib)

vij-admin

A fullstack Next.js dashboard that serves as both the ingestion API and visualization layer. Key Features:
  • Real-time error monitoring dashboard
  • AI-powered error analysis with Gemini
  • Automatic error grouping and deduplication
  • Advanced filtering and full-text search
  • Analytics and trend visualization
  • MongoDB storage with optimized indexes
  • Self-hosted with complete data control

Why VIJ?

VIJ is fully self-hosted. Your error data never leaves your infrastructure, ensuring compliance with data privacy regulations and giving you complete control over sensitive information.
Open-source and MIT licensed. You can modify, extend, and deploy VIJ however you need without worrying about pricing tiers, API limits, or vendor restrictions.
Built-in integration with Google Gemini provides intelligent error analysis, root cause suggestions, and automated fix recommendations — without sending data to third-party services.
Clean, intuitive interface with powerful filtering, search, and grouping. View rich stack traces, metadata cards, and contextual information exactly when you need it.

Platform Support

VIJ SDK works seamlessly across multiple environments:
  • Browser
  • Node.js
  • TypeScript
  • Captures unhandled errors and promise rejections
  • Collects browser context (viewport, screen, network)
  • Uses sendBeacon API for reliable delivery
  • Supports all modern browsers

Use Cases

VIJ is perfect for:
  • Production monitoring - Track errors in real-time across your production applications
  • Development debugging - Catch and analyze errors during development with full context
  • Team collaboration - Share error reports with full stack traces and metadata
  • Compliance-sensitive projects - Keep error data on your own infrastructure
  • Multi-environment tracking - Monitor production, staging, and development separately
  • Open-source projects - Self-host monitoring without SaaS costs

Architecture Overview

┌─────────────────┐
│  Your App       │
│  (Browser/Node) │
└────────┬────────┘

         │ vij-sdk captures errors
         │ and sends batched logs


┌─────────────────┐
│  VIJ Admin      │
│  (Next.js API)  │
└────────┬────────┘

         ├─► MongoDB (error storage)

         ├─► Gemini AI (error analysis)

         └─► Dashboard (visualization)
VIJ is designed to be lightweight and performant. The SDK has minimal overhead, and the dashboard scales efficiently with MongoDB indexing and intelligent caching.

Next Steps

1

Follow the quickstart guide

Get VIJ running in under 5 minutes with our step-by-step quickstart guide.Go to Quickstart →
2

Install the SDK

Add error tracking to your application with the vij-sdk package.SDK Installation →
3

Deploy the dashboard

Set up your self-hosted monitoring dashboard with VIJ Admin.Dashboard Setup →
4

Explore advanced features

Learn about error grouping, AI analysis, and advanced filtering.Advanced Guides →

Community and Support

VIJ is actively maintained and open to contributions.
Ready to get started? Head over to the Quickstart Guide to set up VIJ in minutes.