Skip to content

dbehmoaras/atomicKafkaConsumer

 
 

Repository files navigation

AtomicKafka_MastHead


AtomicKafka is a lightweight NPM Package developed to simplify the process of establishing bidirectional, real-time data streaming with Apache Kafka in your web-app.
Website  |  Library  |  Demo Apps  |  Featured on Medium

npm GitHub contributors GitHub Repo stars Last Commit NPM

AtomicKafkaConsumer

AtomicKafkaConsumer demonstrates a functioning standalone Consumer microservice built into a React Component. This demo app was built to be used alongside AtomicKafkaProducer.

If you are running the corresponding Producer, the Consumer will listen to the data that you produce from your producer app in real time. Try it with your colleagues by setting up a free Confluent Cloud and sharing the API credentials with each to see how AtomicKafka integrates with the cloud!


Getting Started

1. Set up your Kafka service

Docker:

  • If using Docker, use the .yml file provided herein and run in the root directory of this app.

    docker-compose up -d

Confluent Cloud:

  • Follow the steps on Confluent Cloud to create a free account. Obtain the API_ACCESS_KEY, API_ACCESS_SECRET, and BOOTSTRAP_SERVER.
  • Note that if you already have a Kafka instance running from a docker image (e.g. from the Producer demo), you do not need to compose again.

2. Configure .env file

  • Default ports are configured on the local host for the dev-server 9002 and the Kafka broker 3002.
  • Docker .env config: (API_KEY and API_SECRET are intentionally left blank).
    API_KEY=
    API_SECRET=
    KAFKA_BOOTSTRAP_SERVER=localhost:9092
  • Confluent Cloud .env config:
    API_KEY=<API_ACCESS_KEY>
    API_SECRET=<API_ACCESS_SECRET>
    KAFKA_BOOTSTRAP_SERVER=<BOOTSTRAP_SERVER>

3. Install dependencies and build the package

$ npm install
$ npm run build

4. Run the dev server

$ npm run dev

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 44.6%
  • JavaScript 28.4%
  • CSS 22.2%
  • HTML 4.8%