# How Changes are Updated in the RUFUS Events App

## How RUFUS Events App Updates Work

RUFUS Events App is built using Next.js, a modern web technology that allows event pages to load quickly and reliably, even when thousands of participants and spectators are checking event information, live results, race progress, and athlete pages at the same time.

To make this possible, the app uses a combination of fast pre-generated pages, background data revalidation, and internal UI refreshes.

This means visitors can follow the event with a much more live experience, without needing to manually refresh the page.

## Fast Page Loading

RUFUS Events App uses a technique called Incremental Static Regeneration, or ISR.

You do not need to know the technical details, but the key idea is simple:

* The app generates pages in advance so they load very quickly.
* The app periodically checks if new published data is available.
* When new data exists, the page data is refreshed in the background.
* Visitors receive the updated information shortly after it becomes available.

This allows RUFUS Events App to provide both high performance and frequently updated data during live events.

## Internal UI Refresh

RUFUS Events App also refreshes internally while visitors are viewing the event.

When new published data is available, the app can update the visible information without requiring a full page reload.

This improves the live feeling of the event because visitors can see updated rankings, race progress, athlete information, and leaderboard data appear while they remain on the same screen.

## Why Updates May Take Up to 1 Minute

When organizers publish new participants, race results, race progress, or other event data, RUFUS Events App needs a short window to refresh and distribute the updated information.

The app checks for new data frequently. In practice, updates usually appear within a few seconds, but we communicate “up to 1 minute” to account for factors such as:

* Caching across different servers
* CDN distribution
* Network conditions
* The time required for pages and data to regenerate
* User browser caching
* Device or connection performance

Because of this, the maximum reasonable delay before a visitor sees updated information is around 1 minute, even though the system checks for updates more frequently.

## What This Means for Visitors

Visitors do not need to manually refresh the page to follow the event.

While they are viewing RUFUS Events App, the interface can update automatically when new data is available.

This applies to public event information such as:

* Participant lists
* Live leaderboards
* Race results
* Race progress
* Predictive tracking information
* Athlete result pages
* Team cups, when available

This creates a smoother and more live-like race experience for spectators, athletes, teams, and clubs.

## What This Means for Organizers

Organizers only need to publish the required data from RUFUS Race Manager.

RUFUS Events App handles the public update process automatically, including background refreshes and internal UI updates for visitors.

This approach provides:

* Fast page loading
* Reliable access during busy events
* Automatic public updates
* Better scalability
* A stronger live race experience
* Reduced need for visitors to reload pages manually

RUFUS Events App is designed to combine the performance of a high-traffic public website with the live feeling expected from modern race timing and results publication.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.runonrufus.com/rufus-event-app/getting-started/publications-update.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
