Skip to content
View haydiru's full-sized avatar

Block or report haydiru

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
haydiru/README.md

Haidir Magribi, AI full-stack engineer

I'm Haidir, an AI full-stack engineer based in Jakarta, Indonesia. I run PT HM Tech Innovation, where I build and operate software products on my own: specification, data model, backend, interface, store release and support.

Most of what I build is web software and mobile apps with LLM features. When several organisations share one system, I isolate their data in the database itself, and I keep the AI provider swappable without touching product code.

I'm open to remote engineering roles and contract work.

Email  ·  LinkedIn  ·  YouTube  ·  Google Play


In production

Product Platform
AsapRadar Android Haze, air quality (ISPU) and fire hotspots, mapped onto the user's commute. No ads or trackers.
FlagCheck Android Reads chat screenshots and flags subtext, scam patterns and one-sided conversations. Images are not retained.
PropForma Lens Chrome extension Builds a commercial real estate underwriting workbook from a LoopNet or Crexi listing. Every figure is a live Excel formula. Paid subscription.
AO Mart Web Storefront for an organic food shop in Samarinda. Guests can order without an account.
mrwealthai.com Web Company site and product registry. Next.js 16, Zod-validated content, JSON-LD structured data.

AI engineering

What the LLM features in these products have in common:

  • Provider-agnostic model layer. Products call Gemini, OpenAI-format and Anthropic-format APIs behind one interface. In HR Automation each tenant brings its own provider, key and proxy URL.
  • Fallback chains. BeMind routes model calls through an edge proxy that falls back across OpenRouter, DeepSeek and Gemini.
  • Structured extraction and scoring. HR Automation pulls candidate identity out of free-form CVs and scores mandatory and weighted criteria against a passing grade, with a local PDF parser as a fallback.
  • Multimodal input. FlagCheck reads chat screenshots. BeMind turns CVs, PDFs, photos and voice notes into practice material.
  • Privacy as a design constraint. FlagCheck keeps no images, and AsapRadar ships without ads or trackers.

Selected work

Next.js 16 TypeScript Supabase PostgreSQL

Recruitment SaaS that screens CVs with an LLM and scores each candidate against the criteria of a job.

  • Every company is a tenant. Isolation is enforced by PostgreSQL row-level security rather than by filters in application code.
  • Each company brings its own model provider and key: Gemini, OpenAI or Anthropic format, or a proxy such as OpenRouter.
  • Applications arrive through a public form or from Gmail, where an Apps Script forwards attachments to a webhook guarded by a secret token.
  • The distance from a candidate's home to the office is computed on the server (haversine) and can be set as a hard requirement.
  • SQL migrations run automatically at deploy time through Next.js instrumentation.

Next.js 16 Prisma PostgreSQL Auth.js

Operations and reporting for a minimarket: cashier shifts, petty cash, supplier returns, attendance and payroll.

  • Role-based access built on Auth.js v5 and server actions.
  • A scheduled job reads payment notifications from Gmail and matches them to recorded transactions.
  • The dashboard compares weekday and weekend demand and ranks cashiers on revenue and cash-count accuracy.
  • Thermal receipt printing, photo evidence in blob storage, and bulk supplier import from Excel.

Flutter Supabase LLM

English speaking practice built from the user's own material. A CV, voice note, PDF or photo becomes a practice script.

  • Teleprompter reader that runs from 60 to 300 words per minute.
  • Model calls go through an edge proxy that falls back across providers (OpenRouter, DeepSeek, Gemini).
  • Vocabulary review on the lock screen, and a shared library of prompt templates.

Activity

Commits and languages over the last 12 months, across owned, collaborator and private repositories

Counted from every repository I work in, including private and client repositories, and regenerated daily by a GitHub Action. Private repositories are counted but never named.


Stack

Area Tools
Languages TypeScript, JavaScript, Dart, SQL, C#, PHP
Web Next.js (App Router, server actions), React, Tailwind CSS, shadcn/ui
Mobile Flutter, Android releases on Google Play
Data PostgreSQL, Supabase (auth, storage, row-level security), Prisma
AI Gemini, OpenAI and Anthropic APIs, OpenRouter, schema-validated output with Zod
Infrastructure Vercel, Vercel Blob, Google Apps Script, Gmail API

How I work

Every project starts with a written product spec (prd.md) and a task board kept in the repository (tasks_todo.md, tasks_in_progress.md, tasks_done.md). I work alongside AI coding agents and review everything they produce. The repositories show that process in the open.


official@mrwealthai.com  ·  LinkedIn  ·  YouTube  ·  mrwealthai.com  ·  Google Play

Popular repositories Loading

  1. GIS GIS Public archive

    Undergraduate thesis (2016): web GIS application built on Yii 2.

    JavaScript

  2. highcharts.com highcharts.com Public archive

    Forked from highcharts/highcharts

    Highcharts JS, the JavaScript charting framework

    JavaScript

  3. TM TM Public archive

    testing

  4. MvcMovie MvcMovie Public archive

    ASP.NET Core MVC tutorial project (2024).

    C#

  5. free-resources free-resources Public

    Curated list of free tools and learning resources for web developers.

  6. HR-Automation HR-Automation Public

    Multi-tenant recruitment SaaS that screens CVs with an LLM. Row-level security per company, bring-your-own AI provider, Gmail ingestion. Next.js 16 and Supabase.

    TypeScript