Getting Started

Getting Started

Follow this guide to get the project running on your machine.

âš¡ Skip the Setup

Launch a pre-configured environment in your browser with Java 17 and Docker ready.

Open in Codespaces

Prerequisites

  • JDK 17+
  • Docker (optional, for sandbox)
  • Node.js 18+ (for Avrodoc generation)

What you'll build

  • Generate Avro schemas from IDL
  • Run a Producer/Consumer demo
  • Visualize schemas with Avrodoc

1. Installation

Clone the repository and verify the environment using the included Gradle wrapper.

git clone https://github.com/anilkulkarni87/AvroJnaana
cd AvroJnaana
./gradlew -v  # Verify JDK 17+

2. Generate Schemas & Docs

Compile the Avro IDL files (`.avdl`) into schemas (`.avsc`) and generate HTML documentation.

./gradlew schemas:generateSchema schemas:generateAvrodoc copyAvroSchemas

You can now open docs/avrodoc/avrodoc.html to browse the schemas.

3. Run the Demo

Execute the query demo which writes and reads data using the custom `encrypted` and `reversed` logical types.

./gradlew runQueryDemo

Expected output:

INFO com.lavro.QueryRecordOutput - Successfully wrote query.avro
INFO com.lavro.QueryRecordOutput - Query ID        : 584-86-6254
INFO com.lavro.QueryRecordOutput - Query Author    : Daisey Gaylord (Reversed)
INFO com.lavro.QueryRecordOutput - Secret Name     : yoshiko.kshlerin (Decrypted)