| export const categories = [ |
| 'client_api', |
| 'client_wrapper', |
| 'database_integration', |
| 'io', |
| 'logging', |
| 'observability', |
| 'protocol_handlers', |
| 'search_and_query', |
| 'security_plugins', |
| 'stream_processing', |
| 'tools' |
| ] as const; |
| export type Category = typeof categories[number]; |
| |
| export const categoryLabels: Record<Category, string> = { |
| client_api: 'Client API', |
| client_wrapper: 'Client Wrapper', |
| database_integration: 'Database Integration', |
| io: 'IO', |
| logging: 'Logging', |
| observability: 'Observability', |
| protocol_handlers: 'Protocol Handlers', |
| search_and_query: 'Search and Query', |
| security_plugins: 'Security Plugins', |
| stream_processing: 'Stream Processing', |
| tools: 'Tools' |
| }; |
| |
| export type Resource = { |
| name: string; |
| description: string; |
| link: string; |
| source_or_sink: string; |
| }; |
| |
| export const resources: Record<Category, Resource[]> = { |
| client_api: [ |
| { |
| name: 'Starlight for JMS', |
| description: 'Implements the JMS 2.0 (Java Messaging Service ®) API over the Apache Pulsar® Java Client.', |
| link: 'https://github.com/datastax/pulsar-jms', |
| source_or_sink: 'N/A' |
| } |
| ], |
| client_wrapper: [ |
| { |
| name: 'Kafka Client Wrapper', |
| description: '', |
| link: 'https://github.com/apache/pulsar-adapters/tree/master/pulsar-client-kafka-compat', |
| source_or_sink: 'N/A' |
| } |
| ], |
| database_integration: [ |
| { |
| name: 'Azure Data Explorer (Kusto) Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/azure-kusto', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Azure DocumentDB Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/azure-documentdb', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Cassandra Connector', |
| description: '', |
| link: 'https://github.com/datastax/cdc-apache-cassandra', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Cassandra Sink Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-sink', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Couchbase Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/couchbase', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Geode Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/geode', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Google BigQuery Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/bigquery', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Kinetica Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/kinetica', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Kudu Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/kudu', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'MarkLogic Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/marklogic', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Neo4j Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/neo4j', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'OrientDB Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/orientdb', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Phoenix Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/phoenix', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Redis Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/redis', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'SAP HANA Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/sap-hana', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'SingleStore Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/singlestore', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Snowflake Connector', |
| description: '', |
| link: 'https://github.com/datastax/snowflake-connector', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'XTDB Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/xtdb', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Aerospike Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/aerospike', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Canal Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/canal', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Cassandra Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/cassandra', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Debezium Connector (Microsoft SQL Server)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/debezium/mssql', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Debezium Connector (MongoDB)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/debezium/mongodb', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Debezium Connector (MySQL)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/debezium/mysql', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Debezium Connector (Oracle)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/debezium/oracle', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Debezium Connector (PostgreSQL)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/debezium/postgres', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'DynamoDB Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/dynamodb', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'HBase Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/hbase', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'HDFS2 Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/hdfs2', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'HDFS3 Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/hdfs3', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'InfluxDB Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/influxdb', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'JDBC Connector (ClickHouse)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/jdbc/clickhouse', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'JDBC Connector (MariaDB)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/jdbc/mariadb', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'JDBC Connector (OpenMLDB)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/jdbc/openmldb', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'JDBC Connector (PostgreSQL)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/jdbc/postgres', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'JDBC Connector (SQLite)', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/jdbc/sqlite', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'MongoDB Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/mongo', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Redis Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/redis', |
| source_or_sink: 'Sink' |
| } |
| ], |
| io: [ |
| { |
| name: 'AMQP1_0 Connector', |
| description: '', |
| link: 'https://github.com/streamnative/pulsar-io-amqp-1-0', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'AWS Lambda Connector', |
| description: '', |
| link: 'https://github.com/streamnative/pulsar-io-aws-lambda', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'AWS SQS Connector', |
| description: '', |
| link: 'https://github.com/streamnative/pulsar-io-sqs', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Cloud Storage Connector', |
| description: '', |
| link: 'https://github.com/streamnative/pulsar-io-cloud-storage', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'CoAP Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/coap', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Diffusion Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/diffusion', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'File Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/file', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Humio HEC Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/humio', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'JMS Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/jms', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Kafka Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/kafka', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Kinesis Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/kinesis', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'MQTT Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/mqtt', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Netty Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/netty', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'NSQ Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/nsq', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'PLC4X Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/plc4x', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'RabbitMQ Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/rabbitmq', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Twitter Firehose Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/twitter', |
| source_or_sink: 'Source' |
| }, |
| ], |
| logging: [ |
| { |
| name: 'Datadog Logs Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/datadog', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Flume NG Connector', |
| description: '', |
| link: 'https://github.com/streamnative/pulsar-flume-ng-sink', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Logstash Input', |
| description: '', |
| link: 'https://github.com/streamnative/logstash-input-pulsar', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Logstash Output', |
| description: '', |
| link: 'https://github.com/streamnative/logstash-output-pulsar', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'New Relic Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/newrelic', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Pulsar Beat Output', |
| description: '', |
| link: 'https://hub.streamnative.io/logging/pulsar-beat-output/v0.1.0/', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Splunk Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/splunk', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Flume Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/flume', |
| source_or_sink: 'Source' |
| }, |
| ], |
| observability: [ |
| { |
| name: 'Datadog', |
| description: '', |
| link: 'https://github.com/streamnative/pulsar-datadog', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Grafana Dashboard', |
| description: '', |
| link: 'https://github.com/streamnative/apache-pulsar-grafana-dashboard', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'OpenTracing Pulsar Client', |
| description: '', |
| link: 'https://github.com/streamnative/pulsar-tracing', |
| source_or_sink: 'N/A' |
| }, |
| ], |
| protocol_handlers: [ |
| { |
| name: 'AoP (AMQP on Pulsar)', |
| description: '', |
| link: 'https://github.com/streamnative/aop', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'KoP (Kafka on Pulsar)', |
| description: '', |
| link: 'https://github.com/streamnative/kop', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'MoP (MQTT on Pulsar)', |
| description: '', |
| link: 'https://github.com/streamnative/mop', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'RoP (RocketMQ on Pulsar)', |
| description: '', |
| link: 'https://github.com/streamnative/rop', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Starlight for RabbitMQ', |
| description: 'Acts as a proxy between your RabbitMQ application and Apache Pulsar', |
| link: 'https://github.com/datastax/starlight-for-rabbitmq', |
| source_or_sink: 'N/A' |
| }, |
| ], |
| search_and_query: [ |
| { |
| name: 'Presto Pulsar connector ', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-sql', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'ElasticSearch Connector ', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/elastic-search', |
| source_or_sink: 'Sink' |
| }, |
| { |
| name: 'Solr Connector', |
| description: '', |
| link: 'https://github.com/apache/pulsar/tree/master/pulsar-io/solr', |
| source_or_sink: 'Sink' |
| }, |
| ], |
| security_plugins: [ |
| { |
| name: 'OpenID Connect Authentication Plugin', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-openid-connect-plugin', |
| source_or_sink: 'N/A' |
| } |
| ], |
| stream_processing: [ |
| { |
| name: 'Function Mesh', |
| description: '', |
| link: 'https://github.com/streamnative/function-mesh', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'NiFi Processor', |
| description: '', |
| link: 'https://github.com/streamnative/pulsar-nifi-bundle', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Pulsar Flink Connector', |
| description: '', |
| link: 'https://hub.streamnative.io/data-processing/pulsar-flink/1.13/', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Pulsar Spark Adaptor', |
| description: '', |
| link: 'https://github.com/apache/pulsar-adapters/tree/master/pulsar-spark', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Pulsar Spark Connector', |
| description: '', |
| link: 'https://hub.streamnative.io/data-processing/pulsar-spark/3.1.1/', |
| source_or_sink: 'Source and Sink' |
| }, |
| { |
| name: 'Pulsar Storm Adaptor', |
| description: '', |
| link: 'https://github.com/apache/pulsar-adapters/tree/master/pulsar-storm', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Hazelcast Jet Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/hazelcast', |
| source_or_sink: 'Source' |
| }, |
| { |
| name: 'Zeebe Connector', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-3rdparty-connector/tree/master/pulsar-connectors/zeebe', |
| source_or_sink: 'Source and Sink' |
| }, |
| ], |
| tools: [ |
| { |
| name: 'Helm Chart (DataStax)', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-helm-chart', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Helm Chart (Pulsar)', |
| description: '', |
| link: 'https://github.com/apache/pulsar-helm-chart', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Helm Chart (StreamNative)', |
| description: '', |
| link: 'https://github.com/streamnative/charts/tree/master/charts/pulsar', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Log4j2 Appender', |
| description: '', |
| link: 'https://github.com/apache/pulsar-adapters/tree/master/pulsar-log4j2-appender', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Pulsar Admin Console', |
| description: '', |
| link: 'https://github.com/datastax/pulsar-admin-console', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Pulsar Manager', |
| description: '', |
| link: 'https://github.com/apache/pulsar-manager', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Dekaf UI', |
| description: 'Feature-rich open-source UI for Apache Pulsar.', |
| link: 'https://github.com/visortelle/dekaf', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Pulsarctl', |
| description: '', |
| link: 'https://github.com/streamnative/pulsarctl', |
| source_or_sink: 'N/A' |
| }, |
| { |
| name: 'Terraform Provider', |
| description: '', |
| link: 'https://github.com/streamnative/terraform-provider-pulsar', |
| source_or_sink: 'N/A' |
| }, |
| ] |
| } |