Premium Hajj & Umrah journeys with curated packages, trusted guidance, and seamless planning.
A high-performance, responsive landing page that helps pilgrims discover and book their sacred journey with confidence.
Planning a Hajj or Umrah trip is a deeply personal and complex endeavor. Kaaba provides a clean, focused experience that lets pilgrims:
- Browse curated packages — from Comfort to Elite, with transparent pricing
- Compare travel options at a glance with feature-rich cards
- Book confidently with a trusted, well-designed interface
- Get inspired through a rich gallery and community stats
Whether you're a first-time pilgrim or a returning visitor, Kaaba cuts through the noise and gets you to what matters.
pnpm install
pnpm run build
pnpm run devOpen http://localhost:3000 to view the site.
| Layer | Technology |
|---|---|
| Framework | |
| Language | |
| Styling | |
| Animation | |
| Date Handling | |
| Icons | |
| Notifications |
| Package | Price | Highlights |
|---|---|---|
| Comfort | $900–$1,800/person | 3-star hotel, daily breakfast, guided tours |
| Premium | $1,200–$2,400/person | 4-star hotel, breakfast & dinner, transfers |
| Elite | $2,000–$4,000/person | Business class, 5-star hotel, all meals, private transfers |
Group discounts available: 40% off for 2+ persons on 4+ nights.
components/ UI sections (Hero, About, Packages, Gallery, etc.)
├── utils/ Reusable atoms (Button, Logo, DateRangePicker, etc.)
data/ Static content (packages, partners)
lib/ Design system tokens
public/ Static assets (images, gallery, posters)
src/app/ Next.js App Router (layout, page, globals)
- Node.js ≥ 18
- pnpm ≥ 9
git clone https://github.com/yusuf-mahran/kaaba.git
cd kaaba
pnpm installpnpm devpnpm build
pnpm startpnpm lintsrc/app/page.tsx— Main landing page compositionsrc/app/layout.tsx— Root layout, fonts & metadatasrc/app/globals.css— Global stylesdata/packages.ts— Travel package definitionsdata/partners.ts— Trusted partner logoslib/design-system.ts— Design tokens
Contributions, issues, and feature requests are welcome!
- Fork the repository
- Create your branch:
git checkout -b feat/your-feature - Commit your changes:
git commit -m "feat: add your feature" - Push to the branch:
git push origin feat/your-feature - Open a Pull Request
Please use specific git add <file> commands rather than git add . to keep commits clean.
If you discover a security vulnerability, please open a GitHub Issue or reach out privately. Do not disclose it publicly until it has been addressed.
This project is licensed under the MIT License.
- Open an Issue for bugs or feature requests
- Start a Discussion for questions and ideas

