Skip to main content

Portfolio

I'm Bilal, a frontend engineer building fast, visual products for the internet and I care way too much about UX to ship anything ugly.

I've worked with startups building developer tools, Open-source libraries, and side projects that started as weekend ideas that somehow turned into real products.

Currently open for collaborations. Book a call or Contact Me.

You'll usually find me building on GitHubor talking about the process on Twitter/X.sharing what I'm learning on LinkedIn.

Background wrapper
Palette discovery

Component Lab

Experience

Software Developer

·Freelance
May 2026 - Present

Remote, Full-Time

Leading the design and development of open-source developer tools, from architecture and interface decisions to shipping on Vercel.

Next.js
Next.js
React.js
React.js
Material UI
Material UI
Shadcn-ui
Shadcn-ui
TailwindCSS
TailwindCSS
JavaScript
JavaScript
Figma
Figma
Git
Git
TypeScript
TypeScript
Cloudflare
Cloudflare
Bun
Bun
Google Analytics
Google Analytics

Frontend Engineer

·Ocean Labs
March 2026 - June 2026

Remote, Part-time

Worked as a Frontend Developer, building responsive, high-performance web applications while collaborating closely with designers and backend engineers to deliver polished user experiences.

  • Developed and maintained modern, responsive user interfaces using React and Next.js with performance in mind.
  • Collaborated with cross-functional teams to ship production-ready features and optimize Core Web Vitals.

Web Developer

·Freelance
June 2026 - July 2026

Remote, Part-Time

Worked as a Freelance Web Developer, designing and building modern, responsive websites and web applications for clients across different industries, from concept to deployment.

Some of my works

Background wrapper
Palette discovery

Rhythmkey

Background wrapper
Create Beautifully Readme's

Readmeforge

Background wrapper
Scoring engine

Metaviewer

Background wrapper
Command palette

Commandeer

Background wrapper
Repo analysis

Repo Reviewer

A Little About Me

Hey it's me Bilal. I'm a frontend developer who genuinely enjoys building things for the web.

I'm driven by curiosity, clean design, and the satisfaction of turning ideas into products people actually use - that's what keeps me going.

Lock Soical Icons Preview

I enjoy the entire process: designing thoughtful interfaces, writing maintainable code, and building systems that scale - from React and Next.js to APIs, databases, and auth flows.

Creativity has always been my way to express myself. I draw, design, move through gym, and explore new corners of the world whenever I can.

How I work

Building great products is more than code. I think about the entire experience - how users interact, how systems behave, and how products evolve over time

Strategize

Understand users, business goals and constraints before building anything.

Iterate

Experiment, prototype and refine continuously through feedback.

Launch

Ship thoughtfully and validate in real-world conditions.

Measure

Use data, performance insights, and usage patterns to improve.

What I'm learning right now

Just the things I'm spending real time on lately.

Crossing into the backend

I've spent most of my time as a frontend developer, comfortable with UI, state, and everything that renders on screen. Lately I've been pulling back the curtain on what happens before that: APIs, databases, and how a server actually decides what to send back.

I'm working through Node.js, Express, and PostgreSQL, building small REST APIs from scratch, writing my own auth with JWTs instead of trusting a library to explain it to me, and learning to model data with actual relationships instead of props and JSON files.

Hand-drawn sketch of a frontend developer's mental model connecting to backend concepts like APIs, servers, and databases

Learning by building, not just reading

To make it stick, I'm building a small Node.js CLI tool that scaffolds new projects. Nothing fancy, but it forces me to actually touch the file system, write real database migrations, and use TypeScript on the server side instead of just the client.

The part I keep coming back to is error handling. On the frontend I obsess over how a broken state feels to a user, I'm applying the same instinct here, so the CLI fails with a clear, useful message instead of a cryptic stack trace. Same UX brain, just pointed at a terminal now.

Artifacts

This site counts visits (masked IP, rough location, device type - never anything identifying) and publishes the results openly at /visitors.