← Selected work

DEDICATED COMPONENTS / MESSAGING & AI

Useful building blocks.

Focused integrations.
Reusable across products.

Alongside complete products, I’ve built complete, reusable components for messaging and AI integration. Each addresses a specific external system while keeping the application’s own responsibilities clear.

MESSAGINGWhatsApp & Telegram
AIOllama & OpenAI
DESIGNFocused boundaries and explicit configuration

01 — WHATSAPP

Connect conversations
to the application.

Separate listener and bot libraries handle the two sides of WhatsApp integration: receiving verified webhook events and interacting with the Graph API.

↓

Webhook listener

Subscription verification, inbound event discovery, and signature validation against the original request body.

↗

Outbound messages

Text, interactive menus, and call-to-action links, with support for replies to provider message IDs.

▤

Messages and media

Parsing text and interactive replies, recognizing media messages, and retrieving media metadata and downloads.

◇

Host-independent contracts

Focused interfaces let an application own its HTTP endpoint and business behavior while reusing the WhatsApp integration.

02 — TELEGRAMBOT

Bot and client.
Distinct responsibilities.

TelegramBot brings together separate bot and Telegram user-client connectors, with supporting host, UI, and server projects.

Bot connector

Bot connection, message reception, chat-type handling, and document delivery.

User-client connector

Connection and verification workflows, chat discovery, message access, and file uploads through WTelegram.

Upload feedback

Upload handling includes progress models so a consuming application can track transferred data.

The bot and user-client integrations provide complete messaging and file-transfer workflows, with connection handling and upload progress built in.

03 — AI PROVIDERS

Choose where
inference runs.

Zilkode.AI.Ollama and Zilkode.AI.OpenAI connect applications to local and hosted AI through interchangeable providers. Applications choose where inference runs through explicit configuration.

⌂

Zilkode.AI.Ollama

Local chat, embeddings, and model discovery through Ollama, with explicit model identity and configuration.

✳

Zilkode.AI.OpenAI

Hosted Responses and embeddings through OpenAI, with model compatibility and embedding-dimension checks.

Application AI workConfigured provider
Ollama · localOpenAI · hosted
01

Reduce API costs with local execution

Running suitable workloads locally through Ollama can reduce paid API usage. Hosted OpenAI remains an option when its models better fit the task. Local execution still carries hardware, power, and maintenance costs.

02

Keep the choice explicit

Provider choice belongs at the integration boundary. Applications switch where AI work runs through configuration, keeping provider-specific behavior inside the integration.

03

Respect model compatibility

Interchangeability requires attention to model capabilities and embedding compatibility. Switching an embedding model can require regenerating stored vectors.

The configured provider routes application workloads to Ollama or OpenAI. Shared HTTP handling and explicit model configuration keep both integrations consistent.

SEE THE PRODUCTS

Selected work
Explore Shibozo