Maruf Hasan

Full-Stack Developer · Next.js · TypeScript · Node.js

I build full-stack products that are secure, fast, and live in production.

Open to full-time & remote roles

Full-stack developer in Dhaka working with Next.js, TypeScript, and Node.js. I've launched a paid API on RapidAPI, built a real-estate marketplace with video pipelines and messaging, and shipped merged PRs to an open-source AI workspace.

Maruf Hasan — Full-Stack Web Developer

Paid API live on RapidAPI 63 automated tests 100/100/100 Lighthouse 5 merged open-source PRs

About Me

I'm Maruf, a full-stack web developer from Dhaka, building for the web since 2021. Over the past year I've shipped a paid API, a real-estate marketplace, and a studio platform on my own.

I care about the unglamorous parts of production software: caching strategy, abuse protection, tests, and documentation that can't drift out of date. I'm looking for a full-time or remote role where I can own features end to end on a TypeScript/Node team.

More about me

Strong

  • TypeScript
  • JavaScript
  • React
  • Next.js (App Router)
  • Node.js
  • Express
  • PostgreSQL
  • Prisma
  • Tailwind CSS
  • REST API design

Working knowledge

  • Docker
  • Nginx
  • Google Cloud Platform
  • Vercel
  • Cloudflare (Images, Stream, Turnstile)
  • Redis (Upstash)
  • Neon
  • Contentful
  • Git

Familiar

  • Google Maps API
  • Figma
5+
Years building for the web (since 2021)
4
Production projects shipped
63
Automated tests
5
Merged open-source PRs

Selected work

Featured projects.

End-to-end web products, from the first interface to the systems that make them work.

Orbitally.tech website preview

01Studio platform & API product

Solo · 2026

Orbitally.tech

Problem

A studio site has to prove real engineering ability, and a product page has to let visitors try a paid API without exposing it.

  • Secured live API playground: server-side proxy, same-origin checks, action-bound Cloudflare Turnstile, four Redis sliding-window rate limits with an in-memory fallback, secret redaction, and masked contact data.
  • 87-field API reference generated from one typed schema, with tests that fail when the docs drift.
  • Legal pages rendered from typed content with billing-provider variants; a contact form that fails closed instead of faking success.
  • 63 automated tests; 100/100/100 Lighthouse on the homepage and product page.
Next.jsReactTypeScriptTailwind CSSUpstash RedisCloudflare TurnstileVercel
BezBroker website preview

02Real estate marketplace

Freelance client project · Dec 2025

BezBroker

Problem

Property owners and brokers needed a marketplace to list homes for sale or rent, and buyers needed a way to contact them after signing in.

  • Async video pipeline: TUS resumable upload, Cloudflare Stream transcoding, HMAC-SHA256-verified webhook, adaptive HLS/DASH playback.
  • Email and SMS OTP login (Brevo, Twilio) with database-backed sessions and HTTP-only cookies.
  • 10-model PostgreSQL schema (Prisma) with composite constraints and ~40 indexes; search API with cursor and offset pagination.
  • One-to-one messaging with read receipts, online presence, and per-user mute and soft delete.
Next.jsReactTypeScriptTailwind CSSPostgreSQLPrismaCloudflare ImagesCloudflare StreamGoogle Maps API
Company Enrichment API website preview

03Developer API

Solo · 2026

Company Enrichment API

Problem

Sales and CRM tools need reliable company facts from just a domain, but scrapers are fragile and data vendors are expensive.

  • Domain in, structured profile out: company details, public contacts, 11 social platforms, 60+ tech-detection rules, and a transparent 0-100 confidence score.
  • Deterministic parsing first, Gemini structured output second, so the API still works if the LLM is down.
  • Resilience layer: in-flight request coalescing, two-tier caching with per-error negative TTLs, multi-URL fetching with a Firecrawl fallback, async writes with a dead-letter table.
  • Deployed with Docker and Nginx on GCP, backed by Neon Postgres tuned to scale to zero, and sold on RapidAPI.
TypeScriptNode.jsExpress.jsPostgreSQLPrismaDockerNginxGoogle Cloud Platform
YICN Roofing website preview

04CMS-driven roofing blog

Team project · Aug 2025 · I owned the blog system

YICN Roofing

Problem

The owner wanted to publish posts and control SEO without a developer.

  • Contentful integration with ISR listing page, featured article, and statically generated post pages.
  • Custom rich-text renderer: tables, embedded video and audio, auto-embedded YouTube links.
  • CMS-driven SEO: title, description, keywords, and OG image editable per post and wired into generateMetadata.
  • FAQ accordion, author block, and optional embedded map.
Next.jsTypeScriptReactContentfulTailwind CSSshadcn/ui

Open-source work

Open-source contributions.

I contribute features and fixes to Odysseus, helping make a self-hosted AI workspace more capable, reliable, and maintainable.

Selected contributions

5 merged pull requests

Featured · 01Merged

NVIDIA AI Provider Integration

Added NVIDIA's OpenAI-compatible API to provider detection and routing, filtered non-chat models from its catalog, and validated compatibility with the existing provider tests.

  • API integration
  • Provider routing
  • Model discovery
  • Automated tests
View PR #3456 (opens in a new tab)
Featured · 02Merged

Web Search Icon Rendering & Safe HTML Handling

Fixed raw SVG markup appearing in place of the web-search icon. Kept icon markup separate from visible labels, preserved HTML escaping, and added behavioral tests for rendering, fallback icons, case-insensitive lookup, and hostile tool names.

  • Frontend debugging
  • Safe HTML rendering
  • Behavioral tests
View PR #3601 (opens in a new tab)

More fixes and maintenance

Memory & Skills UI Reliability

PR #2906

Fixed empty-list selection behavior and stale UI state after skill deletion, keeping toolbar controls and item counts consistent.

View PR (opens in a new tab)

Codebase Cleanup

PR #2632

Removed approximately 820 lines from an obsolete landing-page file after confirming it was no longer referenced.

View PR (opens in a new tab)

These changes have all been merged into Odysseus.

View all my merged pull requests (opens in a new tab)

Selected engagements

Freelance work

  • 01Full-stack web applications
  • 02Backend and API development
  • 03CMS-powered sites with SEO

Let's talk

I'm open to full-time and remote roles. Send me a note about the role or the team and I'll get back to you.

Location

Dhaka, Bangladesh (UTC+6)