// about.md

Mahir Faysal

I am Mahir Faysal, a student web developer in Bangladesh. I build websites and web apps with HTML, CSS, JavaScript, PHP, MySQL, Next.js and TypeScript, and I take on business projects.

Web DeveloperWhat I am working toward
Open for workSites, tools, and business projects
BangladeshWhere I live

My journey

I started by learning how a web page is structured. HTML came first, then CSS, then small JavaScript interactions. I now use PHP and MySQL when a page has to save a message and show it again.

My interests

I like clean interfaces, readable code, and pages that do a real job: a business site, a dashboard, a form, a tool people open every day.

My learning goals

I want to keep shipping useful websites and take on projects I can build carefully. If you need a site or a web tool, I can do it.

Work I take

I take websites, landing pages, dashboards, and small web apps. If the work needs a form, a database, or a layout that works on a phone, I can build that too.

// 01 · work

I build, and I can take the job.

I take websites, landing pages, dashboards, and small web apps. If the work needs a form, a database, or a layout that works on a phone, I can build that too.

A business site, an admin page, a form that stores a message, a dashboard, or a redesign of something that already exists: that is the work. Tell me what the page has to do and I will build it.

When someone asks what I do, the answer is: I am a student web developer in Bangladesh. I make websites and web tools, and I am available for projects.

// 02 · start

How the pages started.

I started by learning how a web page is structured. HTML came first, then CSS, then small JavaScript interactions. I now use PHP and MySQL when a page has to save a message and show it again. Each of those steps was a real file on disk, not a course badge. HTML taught me that a page is a tree. CSS taught me that the tree can still look wrong. JavaScript taught me that a click can change the tree without a reload.

PHP came later, when I wanted the page to remember something. A contact message that disappears when you refresh is only half a form. MySQL is the other half: a table, a prepared statement, and a row I can open again from an admin screen.

I still write the simple version first. A heading, a paragraph, a link. Then spacing. Then a second page. Then the thing that fails on a narrow screen. That order is slower, and it is the reason the writing on this site sits in a column you can actually read.

# learning order
1 html   structure
2 css    layout
3 js     small interactions
4 php    forms and pages
5 mysql  save and read rows

// 03 · practice

How I work on a page.

A useful session has one target. “Make the whole site better” is too big. “Make the hero read from the top” is a real task. “Turn a business brief into a page people can use” is a real task.

open
Open one file

A stylesheet, a PHP view, or a small script. I try not to change five things at once, because then I cannot tell which change fixed the page.

run
Look at it in the browser

Desktop width and a phone width. If a word spills out of the column, the page is not done, even if the code looks fine in the editor.

push
Commit only what works

GitHub is the place I keep the version I am willing to show. A half-broken experiment stays local until it can be explained on a project page.

// 04 · interests

What I like working on.

I like clean interfaces, readable code, and pages that do a real job: a business site, a dashboard, a form, a tool people open every day.

Clean interface, for me, means the next action is obvious. A navbar that says where you are. A card that says what the project is. A footer that does not hide the links. I like the coder look — mono indexes, a terminal, dark glass — when it still reads like a document. Decoration that pushes the sentence down the page is not a design I want to keep.

A planner that stores tasks, a dashboard a business can open every day, a contact form that keeps the message: those are useful pages. If it helps the work get done, it belongs on this site.

// 05 · goals

What I am aiming at next.

I want to keep shipping useful websites and take on projects I can build carefully. If you need a site or a web tool, I can do it.

The next builds are concrete. PHP that is easy to follow. Forms that stay safe: prepared statements, a token, and a limit on how often a message can be sent. Pages a business can actually use, on a desktop and on a phone.

That is the work. I am a web developer, and a new project can start from the contact page.

// 06 · limits

Lines I will not cross on this portfolio.

  • The job is web development: sites, tools, and business projects.
  • No certificate I cannot open and verify.
  • No sample blog post presented as a finished tutorial. If it is practice, the card says Sample.
  • No live-demo button for a repository that is not actually published. Student Planner is the example: code on GitHub, no Pages site yet.
  • Project inquiries belong on the contact page. I can take business work.

The certifications page stays empty until a document is real. The About page is long because the work, the stack, and the way a project starts all need room.

// 07 · faq

Questions people ask about me.

Who is Mahir Faysal?

Mahir Faysal is a student web developer in Bangladesh. He builds websites and web apps with HTML, CSS, JavaScript, PHP, Next.js and TypeScript, publishes the code on GitHub as mfaysal-dev, and takes on business projects.

Does Mahir Faysal take freelance web projects?

Yes. Mahir Faysal is open for work and takes websites, landing pages, dashboards, and small web apps, including work that needs a form, a database, or a layout that works on a phone. A project can start from the contact page on mfaysal.com.

What tech stack does Mahir Faysal use?

For websites he uses HTML, CSS, JavaScript, PHP, and MySQL. For web apps he uses Next.js, React, TypeScript, and Tailwind CSS, with libraries such as Zustand, Recharts, and Zod, and the Gemini API for AI features.

What projects has Mahir Faysal built?

His published projects include Quizwright, a Gemini AI quiz generator; StudyPilot, an offline study planner; Hisab, a personal finance tracker; Ritual, a habit tracker; Freelane, a freelancer CRM; and Kinetica, a browser design and animation editor. The code for each one is on GitHub.

How can I contact Mahir Faysal?

Use the contact form on mfaysal.com. Say who you are and what you need built, such as a business site, a tool, a fix, or a full site. Every message is saved and read.

// 08 · next

Where to go from here.

Skills explains the labels on every language. Projects lists the web apps I have built and published, each with a live demo or source link. The blog is notes, with a warning on anything that is only there to test the layout. If a sentence on this page is wrong, the contact form is the place to say so.