Skip to Content
Quick Start

Quick Start

This guide will help you set up Eventara on your local development environment.

Quick Start

Get Eventara running in under 2 minutes:

# Clone the repository git clone https://github.com/tusharkhatriofficial/eventara.git cd eventara # Start all services with Docker Compose docker compose up --build -d

Then access:

Continue reading for detailed setup instructions and verification steps.

Prerequisites

Before starting, ensure you have the following installed:

  • Docker and Docker Compose (for containerized deployment)
  • Git (to clone the repository)

For local development without Docker:

  • Java 21 or higher
  • PostgreSQL 14 or higher
  • Apache Kafka (Confluent Platform 7.5.0 or compatible)
  • Node.js 18+ and npm (for the dashboard)

Installation

This is the fastest way to get all services running.

Step 1: Clone the Repository

git clone https://github.com/tusharkhatriofficial/eventara.git cd eventara

Step 2: Start All Services

docker compose up --build -d

This command starts the following services:

  • PostgreSQL database (port 5432)
  • Zookeeper (port 2181)
  • Kafka broker (ports 9092, 9093)
  • Kafka UI (port 8090)
  • Spring Boot API (port 8080)
  • React Dashboard (port 5173)

Step 3: Wait for Services to Initialize

Wait approximately 30 seconds for all services to start and be ready.

# View logs to monitor startup docker compose logs -f

Step 4: Verify Installation

Access the services:

ServiceURLDescription
Dashboardhttp://localhost:5173 Real-time analytics UI
APIhttp://localhost:8080 REST API endpoints
Swagger UIhttp://localhost:8080/swagger-ui.html Interactive API documentation
Kafka UIhttp://localhost:8090 Kafka topic visualization

Step 5: Test the System

Send a test event:

curl -X POST http://localhost:8080/api/v1/events \ -H "Content-Type: application/json" \ -d '{ "eventType": "user.login", "source": "auth-service", "userId": "test_user_123", "severity": "INFO" }'

Expected response:

{ "status": "accepted", "eventId": "evt_a1b2c3d4", "eventType": "user.login", "timestamp": "2026-01-12T10:30:45.123Z", "message": "Event accepted for processing" }

Watch the dashboard at http://localhost:5173  update in real-time.

Option 2: Local Development

For development without Docker:

Step 1: Set Up PostgreSQL

Create a database:

CREATE DATABASE eventara; CREATE USER postgres WITH PASSWORD 'mysecretpassword'; GRANT ALL PRIVILEGES ON DATABASE eventara TO postgres;

Step 2: Set Up Kafka

Download and start Kafka locally, or use Confluent Platform. Ensure it’s running on localhost:9093.

Step 3: Configure Application

Update src/main/resources/application.properties:

spring.datasource.url=jdbc:postgresql://localhost:5432/eventara spring.datasource.username=postgres spring.datasource.password=mysecretpassword spring.kafka.bootstrap-servers=localhost:9093

Step 4: Run the Backend

./mvnw spring-boot:run

Step 5: Run the Dashboard

cd eventara-dashboard npm install npm run dev

Access the dashboard at http://localhost:5173 .

Quick Test Script

Run this script to generate sample events for testing:

for i in {1..60}; do curl -s -X POST http://localhost:8080/api/v1/events \ -H "Content-Type: application/json" \ -d '{"eventType":"user.login","source":"auth-service","userId":"user_'$i'","severity":"INFO"}' && curl -s -X POST http://localhost:8080/api/v1/events \ -H "Content-Type: application/json" \ -d '{"eventType":"payment.success","source":"payment-service","userId":"user_'$i'","severity":"INFO"}' && curl -s -X POST http://localhost:8080/api/v1/events \ -H "Content-Type: application/json" \ -d '{"eventType":"order.created","source":"order-service","userId":"user_'$i'","severity":"WARNING"}' && curl -s -X POST http://localhost:8080/api/v1/events \ -H "Content-Type: application/json" \ -d '{"eventType":"payment.failed","source":"payment-service","userId":"user_'$i'","severity":"ERROR"}' sleep 0.3 done

This script generates 240 events over approximately 20 seconds, allowing you to see the dashboard update in real-time.

Stopping Services

Docker Compose

# Stop all services docker compose down # Stop and remove volumes (clears all data) docker compose down -v

Local Development

  • Stop the Spring Boot application (Ctrl+C in the terminal)
  • Stop the React dashboard (Ctrl+C in the terminal)
  • Stop Kafka and PostgreSQL services

Next Steps

Last updated on