# Structure

- [Directory Structure](https://docs.scandipwa.com/structure/folder-structure.md): A high-level overview of how files are organized in Scandi
- [Building Blocks](https://docs.scandipwa.com/structure/building-blocks-summary.md): Learn about the structure of the ScandiPWA codebase
- [Components](https://docs.scandipwa.com/structure/building-blocks-summary/components.md): ScandiPWA React components are reusable pieces of UI logic
- [Styling Components](https://docs.scandipwa.com/structure/building-blocks-summary/components/styling-components.md): ScandiPWA uses the BEM methodology and SCSS
- [Routes](https://docs.scandipwa.com/structure/building-blocks-summary/routes.md): Routes are pages in your single-page application
- [Redux Stores](https://docs.scandipwa.com/structure/building-blocks-summary/redux-stores.md): Redux stores are used to maintain global state
- [GraphQL Queries](https://docs.scandipwa.com/structure/building-blocks-summary/constructing-graphql-queries.md): GraphQL queries are generated dynamically using javascript
- [Global Styles](https://docs.scandipwa.com/structure/building-blocks-summary/global-styles.md): While each component may have its own styles, some styles are globally defined
- [The Util Directory](https://docs.scandipwa.com/structure/building-blocks-summary/the-util-directory.md): The util directory in ScandiPWA contains various utility functions that don't belong in the other categories
- [Type Checking](https://docs.scandipwa.com/structure/building-blocks-summary/type-checking.md): ScandiPWA uses PropTypes to help verify that the expected props are passed, and catch bugs
- [Application assets](https://docs.scandipwa.com/structure/adding-assets.md): Add static assets to your app, such as fonts and favicons
- [Code Style](https://docs.scandipwa.com/structure/code-style.md): Following our coding style helps maintain a consistent and well-organized codebase
- [JavaScript Code Style](https://docs.scandipwa.com/structure/code-style/javascript-code-style.md): ScandiPWA follows a strict JavaScript style guide for maintainability and consistency
- [SCSS Code Style](https://docs.scandipwa.com/structure/code-style/scss-code-style.md): ScandiPWA follows a strict SCSS style guide for maintainability and consistency


---

# 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://docs.scandipwa.com/structure.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.
