Developer Center

Build with StreamCore. Complete documentation, code samples, API references, and best practices.

Quick Start Guide

1. Install StreamCore

Download and install StreamCore on your system:

Installation bash
# Using Docker
docker run -d --name streamcore-broker streamcore:latest

# Or download from streamcore.io/download

2. Create a Topic

Create your first topic:

Create Topic bash
streamcore-topics --create \
  --topic my-first-topic \
  --partitions 3 \
  --replication-factor 2 \
  --bootstrap-servers localhost:9092

3. Send and Receive Messages

Use the console producer and consumer to test:

Producer bash
# Terminal 1 - Send messages
streamcore-console-producer --topic my-first-topic \
  --bootstrap-servers localhost:9092

# Terminal 2 - Receive messages
streamcore-console-consumer --topic my-first-topic \
  --from-beginning \
  --bootstrap-servers localhost:9092

Code Examples

Java Producer

Send events to StreamCore using the Java producer API:

ProducerExample.java java
import org.streamcore.clients.producer.KafkaProducer;
import org.streamcore.clients.producer.ProducerRecord;

public class ProducerExample {
  public static void main(String[] args) {
    Properties props = new Properties();
    props.put("bootstrap.servers", "localhost:9092");
    props.put("key.serializer", "org.streamcore.common.serialization.StringSerializer");
    props.put("value.serializer", "org.streamcore.common.serialization.StringSerializer");

    KafkaProducer producer = new KafkaProducer<>(props);

    for (int i = 0; i < 100; i++) {
      ProducerRecord record =
        new ProducerRecord<>("my-topic", "key-" + i, "value-" + i);
      producer.send(record);
    }

    producer.close();
  }
}

Java Consumer

Consume and process events using the Java consumer API:

ConsumerExample.java java
import org.streamcore.clients.consumer.KafkaConsumer;
import org.streamcore.clients.consumer.ConsumerRecords;

public class ConsumerExample {
  public static void main(String[] args) {
    Properties props = new Properties();
    props.put("bootstrap.servers", "localhost:9092");
    props.put("group.id", "my-group");
    props.put("key.deserializer", "org.streamcore.common.serialization.StringDeserializer");
    props.put("value.deserializer", "org.streamcore.common.serialization.StringDeserializer");

    KafkaConsumer consumer = new KafkaConsumer<>(props);
    consumer.subscribe(Arrays.asList("my-topic"));

    while (true) {
      ConsumerRecords records = consumer.poll(Duration.ofMillis(100));
      records.forEach(record -> System.out.println(record.value()));
    }
  }
}

Python Producer

Send events from Python applications:

producer.py python
from streamcore import KafkaProducer
import json

producer = KafkaProducer(
    bootstrap_servers=['localhost:9092'],
    value_serializer=lambda v: json.dumps(v).encode('utf-8')
)

for i in range(100):
    data = {'key': i, 'value': f'message-{i}'}
    producer.send('my-topic', value=data)

producer.flush()
producer.close()

Monitoring & Observability

StreamCore provides comprehensive monitoring and observability features to help you understand and optimize your systems.

  • Metrics: JMX, Prometheus, and Datadog integrations
  • Logging: Structured logging with multiple outputs
  • Tracing: OpenTelemetry support for distributed tracing
  • Dashboards: Pre-built Grafana dashboards
Learn More
Monitoring dashboard

SDKs & Libraries

Java SDK

Full-featured Java SDK for producers, consumers, and stream processing.

View Docs →

Python SDK

Python library for building StreamCore applications and integrations.

View Docs →

Go SDK

Go client library for high-performance streaming applications.

View Docs →

JavaScript/Node.js

Node.js client for building streaming applications in JavaScript.

View Docs →

REST API

Language-agnostic REST API for all StreamCore operations.

View Docs →

gRPC

High-performance gRPC APIs for all major languages.

View Docs →

Ready to Build?

Start building with StreamCore today. Full documentation and support available.