---
title: PHProject
framework: photos
role: symbol
role_heading: Class
path: photos/phproject
---

# PHProject

A representation of a Photos app project extension.

## Declaration

```swift
class PHProject
```

## Overview

Overview This class represents the project when extended from macOS Photos. Projects can have the following types: Book Calendar Card Prints Slideshow Wall decor Users create projects by selecting one or more assets, right-clicking the selection, and grouping the assets, much like an album collection. Your app treats the project as a separate entity, represented as a PHProject.

## Topics

### Project Extension Properties

- [hasProjectPreview](photos/phproject/hasprojectpreview.md)
- [projectExtensionData](photos/phproject/projectextensiondata.md)

## Relationships

### Inherits From

- [PHAssetCollection](photos/phassetcollection.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Classes

- [PHProjectChangeRequest](photos/phprojectchangerequest.md)
