Arabic, RTL travel agency website for آر جيت للسياحة والأسفار, Nablus, Palestine. Built from the supplied Stitch direction, with reusable templates, local assets, and a static GitHub Pages deployment.
Website: https://rgate-travel.com/
Repository: https://github.com/mohammadmasri1/R_Gate
Install Node.js 22 or newer. No npm dependencies are needed.
npm run dev
Open http://localhost:4173/R_Gate/. Keep the terminal running. Edit content, styles, or templates and refresh the browser; the preview rebuilds on changes. Stop with Ctrl+C. Use npm.cmd instead of npm if PowerShell blocks npm’s script wrapper.
npm run check # Build and run the checks
npm run build # Generate deployable HTML in dist/
dist/ is generated and intentionally not committed. GitHub Actions builds it automatically. Do not edit generated files, and do not open source templates as HTML.
| File / folder | Purpose |
|---|---|
content/site.json |
Agency name, WhatsApp, phone, address, optional email/hours/social links, homepage copy, canonical URL |
content/travel.json |
Destinations, travel ideas, real offers, services, and FAQs |
assets/css/style.css |
Shared colors, typography, spacing, responsive layouts and motion |
assets/js/app.js |
Menu, filters, gallery, inquiry form and clipboard interactions |
assets/js/inquiry.js |
Inquiry text, WhatsApp URL encoding and Arabic search normalization |
assets/images/ |
Local logo and destination images; sources.json records their origin |
assets/fonts/ |
Self-hosted Arabic font and its OFL license |
src/templates.mjs |
Shared header/footer/cards and all page templates |
scripts/build.mjs |
Static HTML, sitemap and asset build |
scripts/serve.mjs |
Local preview server; never deployed |
tests/site.test.mjs |
Link, content, asset, inquiry and deployment-path checks |
.github/workflows/deploy-pages.yml |
Build, validation and automatic deployment |
docs/ |
Editing, publishing and design documentation |
design/stitch-archive/ |
Original supplied exports, renamed descriptively for reference |
Read the editing guide for examples. The working website has no runtime framework, database, private API keys, trackers, or booking engine. Destination content exists in HTML even when JavaScript is disabled.
In the repository, open Settings → Pages → Build and deployment → Source → GitHub Actions. The included workflow validates pull requests and publishes pushes to main. The hosted artifact contains only dist/, never source archives, scripts, tests, or local verification files.
See the publishing guide and GitHub’s workflow documentation.
The owner confirmed WhatsApp +970 593 408 840 and Yafa Street, beside the Chinese Center, Nablus. The original export contained conflicting Ofuq contact details and unsupported prices and accreditation claims; these are excluded from the working site.
Destinations are clearly presented as customizable travel ideas. No live offers are invented. Add real offers in content/travel.json when available. Privacy and terms pages are explicitly marked as drafts; legal entity details and booking policies need the agency’s approved wording. Confirm rights to supplied destination imagery before commercial use; original image source URLs are recorded.
This repository began with R_Gate — R gate website repo; its original Git history is retained.