# Hero Cards and Journeys

# Hero Cards and Journeys

Hero Cards and Journeys are the core implementation of [Scope-Driven Production](https://manual.codecks.io/scope-driven-production/) in Codecks.

> **Quick Summary:**
>
> - **Hero Cards** = Assets (like Epics). Bundle related sub-cards together.
> - **Journeys** = Pipeline templates. Define once, apply to all assets of that type.
> - **Result** = Dual perspectives: see asset completion status OR discipline-specific work queues.
>
> **Before using:** Enable Hero Cards in your organization settings.

## Hero Cards

![Hero Card Example](https://manual.codecks.io/_astro/intro.CdktQUfG_Z1uyWxc.webp)

Hero Cards bundle related cards together into a single unit that represents a complete asset or feature. Think of them as **Epics** if you use agile terminology, but with more power. Combined with Journeys, they create repeatable asset pipelines that automatically generate all the tasks needed to complete an asset.

> In teams a single asset or feature might go through the hands of many specialized team members.
> While everybody is focusing on their sub task, it can be hard to maintain an overview of the
> overall goal. Hero Cards are here to the rescue. They allow to bundle up big goal Cards and their
> related Sub Cards. Each of the contained Cards maintains full support for properties and workflow
> states.

### Creating Hero Cards

There are several ways to create Hero Cards depending on your workflow. You can drag and drop a card onto an opened card to make it a sub-card, use the hero sidebar to attach existing cards or create new ones, select multiple cards and use the [bulk action bar](https://manual.codecks.io/bulk-actions/) to group them, or [sort](https://manual.codecks.io/sorting/) your view by Hero Card and drag cards into the appropriate lanes.

When you use the parent-card picker (via `Shift+S` while hovering a card, the bulk action bar, or the sub-cards panel of an opened card), the search results are grouped into **Hero Cards** (cards that are already Hero Cards — pick one to attach to an existing pipeline) and **Non-Hero Cards** (regular cards that will be promoted to Hero Cards if you pick them). The same overlay also offers a **Create New** tab if you'd rather spawn a fresh Hero Card on the spot.

Keep in mind two important rules: each sub-card can only be part of one Hero Card, and Hero Cards cannot be nested (no Hero Cards inside Hero Cards).

### Working with Hero Cards

Hero Cards are recognizable by their golden color. Their own workflow states are disabled, and their effort is calculated by adding up the efforts of all contained sub-cards. They can have a priority or be assigned to a [Run](https://manual.codecks.io/runs/) or [Milestone](https://manual.codecks.io/milestones/). To get a quick overview of the contained sub-cards, hover over the progress bar which fills up as more cards are set to done, with different colors showing cards that are in progress, in review, or blocked. [Beast Mode](https://manual.codecks.io/runs/#beast-mode) does not track Hero Cards themselves — only the sub-cards inside them can become beasts.

![Open Hero Card with Sub Cards sidebar](https://manual.codecks.io/_astro/sidepanel.BMA7emNA_O2mhH.webp)

You can see the full list of contained sub-cards and jump between them by opening the hero sidebar (click on the header bar of Hero Cards, click on the hero icon next to opened cards, or use the `s` shortcut). The sub-list shows all contained cards including their title, owner, priority, effort, run, and milestone. You can remove any sub-card by clicking the small `X` on the entry or use drag and drop to change their order.

For Hero Cards with many sub-cards, there's a search field to filter the list instantly, along with "Expand All" and "Collapse All" buttons to manage grouped views. Use the filter and order buttons to handle larger lists more easily, or `ctrl/cmd + click` on a group header to open that group while closing all others. When you create a new sub-card from the sidebar, it opens and highlights automatically so you can start editing right away.

For more interaction options, click the magnifying glass on top of the list to view all sub-cards in their regular card size. From this view you can use the bulk action bar to perform operations on multiple sub-cards at once, like assigning an owner to several cards in one step. Remember that sub-cards are fully functioning Codecks cards with access to all workflow and conversation features, which allows you to separate the sub-tasks of a bigger feature into different runs and assign them to different owners.

### Filtering Sub Cards

Whenever you're viewing a deck, run, or milestone that contains Hero Cards and sub-cards, you'll find an additional hero filter button on the header bar. This filter lets you show or hide sub-cards that are contained in Hero Cards currently part of the same view, helping you focus on either the high-level assets or the detailed tasks depending on what you need to see.

> **Asset-Driven Organization**
>
> Codecks works differently than most PM tools. Instead of organizing purely by work type (art backlog, code backlog), we recommend a hybrid: task decks for work organization, plus GDD decks with journeys for asset templates.
>
> This gives you dual perspectives. As a producer, you can immediately see the state of the Broadsword weapon (one hero card showing concept, model, rig, animation, implementation status). As a coder, you can find your next task in the Code deck no matter if it's for a sword, enemy, or menu screen.
>
> Journeys let you template the standard tasks for each asset type, so creating a new enemy automatically generates the full pipeline of cards.

## Journeys

Journeys are an awesome way for working with Hero Cards. They allow you to template full sequences of Sub Cards and to activate them with one mouse click.

### Preparing Journeys

![Journey Panel](https://manual.codecks.io/_astro/journey.HmpfmqM4_1rjeQe.webp)

Journeys are always associated with Decks. To prepare a Journey, open a Deck and click on the Journey button on the Deck header bar. This opens the Journey setup page where you manage the **Journey Steps**: whenever somebody clicks on the Journey icon on a Card within this Deck, the Card becomes a Hero Card containing a list of Sub Cards that mirrors the step Cards that have been set up for this Deck.

> Default content and properties for new Cards in a Deck are configured via the Deck's [automation
> section](https://manual.codecks.io/decks/#automation) as a **Template Card**, independent of Journeys.

Within a Journey Step's content you can use the placeholder `%PARENT_TITLE%`. When the Journey is applied, every occurrence is replaced with the title of the Hero Card, so a step like `Design art for %PARENT_TITLE%` becomes `Design art for Ghost Companion` on the resulting Sub Card.

All these features combined work towards allowing for a unique asset pipeline system.

> Let's look at an example: in your game Ghost Companion the player can befriend various ghosts inside a mansion. Each ghost has their own personality and comes from a different epoch. To give every new ghost Card a head start you can configure the Deck's [Template Card](https://manual.codecks.io/decks/#automation) so that each new Card might:
>
> - Contain some sample text as a helping guideline for adding new ghost ideas
> - Be assigned to Bayani the creative director of the game
>
> Whenever your team takes a ghost character from conception to implementation it always goes through the following steps:
>
> - Mohamed adds it to level and designs an encounter
> - Samanta creates a 3D Mesh and animates it
> - Barb adds some dialogue lines
> - Phil adds some custom sound effects and special effects
>
> If we take these tasks and model them as Steps in the Journey, we can build a strong workflow. Managing the production pipeline for a new ghost character is now as simple as creating a Card in the ghost character Deck and clicking the Journey button to create a full hero's journey that covers everything from start to finish.
>
> Codecks creates all the Cards for you, which saves you time but also enables you to create a repeatable process which you can optimize as you learn more. There is another advantage to this approach: it nudges you towards a hierarchy built around thematic ideas. That makes it really easy to at any point look at your asset Decks and get a visual overview of the state of all planned assets for your game.
>
> This works especially well if you do not put the Sub Cards the same Deck as the Hero Card but set them up to go into department/skill specific Decks. Here they can be easily found by other team members. That gives you the best of both worlds: a nice overview of your assets and also clear task Cards which are easy to assign to team members.

![Journey Button](https://manual.codecks.io/_astro/start-journey.D237wY___1VDNac.webp)

Once you're ready to start a Journey, open the card you want to attach the pipeline to and click the "Journey" button towards the bottom to open the "Start Journey" view. This allows you to view and alter the cards that will be created before committing. Clicking the Journey button a second time will show you which cards have been applied, allowing you to add any missing steps.

![Sart Journey View](https://manual.codecks.io/_astro/start-journey-modal.Dl2vPjiT_ZDbqO9.webp)

After creating a Hero Card from a Journey, you have complete flexibility to edit, add, or remove sub-cards as needed for that particular asset. Changes to Journey steps don't affect Hero Cards that were already created using that Journey, so you can refine your templates without breaking existing work.

### The Template Library

You don't have to build every Journey from scratch. Right from the Journey view you can open the **browse panel** to discover Journey templates shared by the community — a library of proven pipelines covering typical game-dev workflows. Find one that fits, import it, and adapt it to your project.

#### Deck Mapping

Importing a template means making it fit your own project. A template's "Code Tasks" Deck probably needs to map to your own "Programming" Deck, for example. When you apply a template, a **mapping step** lets you control exactly which of your Decks each part of the template lands in, so imported Journeys slot cleanly into your existing project structure.

#### Sharing Your Own Journeys

Built a workflow you're proud of? You can save any Journey you've set up as a template. Templates you submit to the community library go through a quick review by the Codecks team before they show up publicly, so the library stays useful for everyone.

### Cloning Journeys

If you've set up a Journey in one Deck and want to reuse it elsewhere, you can clone it to another Deck using the clone button in the Journey setup. This is faster than recreating the same steps manually. You can also clone Journeys via bulk actions when selecting multiple Cards.

### Zones for Journey Steps

For more complex setups Codecks offers to organize your Steps into Zones. They work just like Card Zones when using the [manual order](https://manual.codecks.io/sorting/#manual-order-and-zones). This could be used to separate e.g. mandatory from optional tasks or to allow model separate Journeys within the same Deck. When starting a Journey, you can then select or de-select the relevant Steps to just create the Sub Cards you need.

> **Why Not Kanban Columns?**
>
> Traditional Kanban implies sequential workflow: Design → Code → Art → QA. But in game dev, work happens in parallel. The concept artist and the gameplay coder can work simultaneously on the same feature.
>
> When you split into separate Kanban boards per discipline (Art board, Code board), you lose context and create silos. Each department becomes isolated.
>
> In Codecks, each card is self-contained with its own workflow state. Whether it's a sword asset or a menu feature, the card tracks its own progress from unassigned to done. This works better for the parallel, multi-discipline nature of game development.

Check the [Dependencies Chapter](https://manual.codecks.io/dependencies/#journey-dependencies) to learn how to use dependencies within Journeys.

## Project Structure

See this video for our best practice tips for how to build your projects around Journeys.

[Watch on YouTube](https://www.youtube.com/watch?v=9gKdahrV-CU)
