HI THERE, I'M
FIRDAUS ADNAN

Laravel developer building data-heavy dashboards and AI-integrated platforms, plus the occasional website people actually see.

WHAT I DO.

WEB DEVELOPMENT

My work splits fairly evenly in two. On one side, internal systems and dashboards such as approval workflows, analytics platforms, and the third-party API pipelines that keep their data current. On the other, public-facing sites built from Figma handoff to launch, where the job is matching a designer's intent exactly across every breakpoint.
Most of my recent work has leaned backend: integrating LLM APIs, self-hosting Whisper for speech-to-text, and writing custom components when the framework cannot do what a client needs.

01.

MY SKILLS.

LARAVEL/PHP

FILAMENT

LIVEWIRE

MYSQL

JAVASCRIPT

ALPINE.JS

HTML/CSS

TAILWIND

BOOTSTRAP

GIT

WORDPRESS

PYTHON

INTEGRATIONS

OPENAI

GROQ

WHISPER

RAPIDAPI

PAYPAL

GOOGLE OAUTH

AWS S3

FABRIC

02.

SELECTED WORKS.

BEHIND THE LOGIN. (3)

KOL ANALYTICS PLATFORM

THE PROBLEM
Users needed AI summaries of influencer content at several levels, from a single video up to a full profile, without a way to see or control what each generation was costing them.

WHAT I BUILT
Self-hosted Whisper on the application server to transcribe uploaded videos, then fed those transcripts and crawled performance metrics into OpenAI and Groq to generate summaries at video, collection and profile level. Added credit-based metering across every AI feature: trial credits, per-generation deduction, PayPal top-ups and a full transaction history.

THE RESULT
Users can summarise at any level and track their own credit usage, with every generation priced and logged. Transcription runs in-house rather than billing per minute to a third-party API.

TOOLS
PHP/LARAVEL - FILAMENT - MYSQL - WHISPER - OPENAI - GROQ - RAPIDAPI - PAYPAL - AWS S3

RETAIL ANALYTICS DASHBOARD

THE PROBLEM
Business data sat in Microsoft Fabric and needed readable views for non-technical stakeholders. Filament could not render array-sourced data or multiple tables on a single page.

WHAT I BUILT
Dashboard pages turning Fabric data into readable views, working as one of three developers each owning a set of sections. Built a custom Alpine.js data table to get past the Filament limitation, with search, sorting, Excel export, nested expandable rows and pinned totals, then paired it with Highcharts visualizations over the same data.

THE RESULT
Non-technical stakeholders read the numbers directly across every section, and the table became a shared component powering 25 pages for around 150 users across the three-developer team.

TOOLS
PHP/LARAVEL - FILAMENT - ALPINE.JS - HIGHCHARTS - MICROSOFT FABRIC - MYSQL

QUOTATION & INVOICE SYSTEM

THE PROBLEM
Account managers were producing quotations with separate ad-hoc generators, leaving no shared approval trail and no single record of what had gone out.

WHAT I BUILT
A quotation and invoice module from scratch, covering document creation, role-based approval routing between account managers and finance, PDF generation, and a searchable history of every document issued. Converting an approved quotation into an invoice carries the line items across rather than starting again.

THE RESULT
Around 30 documents a month now run through one system instead of scattered generators, with every approval recorded and past documents retrievable by anyone who needs them.

TOOLS
PHP/LARAVEL - MYSQL

PUBLIC FACING. (4)

O'Cera Xepa Soul Pattinson

PHP/LARAVEL

FILAMENT

HTML/CSS

BOOTSTRAP

GOOGLE RECAPTCHA

VITE

AOS

SWEETALERT

2025

Tymodex Xepa Soul Pattinson

PHP/LARAVEL

HTML/CSS

BOOTSTRAP

VITE

AOS

2024

T9 Marketing Sdn. Bhd.

WORDPRESS

ELEMENTOR

HTML/CSS

2024

MESSRS ASGHAR Advocates & Solicitors

WORDPRESS

ELEMENTOR

HTML/CSS

2023

A
LITTLE
BIT
ABOUT ME.

Firdaus Adnan

I didn't start in software. I graduated in mechanical engineering, then joined the K-Youth Development Programme (a Khazanah Nasional initiative for non-IT graduates) and landed at an agency building WordPress sites for clients. Seven months later I moved to Laravel and haven't looked back.
Two years on, I've shipped AI-integrated analytics platforms, finance approval systems, and brand websites. Most of it comes down to breaking a vague problem into parts that can be tested, a habit I brought over from my engineering degree.

DON'T TAKE MY WORD FOR IT.