> For the complete documentation index, see [llms.txt](https://docs.struct.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.struct.com/developer/app-integration/example-projects.md).

# Example projects

To help you get familiar with both new and existing functionality in Struct PIM, we provide example projects that demonstrates how different features can be used in practice within Struct PIM.

## Weather app widget

A simple dashboard widget built for the Struct PIM interface using the @structdk/extension-sdk. It demonstrates how to build a custom extension that connects to the PIM and displays weather data, using Struct’s UI and icon libraries for a consistent look and feel.

The Weather App Extension is a dashboard widget designed to fit seamlessly within the Struct PIM interface through the use of the [@structdk/extension-sdk](https://www.npmjs.com/package/@structdk/extension-sdk) package. It also uses [@structdk/ui](https://www.npmjs.com/package/@structdk/ui) and [@structdk/struct-icon](https://www.npmjs.com/package/@structdk/struct-icon) to follow the same UI and icon design patterns as the PIM, ensuring visual consistency.

The app provides a classic weather overview based on the user’s current location, with simple functionality like showing current conditions.

<figure><img src="/files/ssYDykOs9mIpppRVsdMk" alt=""><figcaption><p>Weather app widget in dashboard</p></figcaption></figure>

The project is divided into two parts: a frontend that handles the user interface and a backend that manages API connections for retrieving weather data. It provides a practical example for creating similar PIM-integrated extensions.

{% embed url="<https://github.com/StructPim/Struct.ExampleProjects/tree/master/weather-app>" %}
See project on GitHub
{% endembed %}


---

# 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 dynamically by asking a question.

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

```
GET https://docs.struct.com/developer/app-integration/example-projects.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
