Source: https://seerepo.com/r/apache/druid/built
Markdown source: https://seerepo.com/r/apache/druid/built.md
Description: druid is a Java repo built with JAX-RS, grpc-bom, guice-assistedinject, jakarta.inject-api, javax.servlet-api, and 10 more.

# What is druid built with?

druid is a Java repo built with JAX-RS, grpc-bom, guice-assistedinject, jakarta.inject-api, javax.servlet-api, and 10 more. It stores its data in org.apache.hadoop:hadoop-client-api, org.apache.iceberg:iceberg-api, com.azure:azure-storage-blob, org.apache.curator:curator-framework, org.apache.avro:avro, and 10 more, reaches it with jdbi and joou-java-6, signs people in with hadoop-auth, jose4j, nimbus-jose-jwt, oauth2-oidc-sdk, ranger-plugins-common, and 5 more, makes its content with javax.activation-api, com.opencsv:opencsv, and d3-dsv, validates its data with Hibernate and jakarta.validation:jakarta.validation-api, is tested with calcite-testkit, com.google.guava:guava-testlib, docker-java-api, hadoop-client-minicluster, hamcrest-core, and 21 more, deploys with client-java, commons-logging, docker-java-bom, docker-java-core, io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom-alpha, and 20 more, and uses apache-client, avatica-core, aws-crt-client, aws-msk-iam-auth, azure-sdk-bom, and 27 more. It has 2,120,060 written lines, with 3,892 test files.

Read on November 9, 2026, at commit 490cbf0.

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

## Backend (/)

### The base

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

### Data

