AnalyticsData PlatformResearch ToolBusiness IntelligenceSaaSWeb Application
Private-market research platform indexing tens of millions of records across 500+ attributes, with live ETL that ingests news, company data, and investor updates daily. Built with Node.js, Next.js, TypeScript, Zod, PostgreSQL, and supporting services.
Graph IndexS3 Object StorageInteractive AppTerminal UIMDX BlogSearch
Personal site with a graph index of thousands of JSON documents that crawls external links to fetch logos and OpenGraph images on demand. Built with the Next.js App Router and TypeScript; Dockerized for cloud deployment.
AIWeb SearchChat AssistantOpenAIGPTRAG
Web app that merges search with an AI chat assistant: select results, then ask GPT/Groq/Gemini using that grounded context. Built with Next.js, TypeScript, Convex Database, and Vercel AI SDK, with heavy server-side scraping/parsing to filter only relevant context.
AIEmail ClientLLMProductivityTask AutomationVector Search
AI-native email client that indexes every message in Qdrant for semantic and BM25/BM42 search. Offers full-mailbox search, drafts cited replies, and surfaces follow-up tasks from context. Built with Svelte + Vite and Spring Boot.
Terminal UICLIChat ClientOpenAIJavaOpen Source
Terminal ChatGPT client for fast, keyboard-first chat. Includes slash commands, tool execution, and support for OpenAI-compatible providers (OpenRouter, Ollama, LMStudio). Location features powered by Apple Maps Java. Built with TUI4J and available via Homebrew.
Terminal UITUIJavaOpen SourceDeveloper ToolsFramework
A Java terminal user interface framework inspired by Charm's BubbleTea (Go). Implements The Elm Architecture with Model/init/update/view patterns. Includes ports of bubbles (UI components), lipgloss (styling), and harmonica (spring physics animations). Published on Maven Central.
JavaSDKApple MapsGeocodingREST APIOpen Source
A lightweight, unofficial Java SDK for the Apple Maps Server API. Provides geocoding, search, autocomplete, directions, ETA, and place lookup for backend/JVM applications. Automatically exchanges long-lived JWT tokens for short-lived access tokens with refresh. Published on Maven Central.