← Back to homePROJECTSIdeas, Shipped.
Tools for people around me, problems I’ve run into, and experiments that helped me learn by building.
Built for my church and community
Event information and devotional content for people in my community.
CONTENT WORKFLOWUpload Devotion
DOCX → cleaned devotional textSpeech audio → Convex storage Upload Devotion
Prepare bilingual devotionals and audio.
Parses English and Tamil Word files, prepares text for speech, generates audio, and syncs content into Convex.
Monthly operator workflowChecked code uses deterministic parsing and TTS; no AI model call or scheduler was found.
Next.jsConvexDOCXTTS
DEVOTIONAL READERDaily Devotion
தமிழ் · EnglishRead the day’s devotion · Listen Orchids February Daily Devotionals
A bilingual month-and-day reader.
A devotional site with English and Tamil routes, daily articles, audio references, and month navigation.
English + Tamil contentThe 400+ DAU figure is user-reported; its connection to this repo is unconfirmed.
Next.jsConvexTamilEnglish
RETREAT WEBSITEFather-Son Retreat
Venue · Schedule · InstructionsGallery · Audio · Presentations Father-Son Retreat
Event details and resources in one place.
A bilingual retreat site with venue guidance, schedule, activities, gallery, recordings, and presentations bundled with the page.
Bilingual event siteThe checked repo bundles media; it does not show a separate media-server integration.
HTMLCSSJavaScriptTamil
EVENT WEBSITEYouth Ministry Event
Speakers · Schedule · GalleryVenue · Calendar · Share Youth Ministry Site
A configurable landing page for a church event.
Event information, speakers, schedule, gallery, location, sharing, and calendar export are driven by event data.
Event-focused featuresThe checked event config has placeholders; no deployed URL was listed.
Next.jsReactTailwindFramer Motion
Built for people around me
Practical tools for a local business, social content, and small personal interactions.
SHOP OPERATIONSSunny POS
Variants · Barcode checkout · GSTStock ledger · Returns · Customer credit Sunny Billing Software
Billing and inventory for a clothing shop.
Variant-level stock, barcode-assisted checkout, GST invoices, promotions, returns, and customer credit in one shop workflow.
Built for a real clothing shopShop use is owner-reported; no outcome metrics published.
ReactFirebaseTypeScriptRetail
SOCIAL CONTENT TOOLThinam Oru Kural
Kural · Meaning · TransliterationDownload poster · Copy caption Thinam Oru Kural
Turn a Thirukkural into a poster.
Fetches a kural, composes a portrait poster in the browser, and prepares a caption to copy. Posting is a manual step.
Canvas poster exportCanva and Instagram publishing integrations were not found in source.
AstroCanvasTamilJavaScript
FRONTEND EXPERIMENTHug in a URL
Write a note · Pick a GIFEncrypt locally · Share a link Hug in a URL
A message and GIF in one link.
Encrypts the message in the browser and places the ciphertext and key in the URL fragment, with no app backend.
Web Crypto AES-GCMThe deployed Netlify URL returned 404 at the last check.
ReactTypeScriptWeb CryptoFrontend only
PLAYFUL BUILDPunch Me
Tap to punchHit effects · Damage states · Reset Punch Me
A silly tap-to-punch browser game.
Tap the illustration to move through face states, hit effects, and a reset. Inspired by a browser game I played as a kid.
Nine visual damage statesA small frontend-only experiment, built for fun.
HTMLCSSJavaScriptCanvas
Experiments and engineering explorations
Small projects that helped me explore data processing, Go, automation, AI, and real-time systems.
DATA VALIDATIONCSV validation
Employee rows → normalizationIDs · Managers · Reporting cycles HSR CSV Validate
Check employee CSV data and reporting lines.
Normalizes imported rows and validates identifiers, manager references, and reporting cycles in memory.
CSV + hierarchy validationRows are accumulated in memory; no performance benchmark was found.
PythonDjangoCSVGraph validation
GO DEVELOPER TOOLInto Short URL
url.noskill.in/https://…Redis lookup → 301 redirect Into Short URL
A Go and Redis URL shortener.
Append a long URL to the service domain, then use the generated short code to redirect to the original destination.
Go · Gin · RedisRoot URL returns 404; the documented append-a-URL route responds.
GoGinRedisCloud Run
EARLY PYTHON PROJECTClass timetable
Weekday + period → meeting URLBrowser automation attempt Automate Online Classes
A timetable-driven Selenium experiment.
An early Python attempt to open scheduled online classes, join Google Meet, and send a chat greeting.
Built while learning PythonCurrent source contains placeholders and mismatches; reliable end-to-end operation is not established.
PythonSeleniumAutomation
AI AGENT EXPERIMENTKirana Agent
“Add 10 packets of Maggi”Stock update through a typed tool Kirana Agent
Shopkeeping through Telegram conversation.
An agent routes stock, billing, and customer-credit requests to Python tools that enforce business rules.
Inventory · Bills · Khata ledgerREADME lists a Telegram bot; current availability could not be confirmed.
PythonGoogle ADKPostgreSQLTelegram
REAL-TIME SYSTEMSPresentation room
Presenter changes slide 08Attendees receive the update Real-Time Presentation Tool
Follow meetup slides on your own device.
I built this after struggling to read slides from the back of meetups. A presenter uploads a deck and attendees follow slide and annotation updates.
Slide and annotation syncChecked implementation uses SSE; multi-instance delivery is not verified.
Next.jsPDF.jsPostgreSQLSSE
GO SERVER EXPERIMENTSSH session
Connect → terminal promptTyped input → canned response SSH Server in Go
A tiny interactive SSH server.
Accepts an SSH session and returns playful canned responses instead of executing shell commands.
Go session handlingNo explicit application authentication was found; this is an experiment, not a public shell.
GoSSHTerminal
TERMINAL UIElection results
Fetch JSON → parse with jqRedraw terminal at set interval Tamil Nadu Election TUI
Election results in the terminal.
Polls a public results JSON endpoint and redraws a shell dashboard with seat and candidate information.
Bash · curl · jq · tputCurrent code defaults to 10-second polling; this does not mean the source updates each interval.
BashcurljqTUI
GO HTTP SERVICELorem service
/paragraph/3/blog/10 → placeholder text Go Lorem Ipsum Generator
Dummy text from a URL or curl.
Generates words, sentences, paragraphs, lists, and blog-shaped Markdown using a small Go HTTP service.
Standard-library HTTP serverNo performance benchmark was found.
GoHTTPMarkdowncurl
VS CODE EXTENSIONCodex Voice
Speak → local transcriptionTranscript → integrated terminal Codex Voice
Local voice input for a terminal workflow.
A VS Code command records speech, calls a Python transcription bridge, and inserts the transcript into the active terminal.
Local Whisper bridgeThe repository does not verify the reported Marketplace publication.
VS CodePythonWhisperAudio
REAL-TIME COLLABORATIONShared notes
View link · Edit codeEveryone sees the latest document Live Markdown Editor Preview
One shared place for notes and commands.
I started this because sending commands one at a time was awkward. People join a room and see Markdown edits live.
Socket.IO shared roomsRoom state is in memory; edits are whole-document broadcasts.
ReactExpressSocket.IOMarkdown