# `GSLayer.components`

*Instance Property*

A proxy for iterating and accessing component shapes.

## Declaration

```swift
var components: GSProxyShapes { get }
```

```objc
@property (nonatomic, readonly) GSProxyShapes * components;
```

[See also `components` in the Python API](https://docu.glyphsapp.com/#GSLayer.components)

```python
pyobjc_instanceMethods.components() -> GSProxyShapes
```

## Discussion

The proxy filters the layer’s shapes to components.

## See Also

### Shape Proxies

- [`GSLayer.paths`](/Core/GlyphsCore/GSLayer/paths) — A proxy for iterating and accessing path shapes.
- [`GSLayer indexOfPath:`](/Core/GlyphsCore/GSLayer/indexOfPath:) — Returns the linear shape index of a path.
- [`GSLayer.allComponents`](/Core/GlyphsCore/GSLayer/allComponents) — The component shapes in the layer.
- [`GSLayer.countOfPaths`](/Core/GlyphsCore/GSLayer/countOfPaths) — The number of path shapes in the layer.
- [`GSLayer.countOfComponents`](/Core/GlyphsCore/GSLayer/countOfComponents) — The number of component shapes in the layer.
- [`GSLayer.countOfImages`](/Core/GlyphsCore/GSLayer/countOfImages) — The number of image shapes in the layer.

