A **[[Project]]** is a transient page that serves as the identity and hub for a collection of other notes, knowledge, and activities serving a singular, unified, and finite purpose. ^about
This is a [[Class]] within the [[System]] using the [[State#Standard Action Workflow]].
If the use case has limited complexity with short time-horizon, consider using just a [[Transient]].
>[!quote|no-icon] Dictionary Block
```yaml
---
description:
classes:
- "[[Project]]"
states:
- "[[To Do]]"
publish: false # projects are by default private and unpublished
parents: # the subject(s) of the project, e.g. a [[Business]] or [[Group]]
members: # the key [[Person]] stakeholders and resources of the project
# the following meta is only if Obsidian is used for basic project tracking
start_date: # when the project is commenced
end_date: # when the project got completed
progress: # estimated progress through project (0 - 1)
---
```
```yaml
---
description:
classes:
- "[[Project]]"
states:
- "[[To Do]]"
publish: false
parents:
members:
start_date:
end_date:
progress:
---
```
>[!info|no-icon] Active
><span class="dataview">`$=dv.execute(await dv.page("Project Doing (script)").script_local)`</span>![[Project Doing (tpdv output)|app-hidden]]
>[!quote|no-icon]- To Do
><span class="dataview">`$=dv.execute(await dv.page("Project To Do (script)").script_local)`</span>![[Project To Do (tpdv output)|app-hidden]]
>[!success|no-icon]- Done / Cancelled / Subsumed
><span class="dataview">`$=dv.execute(await dv.page("Project Done (script)").script_local)`</span>![[Project Done (tpdv output)|app-hidden]]
>[!danger|no-icon]- Invalid Action State
><span class="dataview">`$=dv.execute(await dv.page("Project Invalid (script)").script_local)`</span>![[Project Invalid (tpdv output)|app-hidden]]