Skip to content

Mohammad Mahdi Molaei

Senior Front-End Developer — Vue / Nuxt, React / Next.js

We buildscalabledigitalexperiences.

An interactive 3D rendering of the triplem.dev mark: three parallel slashes, the middle one gold.

///Three slashes, one systemHover a slash, drag to turn the mark, click to decompose.
Selected work
01 / About

I build interfaces that scale from pixels to products.

Based in
Asia
Focus
Front-End Engineering
Primary
Vue / Nuxt
Also
React / Next.js

I’m a senior front-end engineer working mostly in Vue and Nuxt, and comfortably in React and Next.js. I care about the parts users never see — boundaries, state, rendering strategy — because they decide how the parts users do see will feel.

I’ve been building front ends since 2020: a learning management system for Smart-Sino UK, an ERP for inspection companies at NCT, and most recently Tarazoo, a server-rendered legal platform on Next.js.

More about me
Method — three stages, one system
  1. / 01

    Idea

    Understand the product problem before drawing the component tree.

  2. / 02

    Architecture

    Design boundaries, data flow and rendering so the system can grow without rewrites.

  3. / 03

    Experience

    Ship interfaces that feel fast, accessible and considered — on every device.

02 / Stack

A connected system, not a progress bar.

Select a technology to see what it’s for, what it connects to, and where it has shipped.

Language
Framework
Craft
03 / AI

Vibe to explore.Specs to ship.

I build with AI every day, from the first sketch to the last review. The tools change every few months. What lasts is knowing which mode a problem needs.

This site is built the same way: a CLAUDE.md that explains the codebase to agents, project skills for Nuxt, Vue and i18n, and a daily workflow where Claude Code drafts a post, draws its cover and opens a pull request for me to review.

  • Explore

    Vibe coding

    For prototypes, experiments and side projects. I describe what I want, run it, react and keep the loop tight. The point is to find out quickly what’s worth building.

  • Ship

    Spec-driven development

    For anything that goes to production. Requirements, a plan and a task list are written first and kept in the repo. Agents build against them, and the spec becomes the review checklist.

Fig. 03 — One feature through the loop: this site’s contact form

What we’re building and why, with acceptance criteria anyone can check.

spec.md
# Contact form## WhyVisitors need a direct way to reach me,without the site becoming a spam relay.## Acceptance criteria- [ ] Name, email, topic and message are required- [ ] At most 5 messages per IP every 15 minutes- [ ] Bots get a quiet success, never an error- [ ] Mail reaches me only; the visitor is Reply-To
Tools at this stageChatGPTClaude
Five tools, each with a job
  • ChatGPT

    A thinking partner: research, comparing options and pressure-testing an idea before it becomes a spec.

    Used in Specify

  • Claude

    Long, careful reading and writing: specs, plans and a second opinion on big changes.

    Used in Specify · Plan

  • Claude Code

    The agent in my terminal. It reads the repo and CLAUDE.md, plans, then works through tasks one by one.

    Used in Plan · Tasks · Build · Verify

  • GitHub Copilot

    In the editor all day: completions and inline edits, plus a reviewer on pull requests.

    Used in Build · Verify

  • OpenCode

    An open-source terminal agent for running the same loop with whichever model fits the job.

    Used in Tasks · Build

04 / Experience

Chapters

