-
Notifications
You must be signed in to change notification settings - Fork 0
SEO and Performance
App\Support\Seo resolves, per route, a title (40–60 chars) and description (≈150–160 chars) — hand-written for static pages, composed from whole sentences for markets, stalls and products. They are rendered server-side in app.blade.php and swapped client-side by <Seo /> using matching head-keys.
Every page carries: description, robots (noindex, nofollow on private areas), canonical URL, Open Graph (type, site_name, locale, title, description, url, image, image:secure_url, image:type, image:width/height 1200×1200 (1:1), image:alt) and Twitter card tags.
- Everywhere:
Organization(logo, contact point, address, founder, sameAs) andWebSitewith aSearchAction. - Every page: a
WebPagenode (AboutPage,ContactPage,CollectionPagefor listings) withdateModifiedon policy pages, and aBreadcrumbListmatching the visible breadcrumbs. -
ProductwithOffer(PKR price, availability,OnSitePickup) andAggregateRating. -
PlacewithOpeningHoursSpecificationand geo for markets;LocalBusinessfor stalls;FAQPagefor the FAQ.
-
/sitemap.xml— live, cached for an hour, with image entries for products and stalls. -
/robots.txt— public pages open; account areas, JSON endpoints and faceted duplicates closed; explicit rules for AI crawlers. -
/llms.txtand/llms-full.txt— AI-readable summaries generated from live data (php artisan gleangrid:llms). - Mixed-case URLs and common aliases 301 to the canonical path.
- Code-split pages; lazy maps (Leaflet), charts (Recharts), assistant and non-English dictionaries.
- Hover/touch prefetch of internal links, so navigation renders from cache.
- WebP everywhere (produce art 2.1 MB → 301 KB), fingerprinted immutable assets, fonts that never block first paint.
- Service worker caches assets and media (never HTML) and serves an offline page.
- OPcache on the server; database indexes matching dashboard queries; reporting views.
Semantic landmarks, skip link, visible focus rings in both themes, ARIA on custom widgets (combobox search, listbox dropdowns, dialogs), full keyboard support, WCAG AA contrast tokens, and prefers-reduced-motion respected by every animation (smooth scroll, cursor, flights, theme reveal, back-to-top).
GleanGrid · MIT licence · Live site · Report a security issue · Built in Hyderabad, Sindh