Skip to content

nitinsriv/nitinsriv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 

Repository files navigation

💼 My Work/Learning's Highlights — nitinsriv

📌 How to Use This Document

Each topic is structured as:

  1. Outcome-first summary

  2. Exact README excerpts (verbatim)

  3. Representative code / usage

  4. Simple architecture diagram


🧩 Index

🔴 Kafka — Event-driven order ingestion demo

🟣 AI-Agents — Prompt-to-code AI Agent CLI, RAG Agent to answer PDFs

🟢 Data-Science-IIITB — R-based academic data science work

🟡 Web-Projects — Collection of small TypeScript/CSS web projects


🔴 Kafka

Event-driven order ingestion with Apache Kafka

Repository: nitinsriv/Kafka

🎯 High-level Outcome

Simple, reliable demonstration of file-driven order ingestion into Apache Kafka using Python.

⚡ Quick Summary (from README)

💬 "This repository provides example producer and consumer scripts using Apache Kafka for simple order processing based on files containing XML order data."

📄 README Excerpts & Usage (Verbatim)

📂 Repository Contents

  • producer.py

"Watches an input directory for new XML files describing orders, extracts their order number and name, and sends these [...]"

  • consumer.py

"Consumes messages from the orders Kafka topic, deserializes the order data, and prints the received messages."


🧾 XML Input Format

<order>
<number>12345</number>
<name>BWG1</name>
</order>

▶️ Commands to Run

python producer.py
python consumer.py

📝 File Summary

producer.py:

  • Monitors the input directory for XML files

  • Parses order number and name

  • Publishes JSON to Kafka topic orders

consumer.py

  • Subscribes to topic orders

  • Prints received JSON messages

🛠 Technical Highlights
  • Language: Python 3.x
  • Dependency: kafka-python
  • Environment Kafka broker :: localhost:9092

Production patterns illustrated:

File watching → parsing → Kafka publish Consumer subscription → deserialization → processing

🧱 Architecture Diagram
graph TD;
FileSystem[Input XML files] --> Producer[producer.py]

Producer --> Kafka[Kafka Broker - orders topic]

Kafka --> Consumer[consumer.py]

Consumer --> Terminal[Console Output]
Loading

🟣 Prompt-to-Code AI Agent CLI

A simplistic programmable implemetation of AI-Agent

Repository: nitinsriv/ai-agents

🎯 High-level Outcome

✅ A compact CLI-based Prompt-to-Code AI Agent

✅ Demonstrates agent-driven code generation using LangChain + OpenAI

✅ Extracts and persists generated code automatically

📄 Description

"An AI Agent which provides a simple command-line interface for generating code snippets using langchain."

✨ Features

  • Interactive User Prompt
  • AI Agent Integration
  • Markdown Code Extraction
  • Automatic Code Saving (output.txt)

🧰 Dependencies

  • LangChain
  • OpenAI API key via .env
  • Python

▶️ Run Command

python play_webUI.py

📌 Example Output

Java - implement binary search on a sorted array

Java Code:

public class BinarySearch {

...
}
🛠 Representative Flow & Notes
  • Extracts first fenced markdown code block
  • Saves to output.txt Uses
  • regex-based parsing

⚠️ Extraction assumes markdown format and only captures the first block

🧱 Architecture Diagram
    graph TD;
    User --> CLI[play_webUI.py]
    
    CLI --> Agent[LangChain + OpenAI]
    
    Agent --> AIResponse[AI Text + Code]
    
    AIResponse --> Extractor[Regex Extractor]
    
    Extractor --> Output[output.txt]
Loading

🔵 RAG Agent Query PDF

Retrieval-Augmented Generation (RAG) for answering questions over PDF documents

Repository: nitinsriv/rag-based-pdf

🎯 High-level Outcome

✅ Pipeline to ingest PDF documents, build a vector index of text chunks, and answer user questions by retrieving relevant chunks and conditioning an LLM (RAG).

✅ Demonstrates PDF parsing, chunking, embedding generation, vector store (FAISS/Chroma), and a retriever+LLM query flow.

✅ Example usage for document search, Q&A and knowledge-base style assistants.

📄 Description

RAG-based PDF demo: extract text from PDFs, create embeddings, store in a vector DB and run retrieval-augmented queries against an LLM.

✨ Features

PDF ingestion Text chunking Embeddings (OpenAI) Retriever + LLM composition (context + generation)


🟢 Data Science (Data preparation, analytics, ML algos)

Academic Data Science in R

Repository: nitinsriv/Data-Science-IIITB

🎯 High-level Outcome

📊 Data science coursework and labs authored in R, supporting reproducible analysis and use-cases.

📦 Repository Metadata

Language: R (100%)

Description: R

📚 Expected Contents & Workflow

✅ R scripts

✅ Visualizations using tidyverse / ggplot2

🧪 Representative R Snippet
library(tidyverse)
data <- read_csv('data/student_scores.csv') %>%
mutate(passed = score >= 50)
summary_stats <- data %>%
group_by(course) %>%
summarize(
	mean_score = mean(score, na.rm = TRUE),
	pass_rate = mean(passed, na.rm = TRUE)
)
ggplot(summary_stats, aes(x = course, y = mean_score)) +
geom_col() +
theme_minimal()

🟡 Web Projects

Collection of small TypeScript & CSS web projects

Repository: nitinsriv/web-projects

🎯 High-level Outcome

✅ A set of compact web projects and demos, primarily implemented in TypeScript with CSS styling — useful as learning exercises and small deployable apps.

📄 Description

This repository contains multiple front-end projects showcasing TypeScript, modern tooling, and CSS techniques. Use it to explore examples, clone demos, or adapt them for quick prototypes.

✨ Notable points
  • Language composition: TypeScript-focused projects (approx 85% TypeScript, 14% CSS)
  • Small, self-contained apps and UI demos

About

Repository explaining my work

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages