Skip to content

Platform

Platform-wide statistics and public impact data

22 stories across 5 personas | Coverage: 19/22 (86%)

Overview

Platform

Platform-wide features that serve the public face of Restarters -- the landing page, global impact statistics, data exports, embeddable widgets, and integration points used by external sites.

What Guests can do

Guests can view the landing page with platform impact statistics, switch the application language, dismiss alert banners, view recent community discussion topics from Discourse, and access embeddable CO2 impact visualisations for events and groups. They can also view aggregate statistics, search and filter device records, and view per-event and per-group repair statistics via the API.

What Restarters can do

Restarters can export device data from events, groups, or the entire platform as CSV files. They can also export event summaries for groups and retrieve their profile information via the API.

What NetworkCoordinators can do

NetworkCoordinators can export event summaries for their networks as CSV files.

What Admins can do

Admins can retrieve a list of all users via the API.

What ThirdParties can do

External organisations can retrieve aggregate platform impact data, event and group repair statistics, search device records, and embed CO2 impact widgets on their own platforms.

PersonaStoryMethodTests
GuestAs a Guest, I can dismiss an information alert bannerInformationAlertCookieController::__invoke❌ Uncovered

Data exports

PersonaStoryMethodTests
GuestAs a Guest, I can search and filter device records via the APIApiController::getDevices✅ Covered
NetworkCoordinatorAs a NetworkCoordinator, I can export my network's event summary as CSVExportController::networkEvents✅ Covered
RestarterAs a Restarter, I can export all device records as CSVExportController::devices✅ Covered
RestarterAs a Restarter, I can export device data from an event as CSVExportController::devicesEvent✅ Covered
RestarterAs a Restarter, I can export device data from a group as CSVExportController::devicesGroup✅ Covered
RestarterAs a Restarter, I can export a group's event summary as CSVExportController::groupEvents✅ Covered
ThirdPartyAs a ThirdParty, I can search and retrieve device records via the APIApiController::getDevices✅ Covered

Discussion integration

PersonaStoryMethodTests
GuestAs a Guest, I can view recent community discussion topicsDiscourseController::discussionTopics✅ Covered

Embeddable widgets

PersonaStoryMethodTests
GuestAs a Guest, I can view embeddable CO2 impact visualisations for events and groupsOutboundController::info✅ Covered
ThirdPartyAs a ThirdParty, I can embed CO2 impact widgets for events and groups on my platformOutboundController::info✅ Covered

Landing page

PersonaStoryMethodTests
GuestAs a Guest, I can view the platform's global repair impact statisticsAdminController::stats✅ Covered
GuestAs a Guest, I can view the landing page with platform impact statisticsHomeController::index✅ Covered

Language preferences

PersonaStoryMethodTests
GuestAs a Guest, I can switch the application languageLocaleController::setLang✅ Covered

Platform impact stats

PersonaStoryMethodTests
AdminAs an Admin, I can retrieve a list of all users via the APIApiController::getUserList✅ Covered
GuestAs a Guest, I can view repair statistics for a specific groupApiController::groupStats✅ Covered
GuestAs a Guest, I can view aggregate platform impact statisticsApiController::homepage_data❌ Uncovered
GuestAs a Guest, I can view repair statistics for a specific eventApiController::partyStats✅ Covered
RestarterAs a Restarter, I can retrieve my own profile information via the APIApiController::getUserInfo✅ Covered
ThirdPartyAs a ThirdParty, I can retrieve group repair statistics for embeddingApiController::groupStats✅ Covered
ThirdPartyAs a ThirdParty, I can retrieve aggregate platform impact data for embeddingApiController::homepage_data❌ Uncovered
ThirdPartyAs a ThirdParty, I can retrieve event repair statistics for embeddingApiController::partyStats✅ Covered

Source Files