Introducing AfsaneDB (Beta) – Now Available on Play Store!

Dive into the world of classic literature with AfsaneDB. Explore timeless masterpieces in an elegant and user-friendly app, designed for book lovers like you.

Thursday, 20 August 2026

The Art of the Justified Verse (Announcing shakeeb-justify v2.0.0!)

If you’ve ever tried reading Urdu poetry on a standard web page, you’ve probably felt a slight twitch in your eye.

Traditional Urdu typography—especially when draped in the elegant, cursive curves of the Nastaliq script—isn't meant to just sit left-aligned like a random grocery list. It’s an art form. Historically, divans and lit-magazines have printed Urdu poetry with strict, gorgeous visual structures. Both edges of a line are perfectly aligned (fully justified), couplets (sher) stay tightly bound, and stanzas leave just the right amount of breathing room.

But standard web layout tools like CSS text-align: justify? They look at Urdu script, panic, and completely break the aesthetic.

Frustrated by this, I embarked on a journey that started as a small, hacky code snippet years ago and has officially evolved into a fully grown, zero-dependency NPM package.

Today, I’m thrilled to announce the release of shakeeb-justify v2.0.0!

Here is the story of how it was built, why it exists, and how you can use it to give your web-based poetry the royal treatment it deserves.

The Origin Story: Nostalgia and the 2021 Hack

Back in 2021, I just wanted a way to display standard ghazals online without losing their visual soul. Urdu poetry has distinct structural rules:

  1. Lines must be justified (both left and right edges aligned perfectly).

  2. Couplets need to stick together.

  3. It needs to handle Right-to-Left (RTL) rendering safely without causing layout explosions.

My initial solution was a simple script. It worked by wrapping lines into divs, calculating widths, and letting the browser do its best. It was local, keeping it alive for nostalgia's sake in the GitHub commit history, but it had limitations. It only handled basic single and double columns. If someone wanted to render complex classical poetic structures, they were out of luck.

Fast forward to recently: I decided it was time to stop gatekeeping this functionality in an old repository. I ripped the layout engine apart, rewrote it for performance, namespaced the CSS to prevent annoying style conflicts (.shakeeb-justify), and packaged it neatly onto NPM.

Step-by-Step: The Anatomy of a Poetry Layout Engine

Building version 2.0.0 required turning abstract poetic rules into strict, programmatic logic. Under the hood, the library parses plain text, HTML paragraphs (<p>), or line breaks (<br>), sanitizes them, and builds a rock-solid grid system using semantic tables (which provide the cleanest, most backward-compatible rendering for justified RTL texts).

We didn't stop at standard couplets. Version 2.0.0 introduces native semantic support for classical poetic forms:

  • Ghazal / Qat'a: Classic double or single-column structures.

  • Mukhammas (5-line stanzas): Supports standard spacing, custom "3+2" groupings, or a "mixed layout" that places 4 lines in two columns and isolates the final line at the bottom for dramatic emphasis.

  • Musaddas (6-line stanzas): Perfect for Marsiya layouts, letting you group all 6 lines together or run a "4+2 mixed layout" (4 lines in two columns, followed by a closing single-column couplet).

To prevent weird hover artifacts, gaps between stanzas are calculated using empty spacer rows instead of messy padding blocks. And to prevent regressions, I even threw in a Jest unit-testing suite to make sure future changes don't accidentally wreck your carefully aligned layout.

Quick Start: How to Use It

I wanted shakeeb-justify to be ridiculously easy to implement—whether you are a hardcore JavaScript developer or someone just setting up a simple blog.

1. Installation

If you're using modern build tools, grab it via NPM:

Bash
npm install shakeeb-justify

And import it into your script:

JavaScript
import { ShakeebJustify } from 'shakeeb-justify';
// Run it!
ShakeebJustify.apply();

If you prefer a simpler approach, just drop the CDN link directly into your HTML file:

HTML
<script src="https://cdn.jsdelivr.net/npm/shakeeb-justify@2.0.0/dist/shakeeb-justify.min.js"></script>

