# flattenConnection
The `flattenConnection` utility transforms a connection object from the Storefront API (for example, [Product-related connections](https://shopify.dev/api/storefront/reference/products/product)) into a flat array of nodes. The utility works with either `nodes` or `edges.node`.
If `connection` is null or undefined, will return an empty array instead in production. In development, an error will be thrown.
```jsx
import {flattenConnection} from '@shopify/hydrogen';
export function ProductList({productConnection}) {
const products = flattenConnection(productConnection);
return (
{products.map((product) => (
- {product.title}
))}
);
}
```
```tsx
import {flattenConnection} from '@shopify/hydrogen';
import type {ProductConnection} from '@shopify/hydrogen/storefront-api-types';
export function ProductList({
productConnection,
}: {
productConnection: ProductConnection;
}) {
const products = flattenConnection(productConnection);
return (
{products.map((product) => (
- {product.title}
))}
);
}
```
## Parameters
### ConnectionGenericForDoc
### connection
value: `ConnectionEdges | ConnectionNodes`
- ConnectionEdges: {
edges: Array<{node: unknown}>;
}
- ConnectionNodes: {
nodes: Array;
}
### ConnectionEdges
### edges
value: `{ node: unknown; }[]`
### ConnectionNodes
### nodes
value: `unknown[]`
## Returns