# New template - Templating

**URL:** <https://community.fibery.io/t/new-template-templating/3005>\
**Category:** News & Announcements\
**Created:** [June 27, 2022, 9:44am UTC](https://community.fibery.io/t/new-template-templating/3005 "2022-06-27T09:44:31Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![Chr1sG](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/chr1sg/32/3941_2.png) [@Chr1sG](https://community.fibery.io/u/Chr1sG)\
**Post date:** [June 27, 2022, 9:44am UTC](https://community.fibery.io/t/new-template-templating/3005/1 "2022-06-27T09:44:31Z")

</div>

We have a new template to share 😄

This one is designed to show you how to auto-generate entities based on standard ‘template’ entities.  
It demonstrates an example of how to ensure that a Project always starts with a default set of Tasks,  
but the principles can be generalised to many other scenarios.  
Let us know what you think of it, and feel free to share any use cases you have, so that other people can learn from your great ideas 💡

> **[Templating](https://apps.fibery.io/@public/Templating?show-only-current-space-in-menu)**
>
> Create a custom workspace for all roles in your company. Connected databases, customizable views, powerful reports, automations, integrations, and more. You name it, we have it.

---

<div class="post-metadata">

**Author:** ![Matt\_Blais](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/matt_blais/32/1464_2.png) [@Matt\_Blais](https://community.fibery.io/u/Matt_Blais)\
**Post date:** [June 27, 2022, 2:12pm UTC](https://community.fibery.io/t/new-template-templating/3005/2 "2022-06-27T14:12:29Z")

</div>

Thanks for this – it’s a very useful demo 👍.

---

<div class="post-metadata">

**Author:** ![Ollie\_YGA](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/ollie_yga/32/5128_2.png) [@Ollie\_YGA](https://community.fibery.io/u/Ollie_YGA)\
**Post date:** [July 4, 2022, 12:42pm UTC](https://community.fibery.io/t/new-template-templating/3005/3 "2022-07-04T12:42:55Z")

</div>

This is really great. Using the Smart Folders achieves something I was trying to achieve using list view and self referencing tasks in a much clearer and more elegant way

---

<div class="post-metadata">

**Author:** ![Ollie\_YGA](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/ollie_yga/32/5128_2.png) [@Ollie\_YGA](https://community.fibery.io/u/Ollie_YGA)\
**Post date:** [July 22, 2022, 1:10pm UTC](https://community.fibery.io/t/new-template-templating/3005/4 "2022-07-22T13:10:42Z")

</div>

hey @Chr1sG I’m about to set up a template for one of our own repeating projects, but it will only ever have one format which is 1 Course \> 4 Units per course \> 5 Lessons per unit. Also 10 Tasks Per course:

Do you think it would be overkill to try to adapt this template for this (since this template deals with multiple scenarios while I only need one)?

---

<div class="post-metadata">

**Author:** ![Chr1sG](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/chr1sg/32/3941_2.png) [@Chr1sG](https://community.fibery.io/u/Chr1sG)\
**Post date:** [July 22, 2022, 2:18pm UTC](https://community.fibery.io/t/new-template-templating/3005/5 "2022-07-22T14:18:32Z")

</div>

If you’re absolutely certain that things won’t change in the future, you could just use basic automations to set up your projects, i.e. an automation that runs when a course is created that has 4 actions, each one creating a new unit, and then an automation that runs when a unit is created that has 5 actions, each one creating a new lesson, plus an automation for creating the tasks for each course…  
This will probably take you less time than setting up a more generic solution, so the only reason to use the generic version is if there’s a chance that things might change in the future.

---

<div class="post-metadata">

**Author:** ![Ollie\_YGA](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/ollie_yga/32/5128_2.png) [@Ollie\_YGA](https://community.fibery.io/u/Ollie_YGA)\
**Post date:** [July 23, 2022, 8:45am UTC](https://community.fibery.io/t/new-template-templating/3005/6 "2022-07-23T08:45:04Z")

</div>

Thanks Chris - that’s what I’ve gone for. The structure is certainly not likely to change any time soon!

---

<div class="post-metadata">

**Author:** ![cannibalflea](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/cannibalflea/32/318_2.png) [@cannibalflea](https://community.fibery.io/u/cannibalflea)\
**Post date:** [September 26, 2023, 12:28am UTC](https://community.fibery.io/t/new-template-templating/3005/7 "2023-09-26T00:28:59Z")

</div>

@Chr1sG sorry to revive this topic

As I understand it, the current template basically adds new tasks when new Projects are created and linked to Categories through a lookup field in the task template. This works great if you want to automatically add the tasks to all newly created projects.

However, I am wondering how I might be able to add the tasks from the template to existing Projects (or selectively apply/add tasks) through a button (i.e. something like “Add Common Tasks”).

Since fibery doesn’t have a “For Each” action in the UI, I am wondering if a script the only way to accomplish this?

---

<div class="post-metadata">

**Author:** ![Chr1sG](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/chr1sg/32/3941_2.png) [@Chr1sG](https://community.fibery.io/u/Chr1sG)\
**Post date:** [September 26, 2023, 9:13am UTC](https://community.fibery.io/t/new-template-templating/3005/8 "2023-09-26T09:13:43Z")

</div>

> [@cannibalflea](#):
>
> the current template basically adds new tasks when new Projects are created and linked to Categories through a lookup field in the task template.

Actually, the automations in the template will run any time a Project is linked to a Category. So if a Project is created in a given Category, then the automation will run, but also, if a Project is created without a defined Category, when you do choose the Category for the Project, the automation will run.  
Also, if you change the Category, the automation will run, so if there are Task templates in the new Category that weren’t in the old one, you will get new Tasks for these items.

---

<div class="post-metadata">

**Author:** ![cannibalflea](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/cannibalflea/32/318_2.png) [@cannibalflea](https://community.fibery.io/u/cannibalflea)\
**Post date:** [September 26, 2023, 2:54pm UTC](https://community.fibery.io/t/new-template-templating/3005/9 "2023-09-26T14:54:10Z")

</div>

That makes sense. The only challenge is that I already have all the categories assigned. It wouldn’t be too hard to do it again but I am also thinking it would be helpful (in my particular case) to add the tasks selectively so that is why I was hoping to use a button action.

---

<div class="post-metadata">

**Author:** ![Chr1sG](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/chr1sg/32/3941_2.png) [@Chr1sG](https://community.fibery.io/u/Chr1sG)\
**Post date:** [September 26, 2023, 3:35pm UTC](https://community.fibery.io/t/new-template-templating/3005/10 "2023-09-26T15:35:31Z")

</div>

> [@cannibalflea](#):
>
> The only challenge is that I already have all the categories assigned. It wouldn’t be too hard to do it again but I am also thinking it would be helpful (in my particular case) to add the tasks selectively so that is why I was hoping to use a button action.

I’m not sure I get the case here. A Project is already linked to a Category, but you want to unlink/re-link so that the automation will run again? Does the Project not already have the appropriate Tasks required for that Category?

---

<div class="post-metadata">

**Author:** ![cannibalflea](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/cannibalflea/32/318_2.png) [@cannibalflea](https://community.fibery.io/u/cannibalflea)\
**Post date:** [September 26, 2023, 4:32pm UTC](https://community.fibery.io/t/new-template-templating/3005/11 "2023-09-26T16:32:48Z")

</div>

Apologies for not providing the context. Our use case is that we recently had the idea of adding milestones (as entities) to projects. The milestones are based on the Project Type which is already assigned to the existing Projects. That is why we were thinking a button action is more appropriate. We are also wanting to try this out on a few projects before making it standard so thought it might be more helpful to add it selectively for now before making it automatic for all new projects.

---

<div class="post-metadata">

**Author:** ![Chr1sG](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/chr1sg/32/3941_2.png) [@Chr1sG](https://community.fibery.io/u/Chr1sG)\
**Post date:** [September 26, 2023, 5:22pm UTC](https://community.fibery.io/t/new-template-templating/3005/12 "2023-09-26T17:22:29Z")

</div>

Here’s what you could do:

Create a many:many relation between Projects and Task Templates  
 ![image](https://us1.discourse-cdn.com/flex020/uploads/fibery/original/2X/6/67df80c345224eea9a439385cc230ffd0097695c.png)

Duplicate the existing automation in the Task Template db, but with trigger on a new linked Project (for this field you just created):

 ![image](https://us1.discourse-cdn.com/flex020/uploads/fibery/original/2X/b/be395bb705ad004bf9c08e505fdab9b017ea2d0a.png)

Create a button automation in the Project db that links it to the Task Templates for its Category:

 ![image](https://us1.discourse-cdn.com/flex020/uploads/fibery/original/2X/2/24c72194bdeedf559ac67715057f53e35c3964b4.png)

---

<div class="post-metadata">

**Author:** ![cannibalflea](https://sea2.discourse-cdn.com/flex020/user_avatar/community.fibery.io/cannibalflea/32/318_2.png) [@cannibalflea](https://community.fibery.io/u/cannibalflea)\
**Post date:** [September 27, 2023, 12:07am UTC](https://community.fibery.io/t/new-template-templating/3005/13 "2023-09-27T00:07:41Z")

</div>

Thanks again for this solution. This is a very interesting approach. I ended up going the script route because I ended up with a few more requirements. Using graphQL api made it less painful than before 🙂

---

<div class="post-metadata">

**Author:** ![Morgan\_A](https://avatars.discourse-cdn.com/v4/letter/m/a9adbd/32.png) [@Morgan\_A](https://community.fibery.io/u/Morgan_A)\
**Post date:** [September 19, 2025, 4:04am UTC](https://community.fibery.io/t/new-template-templating/3005/14 "2025-09-19T04:04:41Z")

</div>

@Chr1sG sorry to resurrect this topic once again!

The template has been working great for me (many thanks) but I can’t work out one aspect. The [readme](https://apps.fibery.io/@public/Templating/Read.me-1736/anchor=If-your-relations-are-Many-to-Many--94d32fe6-904d-4f04-8d87-8a9a45a4dd71) details a way to copy the dependency structure from the Task Template to the newly created Task, but the formulas provided don’t appear to work any longer. Is it still possible to automate this? Specifically, I’m trying to use the many-to-many formulas, with “blocked by” and “blocking” updated to “dependencies” and “dependents”. Thanks again!