(The library automatically triggers on DOMContentLoaded, so you don't even have to call it manually! For dynamic/AJAX content, just trigger ShakeebJustify.apply() manually.)

2. Writing the Markup

The library looks for specific class names and formats whatever text is inside them. You don't need to format your raw text with complex tags—just paste it as-is.

Standard Ghazal (Single Column, automatic gap every 2 lines):

HTML
<div class="sher">
خوگر قربت و دیدار پہ کیسی گزرے
کیا خبر اس کے دل زار پہ کیسی گزرے
ہجر میں اس ترے بیمار پہ کیسی گزرے
دور کیا جانیے بد کار پہ کیسی گزرے
</div>

Two Columns (Side-by-Side Misras):

HTML
<div class="sher2">
ہر ایک بات پہ کہتے ہو تم کہ تو کیا ہے
تمہیں کہو کہ یہ اندازِ گفتگو کیا ہے
</div>

3. Getting Fancy with Stanzas and Custom Patterns

Want a Musaddas with a mixed layout (4 lines side-by-side, 2 lines below)? Easy:

HTML
<div class="musaddas-mixed">
</div>

What if you have a wild, non-traditional form? Say hello to the data-pattern attribute. You can declare exactly when the layout engine should insert a visual break using a simple + separator:

HTML
<div class="sher" data-pattern="3+2">
...
</div>

Features You (And Your Readers) Will Love

  • Zero Dependencies: Clocking in as an incredibly lightweight library, it won't bloat your website's load times.

  • Copy-Friendly Outputs: Have you ever tried copying poetry from a web table and ended up pasting a scrambled mess? I fixed that. shakeeb-justify injects hidden newlines into the DOM, ensuring that when your readers highlight and copy a poem, it preserves its perfect line-breaks when pasted into WhatsApp, Twitter, or Notepad.

  • Optional Copy Buttons: Want to make sharing even easier? Just pass the data-copy attribute to automatically generate seamless clipboard copy buttons for your readers.

  • WordPress/Gutenberg Compatible: It integrates naturally into standard web layouts and custom CMS setups.

What's Next?

Getting version 2.0.0 live on NPM and polishing up the GitHub repository feels like a massive milestone for a project that began out of sheer frustration with standard web formatting.

Check out the live documentation and demo page to see the layouts in action. If you love poetry, typography, or just clean code, feel free to dive into the GitHub Repo, star it, open an issue, or contribute!

Let's make the Urdu web look as beautiful as the literature written for it. 

Tuesday, 18 August 2026

Cloud Hosting Explained for Frontend Developers: GCP, AWS, VPS, Buckets, Cloud Run and More

There is a particular moment every frontend developer eventually encounters.

You have built the application. It works beautifully on localhost:4200. Your React, Angular, or Vue frontend is polished. Your Node.js API works. The database works. Everything works.

Then someone asks:

“Can you show me the live application?”

And suddenly, you are reaching for your laptop.

This post is for exactly that situation.

I remember this from my college days. Our final-year exams were approaching, and just before the exams, the university conducted the viva and project presentations. Technically, the presentations happened at our colleges, but the examiners were sent by the university.

I was leading a group of five, and there were several groups presenting their final-year projects.

And believe me, every single project was demonstrated on the developer's own laptop, running locally.

localhost.

The examiner would sit there, the developer would open the laptop, start the frontend, start the backend, make sure the database was running, and then say, “Sir, this is our project.”

It always struck me as a little strange.

We had spent months building these applications, but when it was finally time to show them, they were still trapped inside our laptops.

And I think this is a real gap that many developers don't even realise they have.

Not because deploying an application necessarily requires some complicated cloud architecture. It doesn't.

You don't need to become a DevOps engineer just to put your project on the internet.

You simply need to take that extra step and ask:

“What happens if this thing I've built actually goes live?”

Because the moment your application moves from localhost to a real URL, something changes.

It stops being “some code I built on my computer.”

It becomes something people can actually open, use, share, test, break, recommend, and remember.

It starts looking less like a college project and more like a product.

And that shift is much more important than most developers realise.

Maybe you already know Firebase Hosting. Maybe you have deployed something to Vercel. Maybe you have used Hostinger and know your way around a VPS. But the moment someone says GCP, AWS, Compute Engine, EC2, Cloud Storage, S3, Cloud Run, containers, IAM and networking, it starts sounding less like web development and more like a job for someone who has memorised the entire cloud console.

It is not.

The trick is to stop thinking about cloud providers as hundreds of unrelated services.

There is a much simpler mental model.

Once you understand that model, AWS and GCP stop looking like completely different worlds.


First: what does “cloud hosting” actually mean?

At the simplest level, your application needs somewhere to live.

There are two very different questions hidden inside that sentence:

What exactly am I putting online?

and

Who is responsible for keeping the computer running?

Those two questions explain most of the cloud-hosting landscape.

Suppose you have a frontend application.

After running:

npm run build

you might end up with something like:

dist/
├── index.html
├── styles.css
├── main.js
├── assets/
└── ...

Those are just files.

A browser can download them and run the JavaScript.

But a Node.js backend is different.

A Node.js server actually needs a runtime. Something has to start Node, keep it alive, accept requests and deal with crashes, scaling and networking.

That distinction is the foundation of everything that follows.


The easiest mental model: three ways to host

For a frontend developer, think about hosting as three broad approaches.

ApproachWhat you getWhat you manageExamples
Managed static hostingA place to serve built HTML/CSS/JSAlmost nothingFirebase Hosting, Vercel
Virtual machineA blank Linux computerAlmost everythingGCP Compute Engine, AWS EC2, Hostinger VPS
Managed application/container platformA place to run your application without managing the server yourselfYour application/containerGoogle Cloud Run and similar services

This is where things become much easier.

A Hostinger VPS, a GCP Compute Engine VM, and an AWS EC2 instance are conceptually very close.

A Firebase Hosting site, an S3 static website, and a static frontend deployed through another managed hosting service solve a different problem.

And something like Cloud Run sits somewhere else again: you provide an application/container and the platform takes care of much of the infrastructure underneath it.


Wait... isn't a VPS already “cloud”?

Yes.

And this is one of the reasons cloud terminology can be confusing.

When you rent a Hostinger VPS, you are essentially getting your own virtual Linux machine.

You can SSH into it.

You can install Node.js.

You can install Nginx.

You can run:

pm2 start server.js

You can configure domains.

You can configure SSL.

You can restart services.

You can inspect logs.

You can break everything at 2 AM and then discover that the problem was one line in an Nginx configuration file.

That last part is optional, but surprisingly educational.

Conceptually, GCP and AWS can give you the same kind of machine.

On GCP, you use Compute Engine.

On AWS, you use EC2.

So the mental map looks like this:

What you already knowGCPAWS
VPS / virtual Linux machineCompute EngineEC2
Object/file storageCloud StorageS3
Managed application/container hostingCloud RunAWS has several services in this category, such as ECS/Fargate
Managed frontend hostingFirebase HostingVarious AWS/frontend hosting options

The names change.

The underlying ideas do not.


So what is a “bucket”?

This is another word that makes cloud sound unnecessarily mysterious.

A bucket is essentially a storage container for files.

Think of it as a cloud storage area designed for applications rather than a folder sitting on your laptop.

For example, a bucket might contain:

images/
avatars/
videos/
backups/
reports/
documents/

GCP calls its object-storage service Google Cloud Storage.

AWS calls its object-storage service Amazon S3.

So:

GCP Cloud Storage bucket ≈ AWS S3 bucket

This does not mean they are literally the same product. It means they occupy the same conceptual place in the architecture.

And this distinction matters:

A bucket is fundamentally a storage system.

It is not a Linux server.

You do not SSH into an S3 bucket.

You do not open a terminal inside a Cloud Storage bucket and run:

node server.js

It has no job running there waiting for your Node.js application.

That is the key difference.


Then why do people talk about putting websites in buckets?

Because a frontend built with React, Angular, Vue or plain HTML/CSS/JS can be nothing more than a collection of static files.

For example:

index.html
main.js
styles.css
logo.png

The browser downloads those files.

No Node.js process is required to render the page.

So the deployment can look conceptually like this:

Your laptop
    |
    | npm run build
    v
Compiled frontend files
    |
    v
Cloud storage / static hosting
    |
    v
Browser

That is fundamentally different from:

Browser
   |
   v
Nginx
   |
   v
Node.js
   |
   v
Database / APIs

The first is primarily serving files.

The second is running an application.


Firebase Hosting suddenly makes more sense

If you have used Firebase Hosting, you have already experienced the easier side of this architecture.

You might run:

firebase init

configure your hosting directory and then:

firebase deploy

And... that's it.

No Ubuntu installation.

No PM2.

No Nginx configuration.

No manually maintaining a web server.

That is why Firebase Hosting feels so dramatically easier than a VPS.

The infrastructure still exists somewhere underneath.

You simply aren't being asked to operate most of it yourself.

And this is an important distinction:

Firebase Hosting is not the same thing as manually creating a Google Cloud Storage bucket and treating that bucket as your website server.

Firebase provides a managed hosting experience.

That is exactly why it is so attractive to frontend developers.


Now imagine doing the VPS approach on GCP

Suppose you want the exact environment you had on Hostinger.

You could create a GCP project and then provision a Compute Engine VM.

The VM is your server.

You connect to it through SSH.

Inside that machine, you can do familiar things:

sudo apt update
sudo apt install nginx

Install Node.js.

Clone your application:

git clone <your-repository>

Install dependencies:

npm install

Run your Node application:

pm2 start server.js

And configure Nginx to proxy requests to something like:

localhost:3000

At this point, you are essentially using GCP as a VPS provider.

There is nothing wrong with that.

In fact, it is a very useful way to understand the relationship between traditional hosting and cloud infrastructure.

The important question is:

Why use a giant cloud platform if you are going to operate it exactly like a VPS?

That is where the next level begins.


The cloud-native approach: stop managing the machine

Imagine your Node.js application is packaged as a container.

Conceptually, your container says:

“This is my application. Here is the runtime it needs. Here is how it starts.”

For example, a simplified Dockerfile might look like:

FROM node:20

WORKDIR /app

COPY package*.json ./
RUN npm install

COPY . .

EXPOSE 8080

CMD ["node", "server.js"]

Now you can give that application to a managed service such as Google Cloud Run.

Instead of saying:

“Here is a Linux machine. Please let me configure it.”

you are effectively saying:

“Here is my application. Please run it.”

That is a major conceptual shift.

With a traditional VM, you manage the server.

With a managed container platform, you focus much more on the application.


What happens when you deploy to Cloud Run?

A command such as:

gcloud run deploy --source .

can trigger a managed deployment workflow.

Conceptually, the platform takes your source, builds the application into a deployable container, stores the resulting image in cloud infrastructure, and deploys it as a Cloud Run service.

You do not normally need to configure an Nginx reverse proxy yourself.

You do not need to install PM2 manually.

You do not need to maintain an Ubuntu machine yourself.

The platform manages much more of the underlying infrastructure.

This is much closer, conceptually, to the experience frontend developers are used to from services such as Firebase Hosting and Vercel.

The difference is that Cloud Run is designed specifically to run applications and services, not merely serve static frontend files.


Now the really important question: where does my Node.js + frontend application go?

Suppose you have:

Frontend
  |
  | Angular / React / Vue
  |
  v
Compiled HTML/CSS/JS

and:

Backend
  |
  | Node.js / Express
  |
  v
API

They do not have to be hosted in the same place.

In fact, separating them is extremely common.

One possible architecture is:

                  USERS
                    |
                    v
             Frontend Hosting
          HTML / CSS / JavaScript
                    |
                    v
              Node.js API
                    |
                    v
                Database

Your compiled frontend could live on Firebase Hosting or another static hosting platform.

Your Node.js backend could run on Cloud Run.

Your images and other large files could live in Cloud Storage.

Your database could be a completely separate managed database service.

Suddenly “the cloud” is not one giant magical place.

It is simply several specialized services connected together.


GCP vs AWS: the names change, the architecture doesn't

The same mental model works remarkably well when switching providers.

What you needGCPAWSSimple explanation
Virtual machineCompute EngineEC2A Linux computer you manage
Object storageCloud StorageS3Store files and objects
Managed containersCloud RunECS/Fargate and related servicesRun applications without managing a traditional server
Static frontend hostingFirebase Hosting / other optionsS3 + CloudFront or other frontend servicesServe built frontend assets

Now imagine an examiner or interviewer asks:

“How would you deploy a Node.js application on AWS?”

You do not need to panic and memorise 47 AWS services.

Ask yourself one question:

Do I want to manage a machine?

If yes, you're looking at something like EC2.

If you want a more managed application platform, you start looking at services such as ECS/Fargate and related managed compute options.

The underlying architectural decision remains the same.


S3 is not “AWS's version of a VPS”

This misconception causes a lot of confusion.

S3 is primarily object storage.

EC2 is compute.

Those words are worth remembering:

Storage is where files live.

Compute is where programs run.

That distinction alone will take you surprisingly far in cloud understanding.

For example:

S3
 └── index.html
 └── main.js
 └── styles.css
 └── images/

EC2
 └── Linux
 └── Node.js
 └── Nginx
 └── PM2
 └── Your application

One is primarily a place for objects.

The other is a computer running software.


So what should you actually use?

Here is the practical decision table.

Your situationSensible starting point
Pure HTML/CSS/JS websiteStatic hosting
Compiled React/Angular/Vue frontendFirebase Hosting, Vercel or another static hosting platform
Frontend + simple Node.js APIStatic frontend + managed backend such as Cloud Run
Need complete control over LinuxGCP Compute Engine / AWS EC2 / VPS
Need to store images, videos, backups or filesCloud Storage / S3
College project that needs a live URLManaged hosting is usually the easiest route
Production backend where you don't want to maintain Linux manuallyManaged application/container platform
Need unusual OS-level configurationVM/VPS

The best cloud service is not the one with the most impressive-sounding name.

It is the one that gives you exactly the amount of control you actually need.


And this matters enormously for students

There is another reason to learn this.

A surprisingly large number of student projects technically work but are never actually demonstrated as products.

The examiner sees:

npm start
localhost:4200

And suddenly the impressive AI recommendation engine, database integration, authentication system and beautiful UI are trapped inside one laptop.

That is a missed opportunity.

A live deployment changes the conversation.

Instead of saying:

“Sir, this is my project. It works on my laptop.”

you can say:

“Here is the production URL.”

That tiny difference changes the perception of the project.

The same applies when applying for jobs.

A resume saying:

“Built an e-commerce application using Angular, Node.js and MongoDB.”

is one thing.

A recruiter being able to click:

Live Demo

is something else entirely.

You have moved from describing a project to showing evidence that it exists.

That is one of the simplest ways to make a project feel more real.


The simplest cloud map to remember

Forget the giant cloud diagrams for a moment.

Remember this:

                     CLOUD
                       |
        +--------------+--------------+
        |              |              |
        v              v              v
     STORAGE         COMPUTE       MANAGED APP
        |              |              |
        v              v              v
    GCS / S3       GCE / EC2      Cloud Run /
                                  ECS/Fargate

Then ask:

Do I need to store files?

Think bucket/storage.

Do I need a computer I control?

Think VM/EC2/Compute Engine/VPS.

Do I need to run an application without managing the whole machine?

Think managed application/container service.

And for a normal compiled frontend?

Think static hosting.

That is the map.

The cloud console looks complicated because it exposes a huge universe of possibilities.

You do not have to use the whole universe.

You just need to identify which problem you actually have.


As a note, keep this with you: 

“For a static frontend, I wouldn't provision a VM just to serve compiled HTML, CSS and JavaScript. I'd use managed static hosting. For the Node.js API, if I don't need OS-level control, I'd prefer a managed container platform such as Cloud Run. If I actually need full Linux-level control, then I'd provision a Compute Engine VM. For application assets and uploaded files, I'd use object storage such as Cloud Storage.”

Now you're someone who understands why the services exist.

And that is the real goal.

You do not need to become a cloud engineer overnight.

You just need to stop thinking of AWS and GCP as giant confusing websites and start seeing them as collections of familiar building blocks:

files, computers, applications, networks and managed services.

Once you see those building blocks, the names become much easier.

Now comes the interesting part: when you have a real Node.js + frontend project sitting on your laptop, how would you personally choose between a VPS, Compute Engine, S3/Cloud Storage, Firebase Hosting, Cloud Run or something like Vercel?

What would you deploy first — and why?

Shakeeb
Rab raakha 👋


slug: cloud-hosting-explained-frontend-developers-gcp-aws-vps-cloud-run
og title: Cloud Hosting Explained for Frontend Developers – GCP, AWS, VPS, Buckets & Cloud Run
og description: Confused by GCP, AWS, VPS, S3, Cloud Storage, buckets and Cloud Run? This beginner-friendly guide explains cloud hosting for frontend developers, including how to deploy built HTML/CSS/JS frontends and Node.js backends without getting lost in cloud complexity.
keywords: cloud hosting, cloud hosting for beginners, cloud hosting for frontend developers, cloud computing for frontend developers, GCP for beginners, Google Cloud Platform, AWS for beginners, Amazon AWS, GCP vs AWS, VPS vs cloud hosting, Hostinger VPS, GCP Compute Engine, AWS EC2, Google Cloud Run, AWS S3, Google Cloud Storage, cloud storage bucket, what is a cloud bucket, S3 bucket, GCP bucket, Cloud Run Node.js, Node.js cloud hosting, Node.js deployment, deploy Node.js app, deploy frontend app, frontend deployment, static website hosting, static hosting, Firebase Hosting, Firebase vs GCP, Vercel vs cloud hosting, React deployment, Angular deployment, Vue deployment, HTML CSS JavaScript hosting, host compiled frontend, frontend and backend hosting, full stack cloud hosting, cloud hosting explained, cloud computing explained, AWS EC2 vs S3, GCP Compute Engine vs Cloud Run, VPS vs EC2, VPS vs Compute Engine, S3 vs Cloud Storage, serverless hosting, managed hosting, cloud deployment for students, student project deployment, deploy college project, live project for interview, localhost to production, deploy project online, cloud deployment for beginners, cloud architecture for beginners

Wednesday, 12 August 2026

Qaafiyah Expert 2.0 | Shayar Helper – Urdu & Hindi Poet & Writer Assistant

QAafiyah Expert · Version 2.0

Qaafiyah Expert 2.0

قافیہ ایکسپرٹ 2.0
The complete poetry companion for Urdu, Hindi, Persian and Hindustani poetry.
Write. Search. Scan. Refine. Design. Share.

Version 2.0 — 20 Second Trailer

A quick look at what's new.

Qaafiyah Expert 2.0 is here. What started as a focused qafiya and poetry utility has grown into a complete digital workspace for poets, writers, students, researchers and lovers of Urdu and Hindustani poetry.

This is a complete Shayar Helper for Urdu, Hindi, Persian and Hindustani poetry — whether you write in the Perso-Arabic Urdu script, Devanagari, or Roman English. Find rhymes (qaafiyah), check taqti(scansion) and prosody(aruuz), explore dictionaries, design a digital diary (bayaz), get corrections (islaah) from Ustaad, and work on your poetry with professional tools in one app.

Iterating it again (many of you demanded this and here it is), you do not have to read the Perso-Arabic script to use it. Qaafiyah Expert supports English, Urdu and Hindi UI, along with multiple poetry word lists including Roman English and Devanagari.

معاونِ سخنوراں

A poetry toolkit for the way people actually write, search, learn and share poetry today.
شاعری کے سفر کا ایک مکمل ڈیجیٹل ساتھی

2.0 at a Glance

A surprisingly large poetry toolkit inside one app.

3 UI Languages
3 + 1 Themes + Dark Mode
5 Poetry Word Lists
+ Custom lists
3 Search Methods
9+ Dictionaries
3 Taqti Engines
7+ Sher Design Formats
50+ Available Fonts
A

Poetry for Readers of Urdu, Hindi & Hindustani

اردو، ہندی اور ہندوستانی شاعری

You don't need to read the Perso-Arabic script to benefit from Qaafiyah Expert.

Built for a multilingual poetry audience

Qaafiyah Expert 2.0 has three UI languages: English, Urdu and Hindi. This makes the app useful not only for traditional Urdu readers, but also for people who know Hindustani through Hindi or Roman script.

The rhyme search includes five major word-list options: Urdu, Farsi, Roman English, Devanagari and a pure Hindi Hunspell list.

The Devanagari list is particularly useful for people who understand Urdu vocabulary but prefer to read and write in Devanagari.

English UI Explore the complete toolkit without needing to navigate an Urdu interface.
Hindi / Devanagari A practical entry point for Hindi-speaking Hindustani poetry lovers.
Urdu UI A native experience for Urdu readers and poets.
زبان کوئی رکاوٹ نہیں — شاعری سب کے لیے ہے۔
Q

Qafiya Search: More Than a Rhyme Finder

قافیہ تلاش — صرف قافیہ ہی نہیں

Search thousands of words across multiple scripts and languages, then narrow the results exactly the way you need.

Qaafiyah Expert gives you three powerful ways to search:

Qafiya / Rhyme Search Custom Regex Presets

The Presets system includes 10 ready-made search patterns for quickly finding the words you need, while advanced controls let you narrow your results further.

Wazn Filtering Search by Weight Contains Letters Custom Word Lists Diacritic Tools Meter / Foot Filters Long-press Dictionary

Whether you're looking for a traditional qafiya, experimenting with a regex pattern, or using one of the ten ready-made presets, the search system is designed for both beginners and power users.

5

Five Poetry Word Lists

Search across scripts and vocabulary sources instead of being locked into a single writing system.

Urdu

The core Urdu poetry vocabulary for traditional Urdu-script writing.

Farsi

Persian vocabulary for poets working with Persian words and influences in Urdu poetry.

Roman English

Search and work with Roman-script vocabulary without requiring an Urdu keyboard.

Devanagari

A Devanagari representation of the Urdu word list, useful for Hindi-reading Hindustani speakers.

Pure Hindi

A dedicated Hindi vocabulary list based on Hunspell, separate from the Urdu-derived Devanagari list.

Custom Lists

Add your own remote word lists and build specialized vocabularies for your poetry projects.

T

Taqti & Aruz: Three Engines in One App

تقطیع و عروض

Analyze your poetry with three complementary approaches to Urdu poetry scansion.

01

Offline Taqti

A local beta engine with detailed scansion, meter tables, behr information, meter chips and a flow score.

02

aruuz.com

The existing online Aruz analysis engine remains available as part of the workflow.

03

Rekhta Scansion

Live scansion with example ghazals and verses in the corresponding meter.

D

Nine Dictionaries — Plus Your Own

لغت

A poet needs more than a rhyme. Sometimes the exact word, meaning, synonym or expression is what makes the verse work.

Qaafiyah Expert brings together nine dictionary resources, including offline HyperDict, online meanings, poetic dictionaries, thesaurus resources and other lookup tools.

You can also add a custom dictionary when your particular vocabulary or research project requires something beyond the built-in resources.

Offline HyperDict Online Meanings Poetic Dictionaries Synonyms Recent Words Custom Dictionary
B

Bayaz Design: Turn Poetry Into a Finished Page

بیاض ڈیزائن

Writing the poem is only half the story. Version 2.0 gives you a proper poetry design and publishing workflow.

Seven ready-made sher formats — plus custom patterns

Create professional poetry layouts using Shakeeb Justify, including sher, two-column poetry, musaddas, mukhammas and additional poetry-specific arrangements.

  • Classic sher layouts
  • Two-column poetry
  • Musaddas
  • Mukhammas
  • Multiple pre-designed sher patterns
  • Seven built-in design formats
  • Custom poetry patterns
3 Preloaded fonts
50+ Available fonts
Custom Bring your own font
P

From Screen to Shareable Poetry

Design your page, preview it, and export it in the format that suits your workflow.

Five Page Sizes

Choose between A4, A5, Auto, Letter or define a completely custom size in pixels.

Three Image Actions

Once your poetry page is ready, you can download, print or share it directly.

Print-ready Preview

Paginated previews, typography controls, gradients, backgrounds, watermarking and page breaks.

Image Controls

Insert images and control their size, alignment, border, radius, shadow, grayscale and opacity.

C

Backup Your Bayaz

اپنی تخلیقی محنت محفوظ رکھیے

Google Drive

Sync your poetry library to Google Drive and preserve versions of your work.

OneDrive

Keep your work synchronized through Microsoft's cloud storage.

Offline JSON

Download your poetry data as JSON and keep a local backup independent of cloud services.

Version History

Cloud synchronization is designed around preserving previous versions instead of treating your latest file as the only copy.

I

Islah Workshop: A Place Where Poets Help Poets

اصلاح ورکشاپ

Share your poetry and get thoughtful feedback from teachers and experienced poets.

Poetry is a craft — and craft improves with feedback.

The Islah Workshop allows you to submit poetry for public or private feedback, with meter validation built into the submission workflow.

Track your questions, see responses, and follow detailed comments on individual shers.

Public or private questions
Automatic meter validation
Teacher / poet feedback
Per-sher comments
Pending / answered tracking
Community poetry ecosystem
شاعر، شاعر کی ترقی میں مدد کرتے ہیں۔

Daily Challenge: Keep Writing

A daily poetry prompt turns practice into a habit.

Daily Sher Prompt

Get a word and meter as the starting point for your daily verse.

Community Voting

Read other poets' entries and vote for the work that speaks to you.

Streaks & Achievements

Keep showing up and build your poetry streak.

Leaderboard & Winners

See community rankings and featured winning entries.

UI

Make the App Yours

Qaafiyah Expert 2.0 is not just feature-rich — much of its interface can be arranged around your workflow.

Three UI Languages

English, Urdu and Hindi. Choose the interface that makes the app easiest for you to navigate.

Three Themes + Dark Mode

Three colour themes plus a dedicated dark mode let you choose your preferred visual environment.

Tab Sorting

Reorder the five main tabs to put your most-used poetry tools where you want them.

Shortcut Sorting

Organize your Android home-screen shortcuts around the actions you use most frequently.

Built to Keep Evolving

Qaafiyah Expert 2.0 uses remote configuration and hot-reloadable settings for many parts of the ecosystem. That means announcements, selected content, sponsors, search resources, presets and other configurable elements can evolve without waiting for a full app update every time.

In other words, version 2.0 isn't meant to be a static collection of tools. It is a foundation for a growing poetry platform.

Chef's Kiss — The Top 12

The features that make Qaafiyah Expert 2.0 especially interesting for serious poetry workflows.
  1. Deep multi-script qafiya search Wazn, regex, presets, search-by-weight and custom word lists across multiple scripts.
  2. Triple taqti stack Offline Taqti, aruuz.com and Rekhta scansion together in one app.
  3. Offline HyperDict A substantial Urdu dictionary workflow without depending entirely on an internet connection.
  4. Shakeeb Justify Poetry-specific layout blocks for creating professional sher and multi-column designs.
  5. 50+ fonts + custom fonts A large selection of Urdu typography with the ability to bring your own font.
  6. Print-ready paginated preview A4, A5, Letter, Auto and custom pixel dimensions with proper multi-page output.
  7. Islah Workshop Meter-aware poetry submissions with public or private feedback from teachers and poets.
  8. Daily Challenge Prompts, voting, streaks, leaderboard and featured poetry.
  9. Cloud backup + versions Google Drive and OneDrive synchronization alongside offline JSON backups.
  10. Offline-first architecture Rhyme lists, Aruz data and dictionary resources can be synchronized and used locally.
  11. Power-user customization Reorderable tabs, reorderable shortcuts, themes, languages and a phonetic Urdu keyboard.
  12. Creator-friendly monetization Points, rewarded ads and premium options designed around giving poets practical ways to access tools.

Urdu Poetry Doesn't Belong to One Script

شاعری کسی ایک رسم الخط کی پابند نہیں

There is a huge audience that loves Urdu poetry, shayari and Hindustani poetry but is more comfortable reading Hindi or Roman script than the Perso-Arabic Urdu script.

Qaafiyah Expert 2.0 is designed to make that audience feel included rather than excluded. With an English interface, Hindi interface, Devanagari word resources and Roman-script search, you can explore the vocabulary and mechanics behind Urdu poetry without first having to learn a new script.

That makes it useful whether you're searching for Urdu poetry in Hindi, exploring Urdu poetry in English, looking for Hindi poetry, writing Urdu shayari, or simply trying to find the right qafiya for your next sher.

urdu poetry in urdu poetry in urdu hindi poetry english poetry urdu poetry in hindi urdu poetry in english best poetry best urdu poetry urdu shayari shayari urdu urdu qafiya qafiya finder urdu rhyme finder urdu poetry app hindi shayari hindustani poetry

A Timely Tool for Poetry Season

With Independence Day poetry and patriotic poetry searches rising across India, Qaafiyah Expert can also be useful when you're looking for the right words, rhymes and meters for an Independence Day poem, 15 August poetry or Urdu poetry for Independence Day.

And if you're studying classic poetry, exploring Allama Iqbal poetry in Urdu, composing two-line Urdu poetry, or simply collecting vocabulary for your next ghazal, the same search and dictionary tools remain useful year-round.

independence day poetry independence day poetry urdu urdu poetry for independence day urdu poetry on independence day 15 august poetry in urdu poetry on independence day in urdu poetry of Allama Iqbal in Urdu 1000 Urdu words for poetry 2 line Urdu poetry

Write More. Search Better. Create Beautifully.

لکھیے، تلاش کیجیے، سنواریے، سجائیے۔

Qaafiyah Expert 2.0 brings the tools of the Urdu poet, researcher and poetry enthusiast together in one place — whether you read Urdu, Hindi, Devanagari or Roman script.

If you write shayari, study poetry, search for qafiyas, practice aruz, design poetry pages or simply love the Hindustani poetic tradition, this release is for you.

Get Qaafiyah Expert 2.0