> For the complete documentation index, see [llms.txt](https://sunbird.gitbook.io/sunbird-spark/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sunbird.gitbook.io/sunbird-spark/learn/components/consumption-apps.md).

# Consumption apps

Spark provides two learner applications that work across devices and connectivity conditions, both sharing a common design system. They can be white-labelled and themed to match your organisation's brand.

{% tabs %}
{% tab title="Web portal" %}
The Spark web portal is built on React JS.

**It provides:**

* A personalised home dashboard for logged-in learners, showing enrolled courses, progress, and recommendations
* Full anonymous browsing, so visitors can discover and consume public content without creating an account
* A role-aware navigation sidebar that adapts to the user's assigned roles, such as learner, content creator, reviewer, and administrator
* A content creation workspace for creators and reviewers
* Admin reports and user management for administrators
* Multilingual support via a persistent language switcher available on every page
  {% endtab %}

{% tab title="Mobile app" %}
The Spark mobile app is built on Ionic + React + Capacitor. It is available for Android.

**Key capabilities:**

* Full offline learning. Learners can download courses and content, then consume them without an internet connection. Progress and telemetry sync when connectivity returns.
* Push notifications for course reminders, batch updates, and programme announcements
* The same content players as the web portal, ensuring a consistent experience across devices
  {% endtab %}
  {% endtabs %}

### Common capabilities

Both apps share the following:

| Capability      | Detail                                                                   |
| --------------- | ------------------------------------------------------------------------ |
| Content players | All V2 web component players (PDF, Video, H5P, ECML, EPUB, Audio)        |
| Telemetry       | All user interactions emit structured telemetry events automatically     |
| White-labelling | Logo, colours, and layout configurable at the channel (tenant) level     |
| Multi-tenancy   | Each app supports multiple organisations via channel-based configuration |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://sunbird.gitbook.io/sunbird-spark/learn/components/consumption-apps.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