- **apache-client**
- **avatica-core**
- **aws-crt-client**
- **aws-msk-iam-auth**
- **azure-sdk-bom**
- **azure-storage-blob-batch**
- **[com.mysql:mysql-connector-j](https://seerepo.com/uses/commysql-mysql-connector-j)**
- **curator-client**
- **curator-recipes**
- **druid-processing**
- **glue**
- **hadoop-aws**
- **hadoop-common**
- **hadoop-mapreduce-client-core**
- **hive-storage-api**
- **iceberg-core**
- **iceberg-gcp**
- **iceberg-hive-metastore**
- **[jedis](https://seerepo.com/uses/jedis)**
- **[kafka-clients](https://seerepo.com/uses/kafka-clients)**
- **kms**
- **[MariaDB](https://seerepo.com/uses/mariadb)**
- **org.apache.hadoop:hadoop-hdfs-client**
- **org.apache.hive:hive-metastore**
- **[PostgreSQL](https://seerepo.com/uses/postgresql)**
- **[s3](https://seerepo.com/uses/s3)**
- **s3-transfer-manager**
- **org.apache.hadoop:hadoop-client-api**: 36 files
- **org.apache.iceberg:iceberg-api**: 15 files
- **com.azure:azure-storage-blob**: 13 files
- **org.apache.curator:curator-framework**: 11 files
- **org.apache.avro:avro**: 10 files
- **org.apache.commons:commons-dbcp2**: 9 files
- **software.amazon.awssdk:sdk-core**: 8 files
- **[com.github.ben-manes.caffeine:caffeine](https://seerepo.com/uses/comgithubben-manescaffeine-caffeine)**: 4 files
- **[MySQL](https://seerepo.com/uses/mysql)**: 4 files · [extensions-core/lookups-cached-global/pom.xml, line 1](https://github.com/apache/druid/blob/490cbf0035e0c988c141ef146566706854811097/extensions-core/lookups-cached-global/pom.xml#L1)
- **org.apache.iceberg:iceberg-parquet**: 4 files
- **org.apache.orc:orc-core**: 4 files
- **[org.apache.zookeeper:zookeeper](https://seerepo.com/uses/orgapachezookeeper-zookeeper)**: 4 files
- **software.amazon.kinesis:amazon-kinesis-client**: 3 files
- **io.confluent:kafka-schema-registry-client**: 2 files
- **org.apache.parquet:parquet-hadoop**: 2 files
- **Hive**: 1 file
- **org.apache.arrow:arrow-vector**: 1 file
- **org.apache.derby:derby**: 1 file
- **org.apache.iceberg:iceberg-aws**: 1 file
- **software.amazon.awssdk:rds**: 1 file

### Data access

- **jdbi**
- **joou-java-6**

### Sign-in

- **hadoop-auth**
- **jose4j**
- **nimbus-jose-jwt**
- **oauth2-oidc-sdk**
- **ranger-plugins-common**
- **software.amazon.awssdk:auth**: 12 files
- **org.pac4j:pac4j-core**: 4 files
- **org.pac4j:pac4j-oidc**: 3 files
- **com.azure:azure-identity**: 2 files
- **software.amazon.awssdk:sts**: 2 files

## Support (/)

### The base

- **grpc-bom**
- **guice-assistedinject**
- **jakarta.inject-api**
- **javax.servlet-api**
- **[JetBrains](https://seerepo.com/uses/jetbrains)**
- **servlet-api**
- **vertx-web**
- **com.google.inject:guice**: 667 files
- **[org.eclipse.jetty:jetty-server](https://seerepo.com/uses/orgeclipsejetty-jetty-server)**: 27 files
- **org.eclipse.jetty:jetty-util**: 13 files
- **org.eclipse.jetty:jetty-http**: 11 files
- **org.eclipse.jetty.ee8:jetty-ee8-servlet**: 9 files
- **org.eclipse.jetty:jetty-io**: 4 files

### Content

- **javax.activation-api**
- **com.opencsv:opencsv**: 4 files

### Validation

- **[Hibernate](https://seerepo.com/uses/hibernate)**
- **[jakarta.validation:jakarta.validation-api](https://seerepo.com/uses/jakartavalidation-jakartavalidation-api)**: 106 files

### Testing

- **calcite-testkit**
- **com.google.guava:guava-testlib**
- **docker-java-api**
- **hadoop-client-minicluster**
- **hamcrest-core**
- **junit-bom**
- **junit-jupiter**
- **junit-jupiter-api**
- **junit-jupiter-engine**
- **junit-jupiter-params**
- **kubernetes-server-mock**
- **mockito-bom**
- **testcontainers-junit-jupiter**
- **org.easymock:easymock**: 353 files
- **org.mockito:mockito-core**: 238 files
- **org.hamcrest:hamcrest**: 80 files
- **org.mockito:mockito-junit-jupiter**: 67 files
- **org.testcontainers:testcontainers**: 22 files
- **org.assertj:assertj-core**: 10 files
- **com.google.caliper:caliper**: 5 files
- **org.apache.curator:curator-test**: 4 files
- **com.github.fppt:jedis-mock**: 3 files
- **org.opentest4j:opentest4j**: 3 files
- **com.squareup.okhttp3:mockwebserver3**: 1 file

### Deploy

- **client-java**
- **[commons-logging](https://seerepo.com/uses/commons-logging)**
- **docker-java-bom**
- **docker-java-core**
- **io.opentelemetry.instrumentation:opentelemetry-instrumentation-bom-alpha**
- **[jcl-over-slf4j](https://seerepo.com/uses/jcl-over-slf4j)**
- **jclouds-slf4j**
- **kubernetes-httpclient-okhttp**
- **[log4j-1.2-api](https://seerepo.com/uses/log4j-12-api)**
- **log4j-layout-template-json**
- **[metrics-core](https://seerepo.com/uses/metrics-core)**
- **metrics-graphite**
- **metrics-jmx**
- **[org.apache.logging.log4j:log4j-api](https://seerepo.com/uses/orgapachelogginglog4j-log4j-api)**
- **[Prometheus](https://seerepo.com/uses/prometheus)**
- **[slf4j-simple](https://seerepo.com/uses/slf4j-simple)**
- **io.fabric8:kubernetes-client**: 16 files
- **io.kubernetes:client-java-api**: 8 files
- **[org.slf4j:slf4j-api](https://seerepo.com/uses/orgslf4j-slf4j-api)**: 4 files
- **[org.apache.logging.log4j:log4j-core](https://seerepo.com/uses/orgapachelogginglog4j-log4j-core)**: 3 files
- **software.amazon.awssdk:ec2**: 3 files
- **software.amazon.awssdk:regions**: 3 files
- **com.github.docker-java:docker-java**: 1 file
- **io.opentelemetry:opentelemetry-api**: 1 file
- **io.opentelemetry:opentelemetry-sdk**: 1 file

### Tools

- **antlr4-runtime**
- **asm**
- **asm-commons**
- **auto-value-annotations**
- **checkstyle**
- **commons-cli**
- **jspecify**
- **jsr305**
- **maven-resolver-connector-basic**
- **maven-resolver-supplier-mvn3**
- **maven-resolver-transport-apache**
- **maven-resolver-util**
- **nativeimage**
- **org.apache.maven.resolver:maven-resolver-api**
- **org.openjdk.jmh:jmh-generator-annprocess**
- **OpenJDK**: 117 files
- **com.google.errorprone:error_prone_annotations**: 88 files
- **org.checkerframework:checker-qual**: 43 files
- **org.apache.maven:maven-artifact**: 2 files
- **org.immutables:value-annotations**: 1 file

### Other

- **aircompressor**
- **arrow-memory-unsafe**
- **bcpkix-jdk18on**
- **bcprov-jdk18on**
- **bom**
- **brotli4j**
- **byte-buddy**
- **byte-buddy-agent**
- **com.google.guava:guava**
- **commons-beanutils**
- **commons-codec**
- **commons-io**
- **commons-lang**
- **commons-net**
- **commons-pool**
- **datasketches-java**
- **disruptor**
- **expressly**
- **google-api-client**
- **google-http-client-jackson2**
- **grpc-core**
- **grpc-netty**
- **grpc-netty-shaded**
- **grpc-protobuf**
- **guice-servlet**
- **httpcore**
- **httpcore5**
- **ipaddress**
- **jackson-annotations**
- **jackson-core-asl**
- **jackson-databind**
- **jackson-jaxrs-json-provider**
- **jackson-mapper-asl**
- **jakarta.activation**
- **jakarta.activation-api**
- **jakarta.el-api**
- **jakarta.xml.bind-api**
- **jaxb-runtime**
- **jersey-client**
- **jna**
- **jna-platform**
- **js**
- **js-scriptengine**
- **json-smart**
- **libraries-bom**
- **logging-interceptor**
- **lz4-java**
- **Mozilla**
- **netty-bom**
- **netty-codec-base**
- **netty-codec-http**
- **netty-codec-http2**
- **netty-common**
- **netty-nio-client**
- **netty-resolver**
- **netty-transport**
- **netty-transport-native-kqueue**
- **objenesis**
- **okhttp**
- **okhttp-jvm**
- **okio**
- **okio-jvm**
- **org.apache.commons:commons-configuration2**
- **org.jetbrains:annotations**
- **oshi-core**
- **perfmark-api**
- **plexus-utils**
- **reactive-streams**
- **reactor-core**
- **snakeyaml**
- **snappy-java**
- **stax2-api**
- **vertx-web-client**
- **woodstox-core**
- **xz**
- **javax.annotation:javax.annotation-api**: 2,154 files
- **[Google](https://seerepo.com/uses/google)**: 2,109 files
- **com.fasterxml.jackson:jackson-bom**: 1,380 files
- **joda-time:joda-time**: 640 files
- **org.apache.calcite:calcite-core**: 340 files
- **it.unimi.dsi:fastutil**: 247 files
- **com.fasterxml.jackson.core:jackson-core**: 214 files
- **org.apache.datasketches:datasketches-memory**: 129 files
- **io.netty:netty-handler**: 73 files
- **org.apache.commons:commons-lang3**: 38 files
- **javax.inject:javax.inject**: 36 files
- **org.roaringbitmap:RoaringBitmap**: 26 files
- **io.netty:netty-buffer**: 17 files
- **org.apache.commons:commons-math3**: 11 files
- **com.tdunning:t-digest**: 10 files
- **com.jayway.jsonpath:json-path**: 9 files
- **org.asynchttpclient:async-http-client**: 9 files
- **org.eclipse.jetty:jetty-client**: 8 files
- **[Apache](https://seerepo.com/uses/apache)**: 6 files
- **com.google.api:gax**: 6 files
- **org.apache.httpcomponents:httpclient**: 6 files
- **com.fasterxml.jackson.dataformat:jackson-dataformat-smile**: 5 files
- **io.grpc:grpc-api**: 5 files
- **com.ecwid.consul:consul-api**: 4 files
- **org.reflections:reflections**: 4 files
- **com.cronutils:cron-utils**: 3 files
- **io.vertx:vertx-core**: 3 files
- **net.thisptr:jackson-jq**: 3 files
- **com.fasterxml.jackson.dataformat:jackson-dataformat-yaml**: 2 files
- **com.fasterxml.jackson.datatype:jackson-datatype-joda**: 2 files
- **com.ning:compress-lzf**: 2 files
- **io.grpc:grpc-stub**: 2 files
- **[OpenTelemetry](https://seerepo.com/uses/opentelemetry)**: 2 files
- **org.apache.commons:commons-collections4**: 2 files
- **org.apache.thrift:libthrift**: 2 files
- **software.amazon.awssdk:aws-core**: 2 files
- **com.fasterxml.jackson.datatype:jackson-datatype-guava**: 1 file
- **com.github.luben:zstd-jni**: 1 file
- **com.google.code.gson:gson**: 1 file
- **com.ibm.icu:icu4j**: 1 file
- **org.apache.commons:commons-compress**: 1 file

## Frontend (web-console)

### The base

- **[React](https://seerepo.com/uses/react)**: 236 files

### Styles

- **[classnames](https://seerepo.com/uses/classnames)**: 65 files

### Interface

- **blueprintjs**: 187 files
- **[CodeMirror](https://seerepo.com/uses/codemirror)**: 16 files
- **[@lezer/highlight](https://seerepo.com/uses/lezer-highlight)**: 4 files
- **d3-selection**: 4 files
- **[echarts](https://seerepo.com/uses/echarts)**: 4 files
- **[TanStack](https://seerepo.com/uses/tanstack)**: 4 files
- **d3-axis**: 3 files
- **d3-scale**: 3 files
- **d3-shape**: 1 file
- **react-diff-viewer-continued**: 1 file

### Icons

- **@blueprintjs/icons**: 131 files

## Support (web-console)

### Content

- **d3-dsv**: 1 file

### Testing

- **Testing Library**: 116 files
- **@playwright/test**: 25 files

### Tools

- **@lezer/generator**: 1 file

### Other

- **[D3](https://seerepo.com/uses/d3)**: 15 files
- **zustand**: 6 files
- **lezer**: 5 files
- **Axios**: 4 files
- **@internationalized/date**: 3 files
- **dayjs**: 3 files
- **hjson**: 3 files
- **memoize-one**: 3 files
- **@flatten-js/interval-tree**: 1 file
- **copy-to-clipboard**: 1 file
- **d3-time-format**: 1 file
- **file-saver**: 1 file
- **Lodash**: 1 file
- **numeral**: 1 file
- **uuid**: 1 file

## Other repos with a similar stack

- [appsmithorg/appsmith](https://seerepo.com/r/appsmithorg/appsmith/built): apache-client, com.mysql:mysql-connector-j, jedis, MariaDB, PostgreSQL, s3, MySQL, React, Hibernate, slf4j-simple, org.slf4j:slf4j-api, classnames, blueprintjs, echarts, TanStack · [Compare](https://seerepo.com/compare/apache/druid/vs/appsmithorg/appsmith)
- [apache/dubbo](https://seerepo.com/r/apache/dubbo/built): JAX-RS, curator-recipes, org.apache.zookeeper:zookeeper, Hibernate, jakarta.validation:jakarta.validation-api, commons-logging, org.apache.logging.log4j:log4j-api, Prometheus, org.slf4j:slf4j-api, org.apache.logging.log4j:log4j-core · [Compare](https://seerepo.com/compare/apache/druid/vs/apache/dubbo)
- [spring-projects/spring-boot](https://seerepo.com/r/spring-projects/spring-boot/built): JAX-RS, servlet-api, Hibernate, org.apache.logging.log4j:log4j-api, slf4j-simple, org.slf4j:slf4j-api, org.apache.logging.log4j:log4j-core, io.opentelemetry:opentelemetry-sdk · [Compare](https://seerepo.com/compare/apache/druid/vs/spring-projects/spring-boot)
- [YunaiV/ruoyi-vue-pro](https://seerepo.com/r/YunaiV/ruoyi-vue-pro/built): com.mysql:mysql-connector-j, PostgreSQL, s3, MySQL, vertx-web, jakarta.validation:jakarta.validation-api, org.slf4j:slf4j-api · [Compare](https://seerepo.com/compare/apache/druid/vs/YunaiV/ruoyi-vue-pro)
- [Stirling-Tools/Stirling-PDF](https://seerepo.com/r/Stirling-Tools/Stirling-PDF/built): PostgreSQL, s3, com.github.ben-manes.caffeine:caffeine, React, com.opencsv:opencsv, Hibernate · [Compare](https://seerepo.com/compare/apache/druid/vs/Stirling-Tools/Stirling-PDF)
- [apache/superset](https://seerepo.com/r/apache/superset/built): MySQL, React, classnames, d3-selection, echarts, d3-scale · [Compare](https://seerepo.com/compare/apache/druid/vs/apache/superset)

## Frequently asked questions

### What language is druid written in?

druid is written in Java, with 2,120,060 written lines.

### What framework does druid use?

druid is built with JAX-RS, grpc-bom, guice-assistedinject, jakarta.inject-api, javax.servlet-api, JetBrains, servlet-api, vertx-web, com.google.inject:guice, org.eclipse.jetty:jetty-server, org.eclipse.jetty:jetty-util, org.eclipse.jetty:jetty-http, org.eclipse.jetty.ee8:jetty-ee8-servlet, org.eclipse.jetty:jetty-io, and React.

### What database does druid use?

druid stores its data in org.apache.hadoop:hadoop-client-api, org.apache.iceberg:iceberg-api, com.azure:azure-storage-blob, org.apache.curator:curator-framework, org.apache.avro:avro, org.apache.commons:commons-dbcp2, software.amazon.awssdk:sdk-core, com.github.ben-manes.caffeine:caffeine, MySQL, org.apache.iceberg:iceberg-parquet, org.apache.orc:orc-core, org.apache.zookeeper:zookeeper, software.amazon.kinesis:amazon-kinesis-client, io.confluent:kafka-schema-registry-client, and org.apache.parquet:parquet-hadoop and reaches it with jdbi and joou-java-6.

### What does druid sign people in with?

druid signs people in with hadoop-auth, jose4j, nimbus-jose-jwt, oauth2-oidc-sdk, ranger-plugins-common, software.amazon.awssdk:auth, org.pac4j:pac4j-core, org.pac4j:pac4j-oidc, com.azure:azure-identity, and software.amazon.awssdk:sts.

### What services does druid use?

druid uses apache-client, avatica-core, aws-crt-client, aws-msk-iam-auth, azure-sdk-bom, azure-storage-blob-batch, com.mysql:mysql-connector-j, curator-client, curator-recipes, druid-processing, glue, hadoop-aws, hadoop-common, hadoop-mapreduce-client-core, hive-storage-api, iceberg-core, iceberg-gcp, iceberg-hive-metastore, jedis, kafka-clients, kms, MariaDB, org.apache.hadoop:hadoop-hdfs-client, org.apache.hive:hive-metastore, PostgreSQL, s3, s3-transfer-manager, Hive, org.apache.arrow:arrow-vector, org.apache.derby:derby, org.apache.iceberg:iceberg-aws, and software.amazon.awssdk:rds.

### Does druid have tests?

Yes. druid has 3,892 test files and is tested with calcite-testkit, com.google.guava:guava-testlib, docker-java-api, hadoop-client-minicluster, hamcrest-core, junit-bom, junit-jupiter, junit-jupiter-api, junit-jupiter-engine, junit-jupiter-params, kubernetes-server-mock, mockito-bom, testcontainers-junit-jupiter, org.easymock:easymock, org.mockito:mockito-core, org.hamcrest:hamcrest, org.mockito:mockito-junit-jupiter, org.testcontainers:testcontainers, org.assertj:assertj-core, com.google.caliper:caliper, org.apache.curator:curator-test, com.github.fppt:jedis-mock, org.opentest4j:opentest4j, com.squareup.okhttp3:mockwebserver3, Testing Library, and @playwright/test.

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

The ones that share most of its stack: appsmithorg/appsmith, apache/dubbo, and spring-projects/spring-boot.

## 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.
