Source: https://seerepo.com/r/apache/pulsar/built
Markdown source: https://seerepo.com/r/apache/pulsar/built.md
Description: pulsar is a Java repo built with JAX-RS, grpc-bom, javax.ws.rs-api, jersey-container-servlet, jersey-container-servlet-core, and 19 more.

# What is pulsar built with?

pulsar is a Java repo built with JAX-RS, grpc-bom, javax.ws.rs-api, jersey-container-servlet, jersey-container-servlet-core, and 19 more. It stores its data in org.apache.avro:avro, com.github.ben-manes.caffeine:caffeine, and github.com/apache/pulsar-client-go, signs people in with aws-java-sdk-sts, java-jwt, jjwt-impl, jjwt-jackson, jwks-rsa, and 2 more, makes its content with commonmark-ext-gfm-tables, commonmark-ext-heading-anchor, and org.commonmark:commonmark, validates its data with jakarta.validation-api, is tested with hadoop-minicluster, io.opentelemetry:opentelemetry-sdk-testing, jersey-test-framework-core, jersey-test-framework-provider-grizzly2, k3s, and 13 more, deploys with client-java, commons-logging, docker-java-core, io.opentelemetry:opentelemetry-bom, io.prometheus:simpleclient, and 17 more, and uses aws-java-sdk-bom, curator-recipes, hadoop-common, org.apache.hadoop:hadoop-hdfs-client, zookeeper, and 1 more. It has 1,232,950 written lines, with 2,292 test files.

Read on November 8, 2026, at commit 1b6377e.

Repository: https://github.com/apache/pulsar

## Backend

### The base