Most recent first
  1. 2026
    Chapter 04 · Legal platform

    Front-End Developer

    Tarazoo

    The front end of Tarazoo, a server-rendered legal-consultation platform: people browse legal services, ask questions with AI assistance, and book paid sessions with lawyers.

    Tarazoo home page: the legal platform introduction next to the AI legal assistant card
    TypeScript
    JavaScript
    Next.js
    React
    TypeScript
    TanStack Query
    Redux
    NextAuth
    Tailwind
    Radix UI
    React Hook Form
    Zod
    Docker
    Sentry
    HTML & CSS
    Architecture
    etarazoo.com
    Read more — Tarazoo

    Built on the Next.js App Router as a set of modules with clear ownership: TanStack Query for server state, Redux Toolkit for client state, and NextAuth for OTP sign-in. Everything is styled with a custom design system on Tailwind CSS 4 and Radix UI, shipped with Docker and Nginx, and watched in production by Sentry with structured logging.

    Highlights
    • A page builder that renders configurable blocks (hero, services, benefits, FAQ, workflow, blog and news, comments) from backend-driven data.
    • An AI-assisted legal question flow, and lawyer reservation and booking with integrated payment.
    • Robust forms on React Hook Form and Zod, with schema validation across sign-in, questions and reservations.
  2. 2024
    Chapter 03 · IKA · Inspection ERP

    Front-End Developer

    IKA Engineering Co — Iran · Tehran

    IKA, an ERP for inspection companies: one workspace for the people, contracts and inspections behind every job.

    IKA dashboard: sidebar with users, customers, coordinators, inspectors, contracts and inspections
    IKA sign-in screen with theme and language switches
    Nuxt.js
    Vue
    Vuetify
    TypeScript
    HTML & CSS
    Tailwind
    JavaScript
    Architecture
    Read more — IKA Engineering Co

    The app is organised around the inspection business itself: users, customers, coordinators and inspectors, with nested sections for contracts and inspections. It also runs the office around the work (correspondence, a file manager, the monthly menu and staff food reservation), so teams stay in one tool instead of five.

    Highlights
    • Management screens for users, customers, coordinators and inspectors, plus nested contract and inspection sections.
    • Back-office modules in the same app: correspondence, file manager, monthly menu and food reservation.
    • Light and dark themes, a language switch and live notifications across the whole app.
  3. 2024
    Chapter 02 · Inspection ERP

    Front-End Developer

    NCTEVO — China

    An ERP for inspection companies: one workspace for the people and inspections behind every job.

    IKA dashboard: sidebar with users, coordinators, inspectors and inspections
    IKA sign-in screen with theme and language switches
    Nuxt.js
    Vue
    Vuetify
    TypeScript
    HTML & CSS
    Tailwind
    Architecture
    NCTEVO
    Read more — NCTEVO

    The app is organised around the inspection business itself: customers, coordinators and inspectors, with nested sections for inspections.

    Highlights
    • Management screens for users, customers, coordinators and inspectors, plus nested inspection sections.
    • Light and dark themes, a language switch and live notifications across the whole app.
    • experience.items.nctevo.highlights.2
  4. 2020
    Chapter 01 · Learning management system

    Front-End Developer

    Smart-Sino UK — China

    An advanced learning management system that keeps student and teacher data in one place.

    Smart-Sino UK landing page: “Wise choice, worthy cost” over Tower Bridge
    Nuxt.js
    Vue
    Vuetify
    TypeScript
    JavaScript
    HTML & CSS
    Architecture
    Read more — Smart-Sino UK

    The flagship product was an advanced Learning Management System (LMS), designed to manage student and teacher data efficiently, with scheduling that organises teacher availability and class sessions.

    Highlights
    • Student and teacher records, managed from one system.
    • Scheduling for teacher availability and class sessions.
05 / Blog

Blog

Engineering notes on architecture, rendering and interface craft.

All posts
  1. 01 · October 2026
    Nuxt pro tip: contain widget failures with NuxtErrorBoundary instead of the full-screen error page nuxt · pro-tip · error-handling
  2. 02 · October 2026
    Vite 8.3.5: a bundled-dev hardening release, plus import map and optimizer fixes vite · tooling · rolldown
  3. 03 · October 2026
    create-vite adopted TypeScript 7 for a day: what the rollback says about your toolchain typescript · vite · tooling
  4. 04 · October 2026
    Next.js pro tip: a page-level auth check does not protect the Server Action inside it next.js · pro-tip · security
06 / Contact

Let’s build
something great.

Have a product idea, a technical challenge, or an interesting opportunity? Let’s talk.

Or send a message