Projects

Things I’ve built — offline AI tools, systems software, wearables, and languages. More on GitHub.

AI-Powered Cross-Platform Profile Analysis

Aliens Eye is an AI-powered OSINT username scanner: give it a username and it asynchronously checks 7,700+ platforms for matching accounts, then maps the person's footprint across the web.

Instead of naive status-code checks, detection blends a trained ML model with ~30 structural signals — HTTP status, DOM shape, keywords, and per-site fingerprints — and every "found" hit gets a second-opinion check against a username that cannot exist. It extracts display names, bios, and avatars (OpenGraph/JSON-LD/CSS), correlates profiles across sites by avatar hash, bio, and shared links, and can recursively rescan usernames discovered in bios.

It ships with watch mode (re-scan on an interval and alert to a webhook), resumable checkpointed scans, proxy/Tor support, a rich terminal UI, an MCP server that exposes scanning to LLM agents, and reports in JSON, CSV, HTML, Markdown, PDF, and graph formats. A calibrated `selfcheck` reports precision/recall/F1 per site, and the model can be retrained or improved through active-learning labeling. Published on PyPI (`pip install aliens-eye`).

Python · Bash

Offline Linux Command Assistant

lxask answers "forgot the command?" questions entirely on your machine: type what you want in plain English (or press Ctrl+G on your shell prompt) and get back one shell command — plus an explanation of every part of it.

Under the hood it runs a fine-tuned Qwen2.5-Coder-1.5B (4-bit, LoRA + reinforcement learning) through llama.cpp, alongside a bge-small encoder that retrieves relevant examples from a SQLite index of ~38,000 man-page and tldr entries. Multi-part requests are split into tasks; each is retrieved, answered, and checked independently.

The checker validates every command without running it: the program must exist, flags must be documented, paths/sizes/ports from the request must appear, and known slips (a reboot for "shut down", `grep` without `-r` on a directory) are rejected or auto-repaired. Requests like "without lsof" are honored via a small LoRA adapter, destructive commands get warnings, and vague requests get a clarifying question instead of a guess. Runs in ~1 GB disk / ~1.3 GB RAM, ~2 s per answer on CPU, and scores 62% on the NL2SH-ALFA benchmark vs 54% for its untuned base model.

Rust · llama.cpp

Touchpad Edge & Corner Gesture Controls

Margin uses the strip around the outside of your touchpad that laptops normally ignore. Slide a finger along an edge to change volume or brightness, scrub video, scroll, zoom, flip through windows, or skip tracks. Press a corner once, twice, three times, or hold it — each runs a different action: mute, screenshot, lock, open an app, or any shortcut you record.

On Windows it reads the touchpad through Raw Input HID parsing (working even unfocused), hides edge clicks with a low-level mouse hook, sends keys via `SendInput`, and drives brightness through WMI — with a Win32 settings window, tray icon, and on-screen display. On Linux it reads evdev events and emits keys through virtual uinput devices, with settings served on a tiny local web page.

The gesture state machine — geometry, edge/corner detection, press timing — is shared, OS-free Rust that is unit-tested without hardware; per-app profiles (Windows) rebuild settings between gestures. The binary is ~0.6 MB, needs no runtime, uses no network, and sends no telemetry.

Rust · Win32 · evdev

Adaptive AI Tutor

NeuroLearn is an adaptive AI tutoring platform for neurodivergent students, with a focus on Malayalam-medium learners. It tailors explanations to each student's neurodivergent profile, learning style, and reading age.

Every question runs through a LangGraph state machine: intent classification (with a rules fast-path), goal-drift checking that gently redirects off-topic turns, personalization that rewrites retrieved content for the learner, and an evaluator that generates check questions and detects misconceptions. Mastery tracking persists milestones in SQLite; RAG over Chroma-grounded passages keeps answers source-linked, with retrieval hardening, reranking, and caching.

The backend is FastAPI (~70 routes, JWT auth) with Groq (Llama) for chat/evaluation and Gemini for story generation, TTS, and transcription; a React SPA is served behind nginx, all wired together with Docker Compose. Extras include story mode (Malayalam retellings of lessons), chapter-drill mode, and smalltalk-aware routing. Presented at an OpenAI Community Meetup.

LangGraph · RAG · FastAPI

Malayalam Programming Language

Amma is a programming language whose keywords are Malayalam — built as a learning project to understand how interpreters work under the hood, and to make programming more approachable for Malayalam speakers.

The interpreter is written in Rust with a hand-rolled lexer, parser, and evaluator. Code can be written in Malayalam script or romanized "manglish" — transliterated keywords are converted automatically — saved as `.amma` files or explored in the REPL.

Despite being educational, it is a complete small language: variables, integers/floats/strings/booleans/lists, arithmetic and logic, conditionals and loops, functions with recursion, file I/O, string operations, and built-ins — with runnable samples in both scripts.

Rust

TinyML-Based Autonomic Dysreflexia Early Warning System

AYRA is a wearable early-warning system for autonomic dysreflexia — a dangerous, sudden blood-pressure spike that affects people with spinal cord injuries. Worn below the knee, it fuses GSR, PPG/HRV, ECG, skin temperature, humidity, and motion sensors to detect the condition's onset before it becomes critical.

An int8-quantized TinyML model runs on-device on an ESP32, so inference happens locally in real time with no cloud dependency. The project was a MYOSA International Hackathon finalist and was presented at the IEEE BioSensors 2026 conference in Bangkok, Thailand.

TinyML · ESP32 · TensorFlow Lite