- **[JAX-RS](https://seerepo.com/uses/jax-rs)**: 121 files

### Data

- **aws-java-sdk-bom**
- **curator-recipes**
- **hadoop-common**
- **org.apache.hadoop:hadoop-hdfs-client**
- **zookeeper**
- **org.apache.avro:avro**: 27 files
- **[com.github.ben-manes.caffeine:caffeine](https://seerepo.com/uses/comgithubben-manescaffeine-caffeine)**: 20 files
- **github.com/apache/pulsar-client-go**: 5 files
- **[RocksDB](https://seerepo.com/uses/rocksdb)**: 1 file

### Sign-in

- **aws-java-sdk-sts**
- **java-jwt**
- **jjwt-impl**
- **jjwt-jackson**
- **jwks-rsa**
- **io.jsonwebtoken:jjwt-api**: 3 files
- **org.apache.kerby:kerb-simplekdc**: 1 file

## Support

### The base

- **grpc-bom**
- **javax.ws.rs-api**
- **jersey-container-servlet**
- **jersey-container-servlet-core**
- **jersey-hk2**
- **jersey-media-json-jackson**
- **jetty-bom**
- **jetty-ee10-servlets**
- **vertx-web**
- **[jakarta.servlet:jakarta.servlet-api](https://seerepo.com/uses/jakartaservlet-jakartaservlet-api)**: 46 files
- **org.glassfish.jersey.media:jersey-media-multipart**: 24 files
- **org.eclipse.jetty:jetty-util**: 16 files
- **org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jetty-server**: 12 files
- **org.eclipse.jetty:jetty-server**: 11 files
- **org.eclipse.jetty.websocket:jetty-websocket-jetty-api**: 10 files
- **org.eclipse.jetty.ee10:jetty-ee10-servlet**: 7 files
- **javax.servlet:javax.servlet-api**: 5 files
- **org.glassfish.jersey.core:jersey-server**: 5 files
- **org.eclipse.jetty.ee8:jetty-ee8-servlet**: 3 files
- **com.google.inject:guice**: 1 file
- **org.apache.felix:org.apache.felix.http.wrappers**: 1 file
- **org.eclipse.jetty.compression:jetty-compression-gzip**: 1 file
- **org.eclipse.jetty.compression:jetty-compression-server**: 1 file

### Content

- **commonmark-ext-gfm-tables**
- **commonmark-ext-heading-anchor**
- **org.commonmark:commonmark**: 1 file

### Validation

- **jakarta.validation-api**

### Testing

- **hadoop-minicluster**
- **io.opentelemetry:opentelemetry-sdk-testing**
- **jersey-test-framework-core**
- **jersey-test-framework-provider-grizzly2**
- **k3s**
- **mockito-bom**
- **rest-assured**
- **testcontainers-bom**
- **wiremock-standalone**
- **org.testng:testng**: 1,944 files
- **org.mockito:mockito-core**: 645 files
- **org.assertj:assertj-core**: 586 files
- **org.awaitility:awaitility**: 512 files
- **org.testcontainers:testcontainers**: 40 files
- **github.com/stretchr/testify**: 13 files
- **org.skyscreamer:jsonassert**: 9 files
- **org.hamcrest:hamcrest**: 5 files
- **com.github.stefanbirkner:system-lambda**: 1 file

### Deploy

- **client-java**
- **[commons-logging](https://seerepo.com/uses/commons-logging)**
- **docker-java-core**
- **io.opentelemetry:opentelemetry-bom**
- **io.prometheus:simpleclient**
- **[jcl-over-slf4j](https://seerepo.com/uses/jcl-over-slf4j)**
- **log4j-layout-template-json**
- **metrics-core**
- **org.apache.logging.log4j:log4j-bom**
- **simpleclient_hotspot**
- **simpleclient_servlet**
- **slf4j-bom**
- **[OpenTelemetry](https://seerepo.com/uses/opentelemetry)**: 101 files
- **[org.slf4j:slf4j-api](https://seerepo.com/uses/orgslf4j-slf4j-api)**: 9 files
- **[org.apache.logging.log4j:log4j-api](https://seerepo.com/uses/orgapachelogginglog4j-log4j-api)**: 8 files
- **io.opentelemetry:opentelemetry-sdk**: 4 files
- **[org.apache.logging.log4j:log4j-core](https://seerepo.com/uses/orgapachelogginglog4j-log4j-core)**: 4 files
- **[github.com/prometheus/client_model](https://seerepo.com/uses/githubcom-prometheus-client-model)**: 2 files
- **[Prometheus](https://seerepo.com/uses/prometheus)**: 2 files
- **[github.com/sirupsen/logrus](https://seerepo.com/uses/githubcom-sirupsen-logrus)**: 1 file
- **io.opentelemetry:opentelemetry-exporter-prometheus**: 1 file
- **io.opentelemetry.semconv:opentelemetry-semconv**: 1 file

### Tools

- **commons-cli**
- **jsr305**
- **org.apache.ant:ant**
- **spotbugs-annotations**
- **Swagger**
- **swagger-annotations-jakarta**
- **org.projectlombok:lombok**: 946 files
- **OpenJDK**: 58 files
- **org.jspecify:jspecify**: 57 files
- **com.google.errorprone:error_prone_annotations**: 1 file

### Other

- **bc-fips**
- **bcpkix-fips**
- **bcpkix-jdk18on**
- **bcprov-jdk18on**
- **bctls-jdk18on**
- **bcutil-fips**
- **byte-buddy-agent**
- **com.google.guava:guava**
- **commons-beanutils**
- **commons-codec**
- **commons-io**
- **conscrypt-openjdk-uber**
- **datasketches-java**
- **datasketches-memory**
- **disruptor**
- **failsafe**
- **grpc-netty**
- **HdrHistogram**
- **httpcore**
- **httpcore5**
- **ipaddress**
- **jackson-annotations**
- **jackson-databind**
- **jackson-module-parameter-names**
- **jakarta.activation-api**
- **jakarta.annotation-api**
- **jakarta.xml.bind-api**
- **jaxb-api**
- **jctools-core**
- **jctools-core-jdk11**
- **jna**
- **json-smart**
- **logging-interceptor**
- **lz4-java**
- **netty-bom**
- **netty-codec-haproxy**
- **netty-codec-http**
- **netty-codec-http2**
- **netty-codec-socks**
- **netty-common**
- **netty-handler-proxy**
- **netty-resolver-dns-native-macos**
- **netty-tcnative-boringssl-static**
- **netty-transport**
- **netty-transport-classes-io_uring**
- **netty-transport-native-epoll**
- **netty-transport-native-io_uring**
- **netty-transport-native-unix-common**
- **okhttp-bom**
- **okhttp-jvm**
- **okio**
- **okio-bom**
- **org.apache.httpcomponents.client5:httpclient5**
- **reactive-streams**
- **reflections**
- **snakeyaml**
- **org.apache.commons:commons-lang3**: 324 files
- **io.netty:netty-buffer**: 167 files
- **com.fasterxml.jackson:jackson-bom**: 113 files
- **info.picocli:picocli**: 88 files
- **com.fasterxml.jackson.core:jackson-core**: 47 files
- **[Google](https://seerepo.com/uses/google)**: 37 files
- **org.apache.commons:commons-collections4**: 32 files
- **io.netty:netty-handler**: 28 files
- **it.unimi.dsi:fastutil**: 17 files
- **org.asynchttpclient:async-http-client**: 14 files
- **net.bytebuddy:byte-buddy**: 10 files
- **[Apache](https://seerepo.com/uses/apache)**: 8 files
- **org.json:json**: 7 files
- **org.eclipse.jetty:jetty-client**: 5 files
- **com.google.re2j:re2j**: 4 files
- **io.netty:netty-resolver-dns**: 4 files
- **org.apache.httpcomponents:httpclient**: 4 files
- **org.roaringbitmap:RoaringBitmap**: 4 files
- **com.github.zafarkhaja:java-semver**: 3 files
- **google.golang.org/protobuf**: 3 files
- **io.grpc:grpc-stub**: 3 files
- **org.apache.commons:commons-compress**: 3 files
- **org.glassfish.jersey.core:jersey-client**: 3 files
- **com.fasterxml.jackson.dataformat:jackson-dataformat-yaml**: 2 files
- **io.airlift:aircompressor**: 2 files
- **io.vertx:vertx-core**: 2 files
- **org.apache.commons:commons-text**: 2 files
- **org.objenesis:objenesis**: 2 files
- **org.zeroturnaround:zt-zip**: 2 files
- **com.amazonaws:aws-java-sdk-core**: 1 file
- **com.cronutils:cron-utils**: 1 file
- **com.fasterxml.jackson.datatype:jackson-datatype-jdk8**: 1 file
- **com.fasterxml.jackson.datatype:jackson-datatype-jsr310**: 1 file
- **com.github.luben:zstd-jni**: 1 file
- **com.spotify:completable-futures**: 1 file
- **google.golang.org/grpc**: 1 file
- **gopkg.in/yaml.v2**: 1 file
- **joda-time:joda-time**: 1 file
- **org.apache.commons:commons-math3**: 1 file
- **org.javassist:javassist**: 1 file
- **org.jline:jline**: 1 file
- **org.xerial.snappy:snappy-java**: 1 file

## Other repos with a similar stack

- [open-metadata/OpenMetadata](https://seerepo.com/r/open-metadata/OpenMetadata/built): JAX-RS, javax.ws.rs-api, jersey-container-servlet, jersey-media-json-jackson, jetty-bom, jetty-ee10-servlets, jakarta.servlet:jakarta.servlet-api, org.glassfish.jersey.media:jersey-media-multipart, org.eclipse.jetty:jetty-util, org.eclipse.jetty:jetty-server, org.eclipse.jetty.ee10:jetty-ee10-servlet, javax.servlet:javax.servlet-api, java-jwt, commonmark-ext-gfm-tables, org.commonmark:commonmark, metrics-core, OpenTelemetry, org.slf4j:slf4j-api, org.apache.logging.log4j:log4j-api, Prometheus · [Compare](https://seerepo.com/compare/apache/pulsar/vs/open-metadata/OpenMetadata)
- [prestodb/presto](https://seerepo.com/r/prestodb/presto/built): JAX-RS, org.apache.avro:avro, javax.ws.rs-api, jersey-container-servlet, jetty-bom, jakarta.servlet:jakarta.servlet-api, com.google.inject:guice, aws-java-sdk-sts, jjwt-impl, jjwt-jackson, io.jsonwebtoken:jjwt-api, commons-logging, jcl-over-slf4j, metrics-core, OpenTelemetry, org.apache.logging.log4j:log4j-api, io.opentelemetry:opentelemetry-sdk, io.opentelemetry.semconv:opentelemetry-semconv · [Compare](https://seerepo.com/compare/apache/pulsar/vs/prestodb/presto)
- [apache/hadoop](https://seerepo.com/r/apache/hadoop/built): JAX-RS, curator-recipes, hadoop-common, org.apache.hadoop:hadoop-hdfs-client, org.apache.avro:avro, com.github.ben-manes.caffeine:caffeine, jersey-container-servlet, jersey-media-json-jackson, org.eclipse.jetty:jetty-server, com.google.inject:guice, commons-logging, jcl-over-slf4j, metrics-core, OpenTelemetry, org.slf4j:slf4j-api, org.apache.logging.log4j:log4j-api · [Compare](https://seerepo.com/compare/apache/hadoop/vs/apache/pulsar)
- [apache/flink](https://seerepo.com/r/apache/flink/built): hadoop-common, org.apache.hadoop:hadoop-hdfs-client, zookeeper, org.apache.avro:avro, grpc-bom, aws-java-sdk-sts, commons-logging, log4j-layout-template-json, metrics-core, OpenTelemetry, org.slf4j:slf4j-api, org.apache.logging.log4j:log4j-api, org.apache.logging.log4j:log4j-core, Prometheus · [Compare](https://seerepo.com/compare/apache/flink/vs/apache/pulsar)
- [apache/doris](https://seerepo.com/r/apache/doris/built): hadoop-common, zookeeper, org.apache.avro:avro, com.github.ben-manes.caffeine:caffeine, grpc-bom, jetty-bom, jakarta.servlet:jakarta.servlet-api, jcl-over-slf4j, metrics-core, OpenTelemetry, org.slf4j:slf4j-api, org.apache.logging.log4j:log4j-api, org.apache.logging.log4j:log4j-core · [Compare](https://seerepo.com/compare/apache/doris/vs/apache/pulsar)
- [apache/dubbo](https://seerepo.com/r/apache/dubbo/built): JAX-RS, curator-recipes, jakarta.servlet:jakarta.servlet-api, javax.servlet:javax.servlet-api, commons-logging, io.opentelemetry:opentelemetry-bom, OpenTelemetry, org.slf4j:slf4j-api, org.apache.logging.log4j:log4j-api, org.apache.logging.log4j:log4j-core, Prometheus · [Compare](https://seerepo.com/compare/apache/dubbo/vs/apache/pulsar)

## Frequently asked questions

### What language is pulsar written in?

pulsar is written in Java, with 1,232,950 written lines.

### What framework does pulsar use?

pulsar is built with JAX-RS, grpc-bom, javax.ws.rs-api, jersey-container-servlet, jersey-container-servlet-core, jersey-hk2, jersey-media-json-jackson, jetty-bom, jetty-ee10-servlets, vertx-web, jakarta.servlet:jakarta.servlet-api, org.glassfish.jersey.media:jersey-media-multipart, org.eclipse.jetty:jetty-util, org.eclipse.jetty.ee10.websocket:jetty-ee10-websocket-jetty-server, org.eclipse.jetty:jetty-server, org.eclipse.jetty.websocket:jetty-websocket-jetty-api, org.eclipse.jetty.ee10:jetty-ee10-servlet, javax.servlet:javax.servlet-api, org.glassfish.jersey.core:jersey-server, org.eclipse.jetty.ee8:jetty-ee8-servlet, com.google.inject:guice, org.apache.felix:org.apache.felix.http.wrappers, org.eclipse.jetty.compression:jetty-compression-gzip, and org.eclipse.jetty.compression:jetty-compression-server.

### What database does pulsar use?

pulsar stores its data in org.apache.avro:avro, com.github.ben-manes.caffeine:caffeine, and github.com/apache/pulsar-client-go.

### What does pulsar sign people in with?

pulsar signs people in with aws-java-sdk-sts, java-jwt, jjwt-impl, jjwt-jackson, jwks-rsa, io.jsonwebtoken:jjwt-api, and org.apache.kerby:kerb-simplekdc.

### What services does pulsar use?

pulsar uses aws-java-sdk-bom, curator-recipes, hadoop-common, org.apache.hadoop:hadoop-hdfs-client, zookeeper, and RocksDB.

### Does pulsar have tests?

Yes. pulsar has 2,292 test files and is tested with hadoop-minicluster, io.opentelemetry:opentelemetry-sdk-testing, jersey-test-framework-core, jersey-test-framework-provider-grizzly2, k3s, mockito-bom, rest-assured, testcontainers-bom, wiremock-standalone, org.testng:testng, org.mockito:mockito-core, org.assertj:assertj-core, org.awaitility:awaitility, org.testcontainers:testcontainers, github.com/stretchr/testify, org.skyscreamer:jsonassert, org.hamcrest:hamcrest, and com.github.stefanbirkner:system-lambda.

### Which repos have a stack like pulsar's?

The ones that share most of its stack: open-metadata/OpenMetadata, prestodb/presto, and apache/hadoop.

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
