# Journey v0.10.55 - Table of Contents

## Pages

- [Overview](readme.md)

- Guides
  - [Basic Concepts](basic_concepts.md)
  - [Modules and Functions](modules_and_functions.md)
  - [Updating Graphs](migration_strategy.md)

- Livebooks
  - [&quot;compute&quot; nodes](compute.md)
  - [&quot;mutate&quot; nodes](mutate.md)
  - [&quot;historian&quot; nodes](historian.md)
  - [&quot;tick_once&quot; nodes](tick_once.md)
  - [&quot;tick_recurring&quot; nodes](tick_recurring.md)
  - [&quot;archive&quot; nodes](archive.md)
  - [&quot;compute&quot; retries](compute_retries.md)

- About
  - [Journey License](license.md)
  - [Changelog](changelog.md)

## Modules

- [Journey](Journey.md): 
This module is the entry point for the Journey library. It provides functions for creating and managing computation graphs, starting and managing executions, and retrieving values from executions.
- [Journey.Examples.CreditCardApplication](Journey.Examples.CreditCardApplication.md): This module demonstrates building a simple credit card application workflow using the Journey library.
- [Journey.Examples.CreditCardApplication.Compute](Journey.Examples.CreditCardApplication.Compute.md): This module contains the business logic for the Credit Card Approval application, things like fetching the customer's credit score, making and communication the credit decision, etc.

- [Journey.Examples.UselessMachine](Journey.Examples.UselessMachine.md): This module ([lib/journey/examples/useless_machine.ex](https://github.com/shipworthy/journey/blob/main/lib/journey/examples/useless_machine.ex)) contains an example of building a Useless Machine using Journey.
- [Journey.Insights.FlowAnalytics](Journey.Insights.FlowAnalytics.md): Provides system-wide aggregate data about the state of the executions of a particular graph.
This can be thought of as "analytics" for a particular graph.

- [Journey.Insights.Status](Journey.Insights.Status.md): Provides system health and monitoring insights for Journey executions.

- [Journey.Node](Journey.Node.md): This module contains functions for creating nodes in a graph.
Nodes in a graph can be of several types:
* `input/1` – a node that takes input from the user.
* `compute/4` – a node that computes a value based on its upstream nodes.
* `mutate/4` – a node that mutates the value of another node.
* `historian/3` – a node that tracks the history of changes to another node.
* `tick_once/3` – a node that, once unblocked, in its turn, unblocks others, on a schedule.
* `tick_recurring/3` – a node that, once unblocked, in its turn, unblocks others, on a schedule, time after time.
* `loop/4` – a node that iterates a step function durably, threading state across iterations until termination or an iteration cap.

- [Journey.Node.Conditions](Journey.Node.Conditions.md): This module contains helper functions for use when defining upstream dependencies for `compute` modules.

- [Journey.Node.UpstreamDependencies](Journey.Node.UpstreamDependencies.md)
- [Journey.Tools](Journey.Tools.md): This module contains utility functions for the Journey library.

