Создать удобный информер, который можно встраивать на любые сайты с помощью одной строки JavaScript. Информер должен:
- Отображать численность населения мира и более 20 регионов (Азия, Африка, Европа, Северная Америка, Южная Америка и др.)
- Автоматически подгружать актуальные данные
- Иметь простую интеграцию через <script> тег
- Обновляться без перезагрузки страницы
- Использовать единую систему токенов (как и другие API WildTracks)
- Предоставлять демо-доступ для тестирования
Создал комплексное решение, состоящее из двух частей:
/src/
├── Controller/
│ └── Api/
│ └── DemographicsController.php # API для данных о населении
├── Service/
│ ├── Demographics/
│ │ ├── DemographicsService.php # Основной сервис
│ │ ├── DataProvider/
│ │ │ ├── DatabaseProvider.php # Данные из БД
│ │ │ ├── WorldBankProvider.php # Интеграция с World Bank API
│ │ │ └── UNDataProvider.php # Интеграция с ООН
│ │ └── ProjectionCalculator.php # Расчет прогнозов
│ └── Token/
│ └── TokenValidator.php # Проверка токенов
├── Entity/
│ ├── DemographicData.php # Сущность для хранения данных
│ └── Region.php # Регионы мира
└── Repository/
├── DemographicDataRepository.php
└── RegionRepository.php
/public/js/
└── demographics.js # JavaScript-виджет для встраивания
Примеры использования
- Новостные сайты (контекстная информация)
- Образовательные проекты (география, демография)
- Аналитические платформы
- Блоги и статьи о населении мира
Технические результаты
✅ Разработан JavaScript-виджет для легкой интеграции на любые сайты
✅ API на Symfony для получения демографических данных
✅ Поддержка 21 региона с детальной разбивкой
✅ Система токенов (единая с другими API WildTracks)
✅ Многоуровневая система получения данных (БД + World Bank API + ООН)
✅ Автоматическое форматирование чисел с разделителями
Для пользователей
✅ Простая интеграция — одна строка кода
✅ Динамическое обновление без перезагрузки страницы
✅ Актуальные данные о населении мира и регионов
✅ Бесплатный демо-доступ для тестирования