Hanif Tri Widiyanto

> software engineer

I build and ship real products — from full-stack web apps to Telegram bots and monitoring tools. Most of them solve my own problems, and I self-host everything.

// apps

open

ai.hanif.app

Multi-model AI chat. Streaming, message editing, system prompts, conversation pinning, tags, share links, and ⌘K command palette.

Next.js IndexedDB SSE

mangan

Find restaurants from YouTube food reviews near you. Syncs video data and maps locations — just pick a radius and discover places to eat.

Next.js Prisma Leaflet yt-dlp

bagirata

Split bills fairly with friends. No sign-up, no fuss — just enter what everyone paid and who owes whom.

Next.js Tailwind

kana quiz

Practice reading hiragana and katakana with timed quizzes. Pick a level, type the romaji, and track your progress.

Astro Tailwind

nihongo

JLPT N5 vocabulary flashcards. Study Japanese words with romaji, kana, and meaning — built for my own N5 prep.

Next.js Tailwind

pomodo

A pomodoro timer + to-do list combo. Simple focus tool — set a timer, check off tasks, repeat.

Astro Tailwind

miniboard

A minimal kanban board I built because every task manager out there has too many features. This one just has columns and cards — that's it.

Next.js Prisma DnD

nulis

Distraction-free writing tool with a canvas view. Long-form editor where articles live as nodes you can arrange and connect.

Next.js Tiptap SQLite

rupiah

Real-time USD to IDR converter. Live rates, clean interface, nothing else.

Astro Tailwind

artifacts

Push architecture diagrams as Mermaid code and instantly get a shareable URL. Used by Punakawan agents to visualize systems.

Next.js Mermaid

maivez

Email marketing tool for small teams. Build campaigns, manage lists, and send without the enterprise pricing.

Next.js Prisma Resend

netflix forwarder

Forwards Netflix household confirmation emails so my family can verify without bugging me. Set it up once, never think about it again.

Go IMAP SQLite

// personal

passcode

Personal dashboards I share selectively. Click any card to enter a passcode.

passcode

calendar

My weekly schedule — WFO/WFH days, gym, swim, run, and client work. Managed by Punakawan agents.

Next.js SQLite
enter passcode →
passcode

finance

Personal finance tracker. Expenses, income, debts, and cash flow — all logged via Punakawan.

Next.js SQLite
enter passcode →
passcode

garmin dashboard

Training dashboard synced from Garmin. Runs, swims, HRV, sleep, and race prep metrics — Intervals.icu-style.

Next.js Garmin API Intervals.icu
enter passcode →
passcode

airdrop tracker

Track active crypto airdrops, daily tasks, deadlines, and modal invested. Managed by Punakawan agents.

Next.js SQLite
enter passcode →
passcode

aturuang

Daily expense tracker via Telegram. Text what I spent — AI parses it and shows me where my money goes.

Hono Prisma Grammy OpenAI
enter passcode →
passcode

diary punakawan

Daily reflections and logs written by Punakawan AI agents. Raw thoughts, decisions, and observations.

Next.js SQLite
enter passcode →
passcode

context

Context storage for AI workflows. Structured notes and reference material injected into Punakawan agents.

Next.js SQLite
enter passcode →

// internal

private

Infrastructure and internal tools. Not publicly accessible.

private

punakawan

Autonomous AI agent system — Semar, Gareng, Petruk, Bagong. Handles GitLab ops, DevOps, coding, and daily routines.

Node.js Claude API Telegram
internal only
private

ai router

LLM API router. Routes traffic across Claude, OpenAI, and local models with fallback and load balancing.

Node.js Hono
internal only
private

uptime

Service uptime monitoring for all hanif.app projects. Alerts via WhatsApp when something goes down.

Hono Prisma Baileys
internal only
private

review

Internal code and project review tool. Tracks MRs, review comments, and feedback across GitLab projects.

Next.js GitLab API
internal only

Personal app

Enter passcode to continue

This is a personal app. Access is shared selectively.