AllergyTJ - Pollen and Air Quality Tracker for Tajikistan
Eraj Ismatulloev · April 10, 2026
AllergyTJ is a trilingual pollen and air quality monitoring tool for Tajikistan. It covers 30 cities across all five administrative regions, estimating daily pollen risk from seasonal botanical data and live weather conditions.
As of 2026, no public pollen monitoring stations have been identified in Tajikistan. AllergyTJ fills that gap with a computational model that combines monthly intensity data for nine allergenic species with real-time weather adjustments.
Monitor
The dashboard tracks two environmental risks in real time.
Pollen risk is scored 0 to 4 (None through Very High) based on three inputs:
- Seasonal pollen calendar. Monthly intensity data for nine allergenic groups: tree pollen (poplar, willow, birch/alder, plane tree, mulberry), grass pollen, and weed pollen (mugwort, chenopod, ragweed). Compiled from publicly available botanical data on Central Asian flora.
- Live weather. Temperature, humidity, wind speed, and precipitation from Open-Meteo adjust the seasonal baseline. Hot, dry, windy conditions push risk up. Rain brings it down.
- Regional multipliers. Five vegetation zones (Dushanbe/DRS, Khatlon, Sughd, GBAO/Pamir, mountain valleys) with elevation-adjusted bloom timing using Hopkins' Bioclimatic Law (shifting dates by two days per 100m of altitude).
Air quality tracks six pollutants (O₃, PM2.5, PM10, NO₂, SO₂, CO) from the EU Copernicus CAMS satellite model. Composite US AQI score with per-pollutant breakdowns, WHO guideline comparison badges, and dust awareness alerts when PM10 is the dominant pollutant. Safety banners appear at unhealthy (150+), very unhealthy (200+), and hazardous (300+) thresholds.
UV index, temperature, humidity, and wind conditions are shown alongside both readings.
Forecast
5-day pollen forecast with hourly risk breakdowns for morning (6-12), afternoon (12-18), and evening (18-24). A risk trend visualization shows trajectory over the forecast period: bar chart on desktop, SVG spline on mobile.
4-day air quality forecast (the limit of CAMS satellite data).
Seasonal timeline calendar displays all nine allergen groups across 12 months with a pulsing marker on the current date.
Personalize
Personal allergen profiles let users select specific species they react to. Stored locally, no account required. The dashboard shows a dual-risk gauge: personal risk based on selected allergens alongside the general population risk.
Configurable browser notifications for pollen risk (high and very high thresholds), UV warnings, and air quality alerts. Users can filter by allergen category (trees, grass, weeds) and set quiet hours. All client-side, no backend.
Shareable daily snapshots generate a 1080x1080 PNG card with gradient header, city and date, risk score, allergen breakdown, and AQI/weather/UV data. One-tap sharing via Web Share API to Telegram, WhatsApp, and other apps. Download and clipboard fallback on desktop.
Knowledge
Twelve knowledge cards organized in paired rows:
- What is AllergyTJ and how weather affects pollen
- Elevation adjustment and regional profiles
- Time of day risk patterns and cross-reactivity guide (Oral Allergy Syndrome for birch, mugwort, grass, ragweed)
- Air pollutants guide with health effects and WHO guidelines for all six pollutants
- US AQI scale and UV index interpretation
- Data sources and model limitations
- How CAMS air quality data works
Thirteen FAQ entries with JSON-LD schema for search engines and generative AI.
An allergen intensity table shows month-by-month risk on a 0-4 scale for each species.
Architecture
AllergyTJ is a static site with zero JavaScript dependencies.
- Frontend: Vanilla HTML/CSS/JS (2,681 lines HTML, 3,487 lines JS). Pre-generated per language by a Python build script
- APIs: Open-Meteo for weather and pollen modeling, Open-Meteo CAMS for air quality, wttr.in as fallback, seasonal-only estimates as a third tier
- Hosting: Vercel free tier with one serverless function for dynamic OG images
- PWA: Service worker with hybrid caching (network-first for HTML, stale-while-revalidate for translations, cache-first for icons). Installable on iOS and Android. Offline support falls back to seasonal-only mode
- Cron: Automated daily Telegram posts at 07:00 Dushanbe time via Vercel Cron
- SEO: 102 URLs in sitemap (3 home pages, 9 tab routes, 90 city-level pages). IndexNow for Bing/Yandex. JSON-LD schemas (WebApplication, FAQPage, BreadcrumbList). Localized OG images per language. Geo meta tags per city
- Security: CSP A+ on Mozilla Observatory. HSTS with 2-year preload. No unsafe-inline scripts. Default-deny CSP
Mobile data in Tajikistan is expensive and connections outside major cities can be unreliable. A lightweight static page loads faster and works more reliably than a framework-heavy application. Pingdom scores the site 99/100 at 62ms load time.
Distribution
- Web: allergy.tj with path-based language routing. Tajik at root, English at /en/, Russian at /ru/
- Telegram: @allergytj channel with automated daily trilingual posts covering pollen, AQI, weather, UV, humidity, and wind for Dushanbe
- PWA: Installable on mobile and desktop with Add to Home Screen prompts
- Search: 90 city-level pages with localized content, geo meta tags, and hreflang alternates
Three languages are fully supported with approximately 400 translation keys per language. GPS auto-detection finds the nearest city. Dark mode follows system preferences. WCAG AA accessible with 12:1+ color contrast on risk indicators.
Try it
AllergyTJ is live at allergy.tj.
Have a project in mind?
Every engagement starts with a free discovery call. No obligation.
Get in touch →